RbtCursor
RbtCursor *pShared; /* List of all cursors on the same Rbtree */
static int memRbtreeFirst(RbtCursor* pCur, int *pRes)
static int memRbtreeLast(RbtCursor* pCur, int *pRes)
static int memRbtreeNext(RbtCursor* pCur, int *pRes)
static int memRbtreePrevious(RbtCursor* pCur, int *pRes)
RbtCursor *pCursors; /* All cursors pointing to this tree */
static int memRbtreeKeySize(RbtCursor* pCur, int *pSize)
static int memRbtreeKey(RbtCursor* pCur, int offset, int amt, char *zBuf)
static int memRbtreeDataSize(RbtCursor* pCur, int *pSize)
static int memRbtreeData(RbtCursor *pCur, int offset, int amt, char *zBuf)
static int memRbtreeCloseCursor(RbtCursor* pCur)
RbtCursor *p = pCur->pTree->pCursors;
RbtCursor cur;
RbtCursor* pCur,
static int memRbtreeNext(RbtCursor* pCur, int *pRes);
static int memRbtreeCursorDump(RbtCursor* pCur, int* aRes)
static int memRbtreeLast(RbtCursor* pCur, int *pRes);
static int memRbtreePrevious(RbtCursor* pCur, int *pRes);
static int checkReadLocks(RbtCursor *pCur){
RbtCursor *p;
typedef struct RbtCursor RbtCursor;
static int memRbtreeKeyCompare(RbtCursor* pCur, const void *pKey, int nKey,
RbtCursor **ppCur
RbtCursor *pCur;
pCur = *ppCur = sqliteMalloc(sizeof(RbtCursor));
RbtCursor* pCur,
RbtCursor* pCur,
static int memRbtreeDelete(RbtCursor* pCur)