Go to the source code of this file.
Defines | |
#define | checkActiveVdbeCnt(x) |
#define | MAX_6BYTE ((((i64)0x00008000)<<32)-1) |
#define | swapMixedEndianFloat(X) |
Functions | |
Vdbe * | sqlite3VdbeCreate (sqlite3 *db) |
void | sqlite3VdbeSetSql (Vdbe *p, const char *z, int n) |
const char * | sqlite3_sql (sqlite3_stmt *pStmt) |
void | sqlite3VdbeSwap (Vdbe *pA, Vdbe *pB) |
static void | resizeOpArray (Vdbe *p, int N) |
int | sqlite3VdbeAddOp3 (Vdbe *p, int op, int p1, int p2, int p3) |
int | sqlite3VdbeAddOp0 (Vdbe *p, int op) |
int | sqlite3VdbeAddOp1 (Vdbe *p, int op, int p1) |
int | sqlite3VdbeAddOp2 (Vdbe *p, int op, int p1, int p2) |
int | sqlite3VdbeAddOp4 (Vdbe *p, int op, int p1, int p2, int p3, const char *zP4, int p4type) |
int | sqlite3VdbeMakeLabel (Vdbe *p) |
void | sqlite3VdbeResolveLabel (Vdbe *p, int x) |
static void | resolveP2Values (Vdbe *p, int *pMaxFuncArgs) |
int | sqlite3VdbeCurrentAddr (Vdbe *p) |
int | sqlite3VdbeAddOpList (Vdbe *p, int nOp, VdbeOpList const *aOp) |
void | sqlite3VdbeChangeP1 (Vdbe *p, int addr, int val) |
void | sqlite3VdbeChangeP2 (Vdbe *p, int addr, int val) |
void | sqlite3VdbeChangeP3 (Vdbe *p, int addr, int val) |
void | sqlite3VdbeChangeP5 (Vdbe *p, u8 val) |
void | sqlite3VdbeJumpHere (Vdbe *p, int addr) |
static void | freeEphemeralFunction (sqlite3 *db, FuncDef *pDef) |
static void | freeP4 (sqlite3 *db, int p4type, void *p4) |
void | sqlite3VdbeChangeToNoop (Vdbe *p, int addr, int N) |
void | sqlite3VdbeChangeP4 (Vdbe *p, int addr, const char *zP4, int n) |
VdbeOp * | sqlite3VdbeGetOp (Vdbe *p, int addr) |
static char * | displayP4 (Op *pOp, char *zTemp, int nTemp) |
void | sqlite3VdbeUsesBtree (Vdbe *p, int i) |
static void | releaseMemArray (Mem *p, int N) |
int | sqlite3VdbeList (Vdbe *p) |
void | sqlite3VdbeMakeReady (Vdbe *p, int nVar, int nMem, int nCursor, int isExplain) |
void | sqlite3VdbeFreeCursor (Vdbe *p, VdbeCursor *pCx) |
static void | closeAllCursorsExceptActiveVtabs (Vdbe *p) |
static void | Cleanup (Vdbe *p) |
void | sqlite3VdbeSetNumCols (Vdbe *p, int nResColumn) |
int | sqlite3VdbeSetColName (Vdbe *p, int idx, int var, const char *zName, void(*xDel)(void *)) |
static int | vdbeCommit (sqlite3 *db, Vdbe *p) |
static void | invalidateCursorsOnModifiedBtrees (sqlite3 *db) |
int | sqlite3VdbeHalt (Vdbe *p) |
void | sqlite3VdbeResetStepResult (Vdbe *p) |
int | sqlite3VdbeReset (Vdbe *p) |
int | sqlite3VdbeFinalize (Vdbe *p) |
void | sqlite3VdbeDeleteAuxData (VdbeFunc *pVdbeFunc, int mask) |
void | sqlite3VdbeDelete (Vdbe *p) |
int | sqlite3VdbeCursorMoveto (VdbeCursor *p) |
u32 | sqlite3VdbeSerialType (Mem *pMem, int file_format) |
int | sqlite3VdbeSerialTypeLen (u32 serial_type) |
int | sqlite3VdbeSerialPut (u8 *buf, int nBuf, Mem *pMem, int file_format) |
int | sqlite3VdbeSerialGet (const unsigned char *buf, u32 serial_type, Mem *pMem) |
UnpackedRecord * | sqlite3VdbeRecordUnpack (KeyInfo *pKeyInfo, int nKey, const void *pKey, UnpackedRecord *pSpace, int szSpace) |
void | sqlite3VdbeDeleteUnpackedRecord (UnpackedRecord *p) |
int | sqlite3VdbeRecordCompare (int nKey1, const void *pKey1, UnpackedRecord *pPKey2) |
int | sqlite3VdbeIdxRowid (BtCursor *pCur, i64 *rowid) |
int | sqlite3VdbeIdxKeyCompare (VdbeCursor *pC, UnpackedRecord *pUnpacked, int *res) |
void | sqlite3VdbeSetChanges (sqlite3 *db, int nChange) |
void | sqlite3VdbeCountChanges (Vdbe *v) |
void | sqlite3ExpirePreparedStatements (sqlite3 *db) |
sqlite3 * | sqlite3VdbeDb (Vdbe *v) |
#define checkActiveVdbeCnt | ( | x | ) |
Definition at line 1476 of file vdbeaux.c.
Referenced by sqlite3VdbeHalt().
#define MAX_6BYTE ((((i64)0x00008000)<<32)-1) |
Referenced by sqlite3VdbeSerialType().
#define swapMixedEndianFloat | ( | X | ) |
Definition at line 2029 of file vdbeaux.c.
Referenced by sqlite3VdbeSerialGet(), and sqlite3VdbeSerialPut().
static void Cleanup | ( | Vdbe * | p | ) | [static] |
Definition at line 1157 of file vdbeaux.c.
References Vdbe::aMem, closeAllCursorsExceptActiveVtabs(), Vdbe::contextStack, Vdbe::contextStackDepth, Vdbe::contextStackTop, Vdbe::db, db, MEM_Null, MemSetTypeFlag, Vdbe::nMem, Vdbe::pResultSet, releaseMemArray(), Context::sFifo, Vdbe::sFifo, sqlite3DbFree(), sqlite3VdbeFifoClear(), and Vdbe::zErrMsg.
Referenced by sqlite3VdbeReset().
static void closeAllCursorsExceptActiveVtabs | ( | Vdbe * | p | ) | [static] |
Definition at line 1138 of file vdbeaux.c.
References Vdbe::apCsr, Vdbe::inVtabMethod, Vdbe::nCursor, VdbeCursor::pVtabCursor, and sqlite3VdbeFreeCursor().
Referenced by Cleanup(), and sqlite3VdbeHalt().
static char* displayP4 | ( | Op * | pOp, | |
char * | zTemp, | |||
int | nTemp | |||
) | [static] |
Definition at line 635 of file vdbeaux.c.
References KeyInfo::aColl, KeyInfo::aSortOrder, Mem::flags, Mem::i, VdbeOp::i, MEM_Int, MEM_Null, MEM_Real, MEM_Str, FuncDef::nArg, KeyInfo::nField, VdbeOp::p4, P4_COLLSEQ, P4_FUNCDEF, P4_INT32, P4_INT64, P4_INTARRAY, P4_KEYINFO, P4_KEYINFO_STATIC, P4_MEM, P4_REAL, P4_VTAB, VdbeOp::p4type, VdbeOp::pColl, VdbeOp::pFunc, VdbeOp::pI64, VdbeOp::pKeyInfo, VdbeOp::pMem, sqlite3_vtab::pModule, VdbeOp::pReal, VdbeOp::pVtab, Mem::r, sqlite3_snprintf(), Mem::u, VdbeOp::z, Mem::z, FuncDef::zName, and CollSeq::zName.
Referenced by sqlite3VdbeList().
Definition at line 441 of file vdbeaux.c.
References FuncDef::flags, sqlite3DbFree(), and SQLITE_FUNC_EPHEM.
Referenced by freeP4().
static void freeP4 | ( | sqlite3 * | db, | |
int | p4type, | |||
void * | p4 | |||
) | [static] |
Definition at line 450 of file vdbeaux.c.
References freeEphemeralFunction(), P4_DYNAMIC, P4_FUNCDEF, P4_INT64, P4_INTARRAY, P4_KEYINFO, P4_KEYINFO_HANDOFF, P4_MEM, P4_MPRINTF, P4_REAL, P4_VDBEFUNC, VdbeFunc::pFunc, sqlite3DbFree(), sqlite3ValueFree(), and sqlite3VdbeDeleteAuxData().
Referenced by sqlite3VdbeChangeP4(), sqlite3VdbeChangeToNoop(), and sqlite3VdbeDelete().
static void invalidateCursorsOnModifiedBtrees | ( | sqlite3 * | db | ) | [static] |
Definition at line 1495 of file vdbeaux.c.
References sqlite3::aDb, sqlite3::nDb, Db::pBt, sqlite3BtreeIsInTrans(), sqlite3BtreeTripAllCursors(), and SQLITE_ABORT.
Referenced by sqlite3VdbeHalt().
static void releaseMemArray | ( | Mem * | p, | |
int | N | |||
) | [static] |
Definition at line 768 of file vdbeaux.c.
References Mem::db, db, Mem::flags, sqlite3::mallocFailed, MEM_Agg, MEM_Dyn, MEM_Null, sqlite3DbFree(), sqlite3VdbeMemRelease(), and Mem::zMalloc.
Referenced by Cleanup(), sqlite3VdbeDelete(), sqlite3VdbeList(), and sqlite3VdbeSetNumCols().
static void resizeOpArray | ( | Vdbe * | p, | |
int | N | |||
) | [static] |
Definition at line 111 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::db, Vdbe::nOpAlloc, and sqlite3DbRealloc().
Referenced by sqlite3VdbeAddOp3(), and sqlite3VdbeAddOpList().
static void resolveP2Values | ( | Vdbe * | p, | |
int * | pMaxFuncArgs | |||
) | [static] |
Definition at line 263 of file vdbeaux.c.
References Vdbe::aLabel, Vdbe::aOp, Vdbe::db, Vdbe::nLabel, Vdbe::nOp, OE_Abort, OP_AggStep, OP_Destroy, OP_Function, OP_Halt, OP_Integer, OP_Noop, OP_Statement, OP_Transaction, OP_VFilter, OP_VRename, OP_VUpdate, VdbeOp::opcode, OPFLG_JUMP, VdbeOp::p1, VdbeOp::p2, VdbeOp::p5, Vdbe::readOnly, sqlite3DbFree(), sqlite3VdbeOpcodeHasProperty(), SQLITE_CONSTRAINT, and Vdbe::usesStmtJournal.
Referenced by sqlite3VdbeMakeReady().
const char* sqlite3_sql | ( | sqlite3_stmt * | pStmt | ) |
Definition at line 65 of file vdbeaux.c.
Referenced by DbObjCmd(), and sqlite3Reprepare().
void sqlite3ExpirePreparedStatements | ( | sqlite3 * | db | ) |
Definition at line 2477 of file vdbeaux.c.
References Vdbe::expired, Vdbe::pNext, and sqlite3::pVdbe.
Referenced by createCollation(), sqlite3_set_authorizer(), sqlite3CreateFunc(), sqlite3RollbackAll(), and sqlite3VdbeExec().
int sqlite3VdbeAddOp0 | ( | Vdbe * | p, | |
int | op | |||
) |
Definition at line 168 of file vdbeaux.c.
References sqlite3VdbeAddOp3().
Referenced by multiSelectOrderBy(), pushOntoSorter(), sqlite3DeleteFrom(), sqlite3DropTable(), sqlite3ExprCodeGetColumn(), sqlite3ExprCodeTarget(), sqlite3FinishCoding(), sqlite3GetVdbe(), sqlite3StartTable(), and sqlite3Update().
int sqlite3VdbeAddOp1 | ( | Vdbe * | p, | |
int | op, | |||
int | p1 | |||
) |
Definition at line 171 of file vdbeaux.c.
References sqlite3VdbeAddOp3().
Referenced by analyzeOneTable(), autoIncEnd(), codeAttach(), codeEqualityTerm(), codeOffset(), computeLimitRegisters(), generateOutputSubroutine(), generateSortTail(), loadAnalysis(), multiSelect(), multiSelectOrderBy(), pushOntoSorter(), selectInnerLoop(), sqlite3BeginWriteOperation(), sqlite3CodeSubselect(), sqlite3CreateIndex(), sqlite3DeleteFrom(), sqlite3EndTable(), sqlite3ExprCodeGetColumn(), sqlite3ExprCodeTarget(), sqlite3FindInIndex(), sqlite3GenerateConstraintChecks(), sqlite3Insert(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3Select(), sqlite3StartTable(), sqlite3Update(), and sqlite3WhereEnd().
int sqlite3VdbeAddOp2 | ( | Vdbe * | p, | |
int | op, | |||
int | p1, | |||
int | p2 | |||
) |
Definition at line 174 of file vdbeaux.c.
References sqlite3VdbeAddOp3().
Referenced by analyzeOneTable(), autoIncBegin(), autoIncEnd(), autoIncStep(), codeAllEqualityTerms(), codeApplyAffinity(), codeDistinct(), codeEqualityTerm(), codeInteger(), codeOffset(), codeReal(), codeTriggerProgram(), computeLimitRegisters(), flagPragma(), generateOutputSubroutine(), generateSortTail(), multiSelect(), multiSelectOrderBy(), openStatTable(), pushOntoSorter(), resetAccumulator(), returnSingleInt(), selectInnerLoop(), sqlite3BeginTransaction(), sqlite3ChangeCookie(), sqlite3CodeSubselect(), sqlite3CodeVerifySchema(), sqlite3CommitTransaction(), sqlite3CompleteInsertion(), sqlite3CreateIndex(), sqlite3DeleteFrom(), sqlite3DropTriggerPtr(), sqlite3ExprCode(), sqlite3ExprCodeAndCache(), sqlite3ExprCodeCopy(), sqlite3ExprCodeExprList(), sqlite3ExprCodeGetColumn(), sqlite3ExprCodeTarget(), sqlite3ExprIfFalse(), sqlite3ExprIfTrue(), sqlite3ExprWritableRegister(), sqlite3FindInIndex(), sqlite3FinishCoding(), sqlite3GenerateConstraintChecks(), sqlite3GenerateIndexKey(), sqlite3GenerateRowDelete(), sqlite3Insert(), sqlite3MinimumFileFormat(), sqlite3OpenMasterTable(), sqlite3OpenTable(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3RollbackTransaction(), sqlite3Select(), sqlite3StartTable(), sqlite3Update(), sqlite3Vacuum(), sqlite3VtabFinishParse(), sqlite3WhereBegin(), sqlite3WhereEnd(), updateVirtualTable(), and xferOptimization().
int sqlite3VdbeAddOp3 | ( | Vdbe * | p, | |
int | op, | |||
int | p1, | |||
int | p2, | |||
int | p3 | |||
) |
Definition at line 136 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::db, Vdbe::expired, Vdbe::magic, sqlite3::mallocFailed, Vdbe::nOp, Vdbe::nOpAlloc, VdbeOp::opcode, VdbeOp::p, VdbeOp::p1, VdbeOp::p2, VdbeOp::p3, VdbeOp::p4, P4_NOTUSED, VdbeOp::p4type, VdbeOp::p5, resizeOpArray(), and VDBE_MAGIC_INIT.
Referenced by analyzeOneTable(), autoIncBegin(), autoIncEnd(), codeAttach(), codeDistinct(), codeEqualityTerm(), computeLimitRegisters(), destroyRootPage(), generateOutputSubroutine(), generateSortTail(), multiSelect(), multiSelectOrderBy(), openStatTable(), pushOntoSorter(), selectInnerLoop(), sqlite3ChangeCookie(), sqlite3CodeSubselect(), sqlite3CompleteInsertion(), sqlite3DeleteFrom(), sqlite3EndTable(), sqlite3ExprCodeGetColumn(), sqlite3ExprCodeMove(), sqlite3ExprCodeTarget(), sqlite3ExprIfFalse(), sqlite3ExprIfTrue(), sqlite3GenerateConstraintChecks(), sqlite3GenerateIndexKey(), sqlite3GenerateRowDelete(), sqlite3GenerateRowIndexDelete(), sqlite3Insert(), sqlite3MinimumFileFormat(), sqlite3OpenMasterTable(), sqlite3OpenTable(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3Select(), sqlite3StartTable(), sqlite3Update(), sqlite3VdbeAddOp0(), sqlite3VdbeAddOp1(), sqlite3VdbeAddOp2(), sqlite3VdbeAddOp4(), sqlite3WhereBegin(), updateVirtualTable(), and xferOptimization().
int sqlite3VdbeAddOp4 | ( | Vdbe * | p, | |
int | op, | |||
int | p1, | |||
int | p2, | |||
int | p3, | |||
const char * | zP4, | |||
int | p4type | |||
) |
Definition at line 182 of file vdbeaux.c.
References sqlite3VdbeAddOp3(), and sqlite3VdbeChangeP4().
Referenced by analyzeOneTable(), autoIncBegin(), codeCompare(), codeInteger(), codeReal(), codeTableLocks(), finalizeAggFunctions(), generateOutputSubroutine(), generateSortTail(), multiSelectOrderBy(), reloadTableSchema(), resetAccumulator(), selectInnerLoop(), sqlite3AlterRenameTable(), sqlite3CodeRowTrigger(), sqlite3CodeSubselect(), sqlite3CreateIndex(), sqlite3DeleteFrom(), sqlite3DropIndex(), sqlite3DropTable(), sqlite3DropTriggerPtr(), sqlite3EndTable(), sqlite3ExprCodeTarget(), sqlite3FindInIndex(), sqlite3FinishCoding(), sqlite3FinishTrigger(), sqlite3GenerateConstraintChecks(), sqlite3Insert(), sqlite3OpenTableAndIndices(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3Select(), sqlite3Update(), sqlite3VtabFinishParse(), sqlite3WhereBegin(), updateAccumulator(), updateVirtualTable(), and xferOptimization().
int sqlite3VdbeAddOpList | ( | Vdbe * | p, | |
int | nOp, | |||
VdbeOpList const * | aOp | |||
) |
Definition at line 342 of file vdbeaux.c.
References ADDR, Vdbe::aOp, Vdbe::db, Vdbe::magic, sqlite3::mallocFailed, Vdbe::nOp, Vdbe::nOpAlloc, VdbeOpList::opcode, VdbeOp::opcode, OPFLG_JUMP, VdbeOp::p, VdbeOpList::p1, VdbeOp::p1, VdbeOp::p2, VdbeOpList::p2, VdbeOpList::p3, VdbeOp::p3, VdbeOp::p4, P4_NOTUSED, VdbeOp::p4type, VdbeOp::p5, resizeOpArray(), sqlite3VdbeOpcodeHasProperty(), and VDBE_MAGIC_INIT.
Referenced by sqlite3_blob_open(), sqlite3DropTriggerPtr(), and sqlite3Pragma().
void sqlite3VdbeChangeP1 | ( | Vdbe * | p, | |
int | addr, | |||
int | val | |||
) |
Definition at line 388 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::magic, Vdbe::nOp, VdbeOp::p1, and VDBE_MAGIC_INIT.
Referenced by sqlite3_blob_open(), and sqlite3Pragma().
void sqlite3VdbeChangeP2 | ( | Vdbe * | p, | |
int | addr, | |||
int | val | |||
) |
Definition at line 399 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::magic, Vdbe::nOp, VdbeOp::p2, and VDBE_MAGIC_INIT.
Referenced by multiSelect(), sqlite3_blob_open(), sqlite3Pragma(), sqlite3VdbeJumpHere(), and sqlite3WhereBegin().
void sqlite3VdbeChangeP3 | ( | Vdbe * | p, | |
int | addr, | |||
int | val | |||
) |
Definition at line 409 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::magic, Vdbe::nOp, VdbeOp::p3, and VDBE_MAGIC_INIT.
Referenced by sqlite3_blob_open(), and sqlite3Pragma().
void sqlite3VdbeChangeP4 | ( | Vdbe * | p, | |
int | addr, | |||
const char * | zP4, | |||
int | n | |||
) |
Definition at line 524 of file vdbeaux.c.
References KeyInfo::aColl, Vdbe::aOp, KeyInfo::aSortOrder, Vdbe::db, db, freeP4(), VdbeOp::i, Vdbe::magic, sqlite3::mallocFailed, Vdbe::nOp, VdbeOp::p, VdbeOp::p4, P4_DYNAMIC, P4_INT32, P4_KEYINFO, P4_KEYINFO_HANDOFF, P4_NOTUSED, VdbeOp::p4type, VdbeOp::pKeyInfo, sqlite3DbStrNDup(), sqlite3Malloc(), SQLITE_PTR_TO_INT, VDBE_MAGIC_INIT, and VdbeOp::z.
Referenced by codeAttach(), multiSelect(), sqlite3CodeSubselect(), sqlite3ColumnDefault(), sqlite3CompleteInsertion(), sqlite3DeleteFrom(), sqlite3DropTriggerPtr(), sqlite3ExprCodeTarget(), sqlite3FinishCoding(), sqlite3GenerateConstraintChecks(), sqlite3GenerateRowDelete(), sqlite3IndexAffinityStr(), sqlite3Pragma(), sqlite3TableAffinityStr(), sqlite3VdbeAddOp4(), and xferOptimization().
Definition at line 420 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::magic, Vdbe::nOp, VdbeOp::p5, and VDBE_MAGIC_INIT.
Referenced by analyzeOneTable(), autoIncBegin(), autoIncEnd(), codeAttach(), codeCompare(), generateOutputSubroutine(), generateSortTail(), openStatTable(), selectInnerLoop(), sqlite3CompleteInsertion(), sqlite3EndTable(), sqlite3ExprCodeTarget(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3StartTable(), sqlite3WhereBegin(), sqlite3WhereEnd(), updateAccumulator(), and xferOptimization().
void sqlite3VdbeChangeToNoop | ( | Vdbe * | p, | |
int | addr, | |||
int | N | |||
) |
Definition at line 486 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::db, db, freeP4(), OP_Noop, VdbeOp::opcode, VdbeOp::p, VdbeOp::p4, and VdbeOp::p4type.
Referenced by sqlite3_blob_open(), sqlite3CodeSubselect(), and sqlite3Select().
void sqlite3VdbeCountChanges | ( | Vdbe * | v | ) |
Definition at line 2463 of file vdbeaux.c.
References Vdbe::changeCntOn.
Referenced by sqlite3DeleteFrom(), sqlite3Insert(), and sqlite3Update().
Definition at line 38 of file vdbeaux.c.
References Vdbe::db, Vdbe::magic, Vdbe::pNext, Vdbe::pPrev, sqlite3::pVdbe, sqlite3DbMallocZero(), and VDBE_MAGIC_INIT.
Referenced by sqlite3_blob_open(), sqlite3GetVdbe(), and sqlite3Pragma().
int sqlite3VdbeCurrentAddr | ( | Vdbe * | p | ) |
Definition at line 333 of file vdbeaux.c.
References Vdbe::magic, Vdbe::nOp, and VDBE_MAGIC_INIT.
Referenced by analyzeOneTable(), autoIncBegin(), generateOutputSubroutine(), multiSelect(), multiSelectOrderBy(), readsTable(), sqlite3CodeSubselect(), sqlite3DeleteFrom(), sqlite3ExprHardCopy(), sqlite3Insert(), sqlite3Select(), sqlite3Update(), sqlite3WhereBegin(), sqlite3WhereEnd(), and updateVirtualTable().
int sqlite3VdbeCursorMoveto | ( | VdbeCursor * | p | ) |
Definition at line 1855 of file vdbeaux.c.
References CACHE_STALE, VdbeCursor::cacheStatus, VdbeCursor::deferredMoveto, VdbeCursor::isTable, keyToInt, VdbeCursor::lastRowid, VdbeCursor::movetoTarget, VdbeCursor::nullRow, VdbeCursor::pCursor, VdbeCursor::rowidIsValid, sqlite3BtreeCursorHasMoved(), sqlite3BtreeMovetoUnpacked(), sqlite3BtreeNext(), and SQLITE_OK.
Referenced by sqlite3VdbeExec().
Definition at line 2487 of file vdbeaux.c.
References Vdbe::db.
Referenced by codeReal(), dup8bytes(), openStatTable(), sqlite3ColumnDefault(), sqlite3ExprCodeTarget(), sqlite3IndexAffinityStr(), sqlite3Reprepare(), and sqlite3TableAffinityStr().
void sqlite3VdbeDelete | ( | Vdbe * | p | ) |
Definition at line 1813 of file vdbeaux.c.
References Vdbe::aColName, Vdbe::aLabel, Vdbe::aMem, Vdbe::aOp, Vdbe::aVar, COLNAME_N, Vdbe::db, freeP4(), Vdbe::magic, Vdbe::nOp, Vdbe::nResColumn, Vdbe::nVar, VdbeOp::p, VdbeOp::p4, VdbeOp::p4type, Vdbe::pNext, Vdbe::pPrev, sqlite3::pVdbe, releaseMemArray(), sqlite3DbFree(), VDBE_MAGIC_DEAD, and Vdbe::zSql.
Referenced by sqlite3RunParser(), and sqlite3VdbeFinalize().
void sqlite3VdbeDeleteAuxData | ( | VdbeFunc * | pVdbeFunc, | |
int | mask | |||
) |
Definition at line 1797 of file vdbeaux.c.
References VdbeFunc::apAux, VdbeFunc::nAux, and VdbeFunc::AuxData::xDelete.
Referenced by freeP4(), and sqlite3VdbeExec().
void sqlite3VdbeDeleteUnpackedRecord | ( | UnpackedRecord * | p | ) |
Definition at line 2258 of file vdbeaux.c.
References UnpackedRecord::aMem, KeyInfo::db, UnpackedRecord::flags, UnpackedRecord::pKeyInfo, sqlite3DbFree(), sqlite3VdbeMemRelease(), UNPACKED_NEED_DESTROY, UNPACKED_NEED_FREE, and Mem::zMalloc.
Referenced by sqlite3BtreeMoveto(), and sqlite3VdbeExec().
int sqlite3VdbeFinalize | ( | Vdbe * | p | ) |
Definition at line 1779 of file vdbeaux.c.
References Vdbe::db, sqlite3::errMask, Vdbe::magic, sqlite3VdbeDelete(), sqlite3VdbeReset(), SQLITE_MISUSE, SQLITE_OK, VDBE_MAGIC_HALT, VDBE_MAGIC_INIT, and VDBE_MAGIC_RUN.
Referenced by blobReadWrite(), sqlite3_finalize(), and sqlite3Reprepare().
void sqlite3VdbeFreeCursor | ( | Vdbe * | p, | |
VdbeCursor * | pCx | |||
) |
Definition at line 1107 of file vdbeaux.c.
References Vdbe::db, VdbeCursor::ephemPseudoTable, Vdbe::inVtabMethod, VdbeCursor::pBt, VdbeCursor::pCursor, VdbeCursor::pData, VdbeCursor::pModule, VdbeCursor::pVtabCursor, sqlite3BtreeClose(), sqlite3BtreeCloseCursor(), sqlite3DbFree(), sqlite3SafetyOff, sqlite3SafetyOn, and sqlite3_module::xClose.
Referenced by allocateCursor(), closeAllCursorsExceptActiveVtabs(), and sqlite3VdbeExec().
Definition at line 623 of file vdbeaux.c.
References Vdbe::aOp, Vdbe::db, Vdbe::magic, sqlite3::mallocFailed, and VDBE_MAGIC_INIT.
Referenced by readsTable(), sqlite3ExprHardCopy(), sqlite3FinishCoding(), sqlite3Insert(), and sqlite3WhereEnd().
int sqlite3VdbeHalt | ( | Vdbe * | p | ) |
Definition at line 1518 of file vdbeaux.c.
References sqlite3::activeVdbeCnt, sqlite3::aDb, Vdbe::aMutex, sqlite3::autoCommit, Vdbe::changeCntOn, checkActiveVdbeCnt, closeAllCursorsExceptActiveVtabs(), Vdbe::db, Vdbe::errorAction, sqlite3::flags, invalidateCursorsOnModifiedBtrees(), Vdbe::magic, sqlite3::mallocFailed, Vdbe::nChange, sqlite3::nDb, OE_Abort, OE_Fail, Vdbe::openedStatement, Db::pBt, Vdbe::pc, Vdbe::rc, Vdbe::readOnly, sqlite3BtreeCommitStmt(), sqlite3BtreeMutexArrayEnter, sqlite3BtreeMutexArrayLeave, sqlite3BtreeRollbackStmt(), sqlite3CommitInternalChanges(), sqlite3DbFree(), sqlite3ResetInternalSchema(), sqlite3RollbackAll(), sqlite3VdbeSetChanges(), SQLITE_BUSY, SQLITE_CONSTRAINT, SQLITE_FULL, SQLITE_InternChanges, SQLITE_INTERRUPT, SQLITE_IOERR, SQLITE_IOERR_BLOCKED, SQLITE_NOMEM, SQLITE_OK, Vdbe::usesStmtJournal, VDBE_MAGIC_HALT, VDBE_MAGIC_RUN, vdbeCommit(), sqlite3::writeVdbeCnt, and Vdbe::zErrMsg.
Referenced by sqlite3VdbeExec(), and sqlite3VdbeReset().
int sqlite3VdbeIdxKeyCompare | ( | VdbeCursor * | pC, | |
UnpackedRecord * | pUnpacked, | |||
int * | res | |||
) |
Definition at line 2421 of file vdbeaux.c.
References Mem::db, UnpackedRecord::flags, Mem::flags, Mem::n, VdbeCursor::pCursor, sqlite3BtreeKeySize(), sqlite3VdbeMemFromBtree(), sqlite3VdbeMemRelease(), sqlite3VdbeRecordCompare(), SQLITE_OK, UNPACKED_IGNORE_ROWID, Mem::z, and Mem::zMalloc.
Referenced by sqlite3VdbeExec().
Definition at line 2379 of file vdbeaux.c.
References Mem::db, Mem::flags, getVarint32, Mem::i, Mem::n, sqlite3BtreeKeySize(), sqlite3VdbeMemFromBtree(), sqlite3VdbeMemRelease(), sqlite3VdbeSerialGet(), sqlite3VdbeSerialTypeLen(), SQLITE_CORRUPT_BKPT, SQLITE_OK, Mem::u, Mem::z, and Mem::zMalloc.
Referenced by sqlite3VdbeExec().
void sqlite3VdbeJumpHere | ( | Vdbe * | p, | |
int | addr | |||
) |
Definition at line 432 of file vdbeaux.c.
References Vdbe::nOp, and sqlite3VdbeChangeP2().
Referenced by analyzeOneTable(), autoIncEnd(), codeOffset(), computeLimitRegisters(), generateOutputSubroutine(), multiSelect(), multiSelectOrderBy(), pushOntoSorter(), sqlite3CodeSubselect(), sqlite3DeleteFrom(), sqlite3ExprCodeTarget(), sqlite3FindInIndex(), sqlite3FinishCoding(), sqlite3GenerateConstraintChecks(), sqlite3GenerateRowDelete(), sqlite3Insert(), sqlite3MinimumFileFormat(), sqlite3Pragma(), sqlite3RefillIndex(), sqlite3Select(), sqlite3StartTable(), sqlite3Update(), sqlite3WhereEnd(), updateVirtualTable(), and xferOptimization().
int sqlite3VdbeList | ( | Vdbe * | p | ) |
Definition at line 831 of file vdbeaux.c.
References Vdbe::aMem, Vdbe::aOp, Vdbe::db, db, displayP4(), Mem::enc, Vdbe::explain, Mem::flags, Mem::i, sqlite3::isInterrupted, sqlite3::magic, Vdbe::magic, sqlite3::mallocFailed, MEM_Dyn, MEM_Int, MEM_Null, MEM_Static, MEM_Str, MEM_Term, Mem::n, Vdbe::nMem, Vdbe::nOp, Vdbe::nResColumn, OP_Explain, VdbeOp::opcode, VdbeOp::p1, VdbeOp::p2, VdbeOp::p3, VdbeOp::p5, Vdbe::pc, Vdbe::pResultSet, Vdbe::rc, releaseMemArray(), sqlite3_snprintf(), sqlite3ErrStr(), sqlite3OpcodeName(), sqlite3SetString(), sqlite3VdbeMemGrow(), sqlite3VdbeMemSetStr(), SQLITE_BUSY, SQLITE_DONE, SQLITE_ERROR, SQLITE_INTEGER, SQLITE_INTERRUPT, SQLITE_MAGIC_BUSY, SQLITE_MISUSE, SQLITE_NOMEM, SQLITE_NULL, SQLITE_OK, SQLITE_ROW, SQLITE_TEXT, SQLITE_UTF8, Mem::type, Mem::u, sqlite3::u1, VDBE_MAGIC_RUN, Mem::z, and Vdbe::zErrMsg.
Referenced by sqlite3Step().
int sqlite3VdbeMakeLabel | ( | Vdbe * | p | ) |
Definition at line 210 of file vdbeaux.c.
References Vdbe::aLabel, Vdbe::db, Vdbe::magic, Vdbe::nLabel, Vdbe::nLabelAlloc, sqlite3DbReallocOrFree(), and VDBE_MAGIC_INIT.
Referenced by analyzeOneTable(), codeEqualityTerm(), generateOutputSubroutine(), generateSortTail(), multiSelect(), multiSelectOrderBy(), sqlite3CodeRowTrigger(), sqlite3DeleteFrom(), sqlite3ExprCodeTarget(), sqlite3ExprIfFalse(), sqlite3ExprIfTrue(), sqlite3GenerateConstraintChecks(), sqlite3Insert(), sqlite3Select(), sqlite3Update(), sqlite3WhereBegin(), and updateAccumulator().
void sqlite3VdbeMakeReady | ( | Vdbe * | p, | |
int | nVar, | |||
int | nMem, | |||
int | nCursor, | |||
int | isExplain | |||
) |
Definition at line 1003 of file vdbeaux.c.
References Vdbe::aMem, Vdbe::aOp, Vdbe::apArg, Vdbe::apCsr, Vdbe::aVar, Vdbe::azVar, Vdbe::cacheCtr, Mem::db, Vdbe::db, db, Vdbe::errorAction, Vdbe::explain, Mem::flags, Vdbe::magic, sqlite3::mallocFailed, MEM_Null, Vdbe::minWriteFileFormat, Vdbe::nChange, Vdbe::nCursor, Vdbe::nMem, Vdbe::nOp, Vdbe::nVar, OE_Abort, Vdbe::okVar, Vdbe::openedStatement, Vdbe::pc, Vdbe::rc, resolveP2Values(), sqlite3DbMallocZero(), SQLITE_OK, Vdbe::uniqueCnt, VDBE_MAGIC_INIT, and VDBE_MAGIC_RUN.
Referenced by sqlite3_blob_open(), sqlite3_reset(), and sqlite3FinishCoding().
int sqlite3VdbeRecordCompare | ( | int | nKey1, | |
const void * | pKey1, | |||
UnpackedRecord * | pPKey2 | |||
) |
Definition at line 2301 of file vdbeaux.c.
References UnpackedRecord::aMem, KeyInfo::aSortOrder, KeyInfo::db, Mem::db, KeyInfo::enc, Mem::enc, UnpackedRecord::flags, Mem::flags, getVarint32, KeyInfo::nField, UnpackedRecord::pKeyInfo, sqlite3MemCompare(), sqlite3VdbeMemRelease(), sqlite3VdbeSerialGet(), sqlite3VdbeSerialTypeLen(), UNPACKED_IGNORE_ROWID, UNPACKED_INCRKEY, UNPACKED_PREFIX_MATCH, and Mem::zMalloc.
Referenced by sqlite3BtreeMovetoUnpacked(), and sqlite3VdbeIdxKeyCompare().
UnpackedRecord* sqlite3VdbeRecordUnpack | ( | KeyInfo * | pKeyInfo, | |
int | nKey, | |||
const void * | pKey, | |||
UnpackedRecord * | pSpace, | |||
int | szSpace | |||
) |
Definition at line 2206 of file vdbeaux.c.
References UnpackedRecord::aMem, d(), Mem::db, KeyInfo::db, KeyInfo::enc, Mem::enc, Mem::flags, UnpackedRecord::flags, getVarint32, UnpackedRecord::nField, KeyInfo::nField, UnpackedRecord::pKeyInfo, sqlite3DbMallocRaw(), sqlite3VdbeSerialGet(), sqlite3VdbeSerialTypeLen(), UNPACKED_NEED_DESTROY, UNPACKED_NEED_FREE, and Mem::zMalloc.
Referenced by sqlite3BtreeMoveto(), and sqlite3VdbeExec().
int sqlite3VdbeReset | ( | Vdbe * | p | ) |
Definition at line 1702 of file vdbeaux.c.
References Vdbe::aOp, Cleanup(), Vdbe::db, sqlite3::errCode, sqlite3::errMask, Vdbe::expired, Vdbe::magic, Vdbe::nOp, VdbeOp::opcode, Vdbe::pc, sqlite3::pErr, Vdbe::rc, sqlite3BeginBenignMalloc(), sqlite3DbFree(), sqlite3EndBenignMalloc(), sqlite3Error(), sqlite3SafetyOff, sqlite3SafetyOn, sqlite3ValueSetStr(), sqlite3VdbeHalt(), SQLITE_OK, SQLITE_TRANSIENT, SQLITE_UTF8, VDBE_MAGIC_INIT, and Vdbe::zErrMsg.
Referenced by sqlite3_reset(), and sqlite3VdbeFinalize().
void sqlite3VdbeResetStepResult | ( | Vdbe * | p | ) |
Definition at line 1687 of file vdbeaux.c.
References Vdbe::rc, and SQLITE_OK.
Referenced by sqlite3Reprepare().
void sqlite3VdbeResolveLabel | ( | Vdbe * | p, | |
int | x | |||
) |
Definition at line 230 of file vdbeaux.c.
References Vdbe::aLabel, Vdbe::magic, Vdbe::nOp, and VDBE_MAGIC_INIT.
Referenced by analyzeOneTable(), generateOutputSubroutine(), generateSortTail(), multiSelect(), multiSelectOrderBy(), sqlite3CodeRowTrigger(), sqlite3DeleteFrom(), sqlite3ExprCodeTarget(), sqlite3ExprIfFalse(), sqlite3ExprIfTrue(), sqlite3GenerateConstraintChecks(), sqlite3Insert(), sqlite3Select(), sqlite3Update(), sqlite3WhereEnd(), and updateAccumulator().
Definition at line 2099 of file vdbeaux.c.
References Mem::flags, Mem::i, MEM_Blob, MEM_Ephem, MEM_Int, MEM_Null, MEM_Real, MEM_Str, Mem::n, Mem::r, sqlite3IsNaN(), swapMixedEndianFloat, Mem::u, Mem::xDel, and Mem::z.
Referenced by sqlite3VdbeExec(), sqlite3VdbeIdxRowid(), sqlite3VdbeRecordCompare(), and sqlite3VdbeRecordUnpack().
Definition at line 2050 of file vdbeaux.c.
References Mem::flags, Mem::i, MEM_Zero, Mem::n, Mem::r, sqlite3VdbeSerialType(), sqlite3VdbeSerialTypeLen(), swapMixedEndianFloat, Mem::u, and Mem::z.
Referenced by sqlite3VdbeExec().
Definition at line 1932 of file vdbeaux.c.
References Mem::db, Mem::flags, Mem::i, sqlite3::mallocFailed, MAX_6BYTE, MEM_Blob, MEM_Int, MEM_Null, MEM_Real, MEM_Str, MEM_Zero, Mem::n, and Mem::u.
Referenced by sqlite3VdbeExec(), and sqlite3VdbeSerialPut().
int sqlite3VdbeSerialTypeLen | ( | u32 | serial_type | ) |
Definition at line 1970 of file vdbeaux.c.
Referenced by sqlite3_blob_open(), sqlite3VdbeExec(), sqlite3VdbeIdxRowid(), sqlite3VdbeRecordCompare(), sqlite3VdbeRecordUnpack(), and sqlite3VdbeSerialPut().
void sqlite3VdbeSetChanges | ( | sqlite3 * | db, | |
int | nChange | |||
) |
Definition at line 2453 of file vdbeaux.c.
References sqlite3::mutex, sqlite3::nChange, sqlite3::nTotalChange, and sqlite3_mutex_held.
Referenced by sqlite3VdbeExec(), and sqlite3VdbeHalt().
int sqlite3VdbeSetColName | ( | Vdbe * | p, | |
int | idx, | |||
int | var, | |||
const char * | zName, | |||
void(*)(void *) | xDel | |||
) |
Definition at line 1214 of file vdbeaux.c.
References Vdbe::aColName, COLNAME_N, Vdbe::db, Mem::flags, sqlite3::mallocFailed, MEM_Term, Vdbe::nResColumn, sqlite3VdbeMemSetStr(), SQLITE_DYNAMIC, SQLITE_NOMEM, and SQLITE_UTF8.
Referenced by generateColumnNames(), generateColumnTypes(), returnSingleInt(), sqlite3DeleteFrom(), sqlite3Insert(), sqlite3Pragma(), sqlite3Prepare(), and sqlite3Update().
void sqlite3VdbeSetNumCols | ( | Vdbe * | p, | |
int | nResColumn | |||
) |
Definition at line 1186 of file vdbeaux.c.
References Vdbe::aColName, COLNAME_N, Mem::db, Vdbe::db, db, Mem::flags, MEM_Null, Vdbe::nResColumn, releaseMemArray(), sqlite3DbFree(), and sqlite3DbMallocZero().
Referenced by generateColumnNames(), returnSingleInt(), sqlite3DeleteFrom(), sqlite3Insert(), sqlite3Pragma(), sqlite3Prepare(), and sqlite3Update().
void sqlite3VdbeSetSql | ( | Vdbe * | p, | |
const char * | z, | |||
int | n | |||
) |
Definition at line 56 of file vdbeaux.c.
References Vdbe::db, sqlite3DbStrNDup(), and Vdbe::zSql.
Referenced by sqlite3Prepare().
Definition at line 72 of file vdbeaux.c.
References Vdbe::nSql, Vdbe::pNext, Vdbe::pPrev, and Vdbe::zSql.
Referenced by sqlite3Reprepare().
void sqlite3VdbeUsesBtree | ( | Vdbe * | p, | |
int | i | |||
) |
Definition at line 731 of file vdbeaux.c.
References sqlite3::aDb, Vdbe::aMutex, Vdbe::btreeMask, Vdbe::db, db, sqlite3::nDb, Db::pBt, and sqlite3BtreeMutexArrayInsert.
Referenced by sqlite3_blob_open(), sqlite3BeginTransaction(), sqlite3FindInIndex(), sqlite3FinishCoding(), sqlite3MinimumFileFormat(), sqlite3Pragma(), and sqlite3StartTable().
Definition at line 1242 of file vdbeaux.c.
References sqlite3::aDb, disable_simulated_io_errors, enable_simulated_io_errors, sqlite3::nDb, Db::pBt, sqlite3::pCommitArg, sqlite3::pVfs, sqlite3_randomness(), sqlite3BeginBenignMalloc(), sqlite3BtreeCommitPhaseOne(), sqlite3BtreeCommitPhaseTwo(), sqlite3BtreeGetDirname(), sqlite3BtreeGetFilename(), sqlite3BtreeGetJournalname(), sqlite3BtreeIsInTrans(), sqlite3BtreeSyncDisabled(), sqlite3DbFree(), sqlite3EndBenignMalloc(), sqlite3MPrintf(), sqlite3OsAccess(), sqlite3OsCloseFree(), sqlite3OsDelete(), sqlite3OsDeviceCharacteristics(), sqlite3OsOpenMalloc(), sqlite3OsSync(), sqlite3OsWrite(), sqlite3SafetyOff, sqlite3SafetyOn, sqlite3VtabCommit(), sqlite3VtabSync(), SQLITE_ACCESS_EXISTS, SQLITE_CONSTRAINT, SQLITE_IOCAP_SEQUENTIAL, SQLITE_NOMEM, SQLITE_OK, SQLITE_OPEN_CREATE, SQLITE_OPEN_EXCLUSIVE, SQLITE_OPEN_MASTER_JOURNAL, SQLITE_OPEN_READWRITE, SQLITE_SYNC_NORMAL, sqlite3::xCommitCallback, and Vdbe::zErrMsg.
Referenced by sqlite3VdbeHalt().
ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:50:02 2011 by Doxygen 1.6.1