Lines Matching refs:pCur
78 tclvar_cursor *pCur;
79 pCur = sqlite3MallocZero(sizeof(tclvar_cursor));
80 *ppCursor = &pCur->base;
88 tclvar_cursor *pCur = (tclvar_cursor *)cur;
89 if( pCur->pList1 ){
90 Tcl_DecrRefCount(pCur->pList1);
92 if( pCur->pList2 ){
93 Tcl_DecrRefCount(pCur->pList2);
95 sqlite3_free(pCur);
102 static int next2(Tcl_Interp *interp, tclvar_cursor *pCur, Tcl_Obj *pObj){
106 if( !pCur->pList2 ){
112 pCur->pList2 = Tcl_GetObjResult(interp);
113 Tcl_IncrRefCount(pCur->pList2);
114 assert( pCur->i2==0 );
117 pCur->i2++;
118 Tcl_ListObjLength(0, pCur->pList2, &n);
119 if( pCur->i2>=n ){
120 Tcl_DecrRefCount(pCur->pList2);
121 pCur->pList2 = 0;
122 pCur->i2 = 0;
136 tclvar_cursor *pCur = (tclvar_cursor *)cur;
139 Tcl_ListObjLength(0, pCur->pList1, &n);
140 while( !ok && pCur->i1<n ){
141 Tcl_ListObjIndex(0, pCur->pList1, pCur->i1, &pObj);
142 ok = next2(interp, pCur, pObj);
144 pCur->i1++;
156 tclvar_cursor *pCur = (tclvar_cursor *)pVtabCursor;
168 if( pCur->pList1 ){
169 Tcl_DecrRefCount(pCur->pList1);
171 if( pCur->pList2 ){
172 Tcl_DecrRefCount(pCur->pList2);
173 pCur->pList2 = 0;
175 pCur->i1 = 0;
176 pCur->i2 = 0;
177 pCur->pList1 = Tcl_GetObjResult(interp);
178 Tcl_IncrRefCount(pCur->pList1);
179 assert( pCur->i1==0 && pCur->i2==0 && pCur->pList2==0 );
190 tclvar_cursor *pCur = (tclvar_cursor*)cur;
193 Tcl_ListObjIndex(interp, pCur->pList1, pCur->i1, &p1);
194 Tcl_ListObjIndex(interp, pCur->pList2, pCur->i2, &p2);
223 tclvar_cursor *pCur = (tclvar_cursor*)cur;
224 return (pCur->pList2?0:1);