Lines Matching refs:BtCursor

15159 typedef struct BtCursor BtCursor;
15246 SQLITE_PRIVATE int sqlite3BtreeClearTableOfCursor(BtCursor*);
15358 BtCursor *pCursor /* Space to write cursor structure */
15360 SQLITE_PRIVATE BtCursor *sqlite3BtreeFakeValidCursor(void);
15362 SQLITE_PRIVATE void sqlite3BtreeCursorZero(BtCursor*);
15363 SQLITE_PRIVATE void sqlite3BtreeCursorHintFlags(BtCursor*, unsigned);
15365 SQLITE_PRIVATE void sqlite3BtreeCursorHint(BtCursor*, int, ...);
15368 SQLITE_PRIVATE int sqlite3BtreeCloseCursor(BtCursor*);
15370 BtCursor*,
15376 SQLITE_PRIVATE int sqlite3BtreeCursorHasMoved(BtCursor*);
15377 SQLITE_PRIVATE int sqlite3BtreeCursorRestore(BtCursor*, int*);
15378 SQLITE_PRIVATE int sqlite3BtreeDelete(BtCursor*, u8 flags);
15429 SQLITE_PRIVATE int sqlite3BtreeInsert(BtCursor*, const BtreePayload *pPayload,
15431 SQLITE_PRIVATE int sqlite3BtreeFirst(BtCursor*, int *pRes);
15432 SQLITE_PRIVATE int sqlite3BtreeLast(BtCursor*, int *pRes);
15433 SQLITE_PRIVATE int sqlite3BtreeNext(BtCursor*, int flags);
15434 SQLITE_PRIVATE int sqlite3BtreeEof(BtCursor*);
15435 SQLITE_PRIVATE int sqlite3BtreePrevious(BtCursor*, int flags);
15436 SQLITE_PRIVATE i64 sqlite3BtreeIntegerKey(BtCursor*);
15437 SQLITE_PRIVATE void sqlite3BtreeCursorPin(BtCursor*);
15438 SQLITE_PRIVATE void sqlite3BtreeCursorUnpin(BtCursor*);
15440 SQLITE_PRIVATE i64 sqlite3BtreeOffset(BtCursor*);
15442 SQLITE_PRIVATE int sqlite3BtreePayload(BtCursor*, u32 offset, u32 amt, void*);
15443 SQLITE_PRIVATE const void *sqlite3BtreePayloadFetch(BtCursor*, u32 *pAmt);
15444 SQLITE_PRIVATE u32 sqlite3BtreePayloadSize(BtCursor*);
15445 SQLITE_PRIVATE sqlite3_int64 sqlite3BtreeMaxRecordSize(BtCursor*);
15449 SQLITE_PRIVATE i64 sqlite3BtreeRowCountEst(BtCursor*);
15452 SQLITE_PRIVATE int sqlite3BtreePayloadChecked(BtCursor*, u32 offset, u32 amt, void*);
15453 SQLITE_PRIVATE int sqlite3BtreePutData(BtCursor*, u32 offset, u32 amt, void*);
15454 SQLITE_PRIVATE void sqlite3BtreeIncrblobCursor(BtCursor *);
15456 SQLITE_PRIVATE void sqlite3BtreeClearCursor(BtCursor *);
15458 SQLITE_PRIVATE int sqlite3BtreeCursorHasHint(BtCursor*, unsigned int mask);
15469 SQLITE_PRIVATE int sqlite3BtreeCursorIsValid(BtCursor*);
15471 SQLITE_PRIVATE int sqlite3BtreeCursorIsValidNN(BtCursor*);
15473 SQLITE_PRIVATE int sqlite3BtreeCount(sqlite3*, BtCursor*, i64*);
15476 SQLITE_PRIVATE int sqlite3BtreeCursorInfo(BtCursor*, int*, int);
15484 SQLITE_PRIVATE int sqlite3BtreeTransferRow(BtCursor*, BtCursor*, i64);
15495 SQLITE_PRIVATE void sqlite3BtreeEnterCursor(BtCursor*);
15507 SQLITE_PRIVATE void sqlite3BtreeLeaveCursor(BtCursor*);
15598 int (*xAdvance)(BtCursor *, int);
21097 BtCursor *pCursor; /* CURTYPE_BTREE or _PSEUDO. Btree cursor */
21483 int sqlite2BtreeKeyCompare(BtCursor *, const void *, int, int, int *);
21485 SQLITE_PRIVATE int sqlite3VdbeIdxRowid(sqlite3*, BtCursor*, i64*);
21529 SQLITE_PRIVATE int sqlite3VdbeMemFromBtree(BtCursor*,u32,u32,Mem*);
21530 SQLITE_PRIVATE int sqlite3VdbeMemFromBtreeZeroOffset(BtCursor*,u32,Mem*);
64357 BtCursor *pCursor; /* A list of all open cursors */
64437 ** particular database connection identified BtCursor.pBtree.db.
64454 struct BtCursor {
64469 BtCursor *pNext; /* Forms a linked list of all cursors */
64483 ** Legal values for BtCursor.curFlags
64494 ** Potential values for BtCursor.eState.
64512 ** in variables BtCursor.pKey and BtCursor.nKey. When a cursor is in
64521 ** should return the error code stored in BtCursor.skipNext
64943 SQLITE_PRIVATE void sqlite3BtreeEnterCursor(BtCursor *pCur){
64947 SQLITE_PRIVATE void sqlite3BtreeLeaveCursor(BtCursor *pCur){
65225 BtCursor *p;
65449 static int cursorHoldsMutex(BtCursor *p){
65461 static int cursorOwnsBtShared(BtCursor *p){
65478 BtCursor *p;
65505 BtCursor *p;
65598 static void btreeReleaseAllCursorPages(BtCursor *pCur){
65622 static int saveCursorKey(BtCursor *pCur){
65658 ** Save the current cursor position in the variables BtCursor.nKey
65659 ** and BtCursor.pKey. The cursor's state is set to CURSOR_REQUIRESEEK.
65664 static int saveCursorPosition(BtCursor *pCur){
65691 static int SQLITE_NOINLINE saveCursorsOnList(BtCursor*,Pgno,BtCursor*);
65714 static int saveAllCursors(BtShared *pBt, Pgno iRoot, BtCursor *pExcept){
65715 BtCursor *p;
65732 BtCursor *p, /* The first cursor that needs saving */
65734 BtCursor *pExcept /* Do not save this cursor */
65756 SQLITE_PRIVATE void sqlite3BtreeClearCursor(BtCursor *pCur){
65769 BtCursor *pCur, /* Cursor open on the btree to be searched */
65806 static int btreeRestoreCursorPosition(BtCursor *pCur){
65849 SQLITE_PRIVATE int sqlite3BtreeCursorHasMoved(BtCursor *pCur){
65852 assert( offsetof(BtCursor, eState)==0 );
65858 ** Return a pointer to a fake BtCursor object that will always answer
65862 SQLITE_PRIVATE BtCursor *sqlite3BtreeFakeValidCursor(void){
65864 assert( offsetof(BtCursor, eState)==0 );
65865 return (BtCursor*)&fakeCursor;
65881 SQLITE_PRIVATE int sqlite3BtreeCursorRestore(BtCursor *pCur, int *pDifferentRow){
65905 SQLITE_PRIVATE void sqlite3BtreeCursorHint(BtCursor *pCur, int eHintType, ...){
65913 SQLITE_PRIVATE void sqlite3BtreeCursorHintFlags(BtCursor *pCur, unsigned x){
67151 BtCursor *pCur, /* Cursor to receive the page, or NULL */
67704 BtCursor *pCur = pBt->pCursor;
67706 BtCursor *pTmp = pCur;
68240 BtCursor *pCur;
69145 BtCursor *p;
69367 BtCursor *pCur /* Space for new cursor */
69370 BtCursor *pX; /* Looping over other all cursors */
69405 /* Now that no other errors can occur, finish filling in the BtCursor
69432 BtCursor *pCur /* Space for new cursor */
69445 BtCursor *pCur /* Write new cursor here */
69455 ** Return the size of a BtCursor object in bytes.
69458 ** sufficient storage to hold a cursor. The BtCursor object is opaque
69463 return ROUND8(sizeof(BtCursor));
69467 ** Initialize memory that will be converted into a BtCursor object.
69474 SQLITE_PRIVATE void sqlite3BtreeCursorZero(BtCursor *p){
69475 memset(p, 0, offsetof(BtCursor, BTCURSOR_FIRST_UNINIT));
69482 SQLITE_PRIVATE int sqlite3BtreeCloseCursor(BtCursor *pCur){
69491 BtCursor *pPrev = pBt->pCursor;
69518 ** Make sure the BtCursor* given in the argument has a valid
69519 ** BtCursor.info structure. If it is not already valid, call
69522 ** BtCursor.info is a cache of the information in the current cell.
69534 static void assertCellInfo(BtCursor *pCur){
69543 static SQLITE_NOINLINE void getCellInfo(BtCursor *pCur){
69554 ** Return true if the given BtCursor is valid. A valid cursor is one
69558 SQLITE_PRIVATE int sqlite3BtreeCursorIsValid(BtCursor *pCur){
69562 SQLITE_PRIVATE int sqlite3BtreeCursorIsValidNN(BtCursor *pCur){
69573 SQLITE_PRIVATE i64 sqlite3BtreeIntegerKey(BtCursor *pCur){
69584 SQLITE_PRIVATE void sqlite3BtreeCursorPin(BtCursor *pCur){
69588 SQLITE_PRIVATE void sqlite3BtreeCursorUnpin(BtCursor *pCur){
69598 SQLITE_PRIVATE i64 sqlite3BtreeOffset(BtCursor *pCur){
69616 SQLITE_PRIVATE u32 sqlite3BtreePayloadSize(BtCursor *pCur){
69636 SQLITE_PRIVATE sqlite3_int64 sqlite3BtreeMaxRecordSize(BtCursor *pCur){
69766 ** the overflow page-list cache array (BtCursor.aOverflow).
69780 BtCursor *pCur, /* Cursor pointing to entry to read from */
69836 /* If the BtCursor.aOverflow[] has not been allocated, allocate it now.
69981 SQLITE_PRIVATE int sqlite3BtreePayload(BtCursor *pCur, u32 offset, u32 amt, void *pBuf){
69996 BtCursor *pCur,
70009 SQLITE_PRIVATE int sqlite3BtreePayloadChecked(BtCursor *pCur, u32 offset, u32 amt, void *pBuf){
70039 BtCursor *pCur, /* Cursor pointing to entry to read from */
70077 SQLITE_PRIVATE const void *sqlite3BtreePayloadFetch(BtCursor *pCur, u32 *pAmt){
70091 static int moveToChild(BtCursor *pCur, u32 newPgno){
70140 static void moveToParent(BtCursor *pCur){
70181 static int moveToRoot(BtCursor *pCur){
70268 static int moveToLeftmost(BtCursor *pCur){
70293 static int moveToRightmost(BtCursor *pCur){
70316 SQLITE_PRIVATE int sqlite3BtreeFirst(BtCursor *pCur, int *pRes){
70338 SQLITE_PRIVATE int sqlite3BtreeLast(BtCursor *pCur, int *pRes){
70409 BtCursor *pCur, /* The cursor to be moved */
70663 SQLITE_PRIVATE int sqlite3BtreeEof(BtCursor *pCur){
70676 SQLITE_PRIVATE i64 sqlite3BtreeRowCountEst(BtCursor *pCur){
70705 ** for the common case of merely incrementing the cell counter BtCursor.aiIdx
70716 static SQLITE_NOINLINE int btreeNext(BtCursor *pCur){
70786 SQLITE_PRIVATE int sqlite3BtreeNext(BtCursor *pCur, int flags){
70815 ** for the common case of merely decrementing the cell counter BtCursor.aiIdx
70826 static SQLITE_NOINLINE int btreePrevious(BtCursor *pCur){
70875 SQLITE_PRIVATE int sqlite3BtreePrevious(BtCursor *pCur, int flags){
73365 static int anotherValidCursor(BtCursor *pCur){
73366 BtCursor *pOther;
73388 static int balance(BtCursor *pCur){
73557 static int btreeOverwriteCell(BtCursor *pCur, const BtreePayload *pX){
73637 BtCursor *pCur, /* Insert data into the table of this cursor */
73868 ** the cursor, zero the BtCursor.info.nSize and BTCF_ValidNKey
73873 ** of BtCursor.apPage[] and BtCursor.aiIdx[]. Instead of doing that,
73934 SQLITE_PRIVATE int sqlite3BtreeTransferRow(BtCursor *pDest, BtCursor *pSrc, i64 iKey){
74044 SQLITE_PRIVATE int sqlite3BtreeDelete(BtCursor *pCur, u8 flags){
74476 SQLITE_PRIVATE int sqlite3BtreeClearTableOfCursor(BtCursor *pCur){
74676 SQLITE_PRIVATE int sqlite3BtreeCount(sqlite3 *db, BtCursor *pCur, i64 *pnEntry){
75565 SQLITE_PRIVATE int sqlite3BtreePutData(BtCursor *pCsr, u32 offset, u32 amt, void *z){
75613 SQLITE_PRIVATE void sqlite3BtreeIncrblobCursor(BtCursor *pCur){
75659 SQLITE_PRIVATE int sqlite3BtreeCursorHasHint(BtCursor *pCsr, unsigned int mask){
77646 BtCursor *pCur, /* Cursor pointing at record to retrieve. */
77669 BtCursor *pCur, /* Cursor pointing at record to retrieve. */
83279 SQLITE_PRIVATE int sqlite3VdbeIdxRowid(sqlite3 *db, BtCursor *pCur, i64 *rowid){
83366 BtCursor *pCur;
86164 pCx->uc.pCursor = (BtCursor*)
88554 BtCursor *pCrsr; /* The BTree cursor */
89173 BtCursor *pCrsr;
90039 /* Give this pseudo-cursor a fake BtCursor pointer so that pCx
90777 BtCursor *pCrsr;
91374 BtCursor *pCrsr;
91512 BtCursor *pCrsr;
91551 BtCursor *pCrsr;
91617 BtCursor *pCrsr;
91854 BtCursor *pCrsr;
92071 BtCursor *pCur;
94265 BtCursor *pCsr; /* Cursor pointing at blob row */
94614 int (*xCall)(BtCursor*, u32, u32, void*)