vdbe.h File Reference

Go to the source code of this file.

Classes

struct  VdbeOp
struct  VdbeOpList

Defines

#define P4_NOTUSED   0
#define P4_DYNAMIC   (-1)
#define P4_STATIC   (-2)
#define P4_COLLSEQ   (-4)
#define P4_FUNCDEF   (-5)
#define P4_KEYINFO   (-6)
#define P4_VDBEFUNC   (-7)
#define P4_MEM   (-8)
#define P4_TRANSIENT   (-9)
#define P4_VTAB   (-10)
#define P4_MPRINTF   (-11)
#define P4_REAL   (-12)
#define P4_INT64   (-13)
#define P4_INT32   (-14)
#define P4_INTARRAY   (-15)
#define P4_KEYINFO_HANDOFF   (-16)
#define P4_KEYINFO_STATIC   (-17)
#define COLNAME_NAME   0
#define COLNAME_DECLTYPE   1
#define COLNAME_DATABASE   2
#define COLNAME_TABLE   3
#define COLNAME_COLUMN   4
#define COLNAME_N   2
#define ADDR(X)   (-1-(X))
#define VdbeComment(X)
#define VdbeNoopComment(X)

Typedefs

typedef struct Vdbe Vdbe
typedef struct VdbeFunc VdbeFunc
typedef struct Mem Mem
typedef struct VdbeOp VdbeOp
typedef struct VdbeOpList VdbeOpList

Functions

Vdbesqlite3VdbeCreate (sqlite3 *)
int sqlite3VdbeAddOp0 (Vdbe *, int)
int sqlite3VdbeAddOp1 (Vdbe *, int, int)
int sqlite3VdbeAddOp2 (Vdbe *, int, int, int)
int sqlite3VdbeAddOp3 (Vdbe *, int, int, int, int)
int sqlite3VdbeAddOp4 (Vdbe *, int, int, int, int, const char *zP4, int)
int sqlite3VdbeAddOpList (Vdbe *, int nOp, VdbeOpList const *aOp)
void sqlite3VdbeChangeP1 (Vdbe *, int addr, int P1)
void sqlite3VdbeChangeP2 (Vdbe *, int addr, int P2)
void sqlite3VdbeChangeP3 (Vdbe *, int addr, int P3)
void sqlite3VdbeChangeP5 (Vdbe *, u8 P5)
void sqlite3VdbeJumpHere (Vdbe *, int addr)
void sqlite3VdbeChangeToNoop (Vdbe *, int addr, int N)
void sqlite3VdbeChangeP4 (Vdbe *, int addr, const char *zP4, int N)
void sqlite3VdbeUsesBtree (Vdbe *, int)
VdbeOpsqlite3VdbeGetOp (Vdbe *, int)
int sqlite3VdbeMakeLabel (Vdbe *)
void sqlite3VdbeDelete (Vdbe *)
void sqlite3VdbeMakeReady (Vdbe *, int, int, int, int)
int sqlite3VdbeFinalize (Vdbe *)
void sqlite3VdbeResolveLabel (Vdbe *, int)
int sqlite3VdbeCurrentAddr (Vdbe *)
void sqlite3VdbeResetStepResult (Vdbe *)
int sqlite3VdbeReset (Vdbe *)
void sqlite3VdbeSetNumCols (Vdbe *, int)
int sqlite3VdbeSetColName (Vdbe *, int, int, const char *, void(*)(void *))
void sqlite3VdbeCountChanges (Vdbe *)
sqlite3sqlite3VdbeDb (Vdbe *)
void sqlite3VdbeSetSql (Vdbe *, const char *z, int n)
void sqlite3VdbeSwap (Vdbe *, Vdbe *)
UnpackedRecordsqlite3VdbeRecordUnpack (KeyInfo *, int, const void *, UnpackedRecord *, int)
void sqlite3VdbeDeleteUnpackedRecord (UnpackedRecord *)
int sqlite3VdbeRecordCompare (int, const void *, UnpackedRecord *)

Define Documentation

#define ADDR (  )     (-1-(X))

Definition at line 141 of file vdbe.h.

Referenced by sqlite3DropTriggerPtr(), and sqlite3VdbeAddOpList().

#define COLNAME_COLUMN   4

Definition at line 124 of file vdbe.h.

Referenced by generateColumnTypes().

#define COLNAME_DATABASE   2

Definition at line 122 of file vdbe.h.

Referenced by generateColumnTypes().

#define COLNAME_DECLTYPE   1

Definition at line 121 of file vdbe.h.

Referenced by generateColumnTypes(), sqlite3_column_decltype(), and sqlite3_column_decltype16().

#define COLNAME_N   2

Definition at line 131 of file vdbe.h.

Referenced by sqlite3VdbeDelete(), sqlite3VdbeSetColName(), and sqlite3VdbeSetNumCols().

#define COLNAME_NAME   0
#define COLNAME_TABLE   3

Definition at line 123 of file vdbe.h.

Referenced by generateColumnTypes().

#define P4_COLLSEQ   (-4)
#define P4_DYNAMIC   (-1)
#define P4_FUNCDEF   (-5)
#define P4_INT32   (-14)
#define P4_INT64   (-13)

Definition at line 102 of file vdbe.h.

Referenced by codeInteger(), displayP4(), and freeP4().

#define P4_INTARRAY   (-15)

Definition at line 104 of file vdbe.h.

Referenced by displayP4(), freeP4(), multiSelectOrderBy(), and sqlite3VdbeExec().

#define P4_KEYINFO   (-6)
#define P4_KEYINFO_HANDOFF   (-16)
#define P4_KEYINFO_STATIC   (-17)

Definition at line 114 of file vdbe.h.

Referenced by displayP4(), and multiSelectOrderBy().

#define P4_MEM   (-8)

Definition at line 97 of file vdbe.h.

Referenced by displayP4(), freeP4(), sqlite3ColumnDefault(), and sqlite3VdbeExec().

#define P4_MPRINTF   (-11)

Definition at line 100 of file vdbe.h.

Referenced by freeP4(), and sqlite3WhereBegin().

#define P4_NOTUSED   0

Definition at line 90 of file vdbe.h.

Referenced by sqlite3VdbeAddOp3(), sqlite3VdbeAddOpList(), and sqlite3VdbeChangeP4().

#define P4_REAL   (-12)

Definition at line 101 of file vdbe.h.

Referenced by codeReal(), displayP4(), and freeP4().

#define P4_STATIC   (-2)
#define P4_TRANSIENT   (-9)

Definition at line 98 of file vdbe.h.

#define P4_VDBEFUNC   (-7)

Definition at line 96 of file vdbe.h.

Referenced by freeP4(), and sqlite3VdbeExec().

#define P4_VTAB   (-10)
#define VdbeComment (  ) 
#define VdbeNoopComment (  ) 

Definition at line 203 of file vdbe.h.

Referenced by multiSelectOrderBy(), and sqlite3ExprCodeTarget().


Typedef Documentation

typedef struct Mem Mem

Definition at line 36 of file vdbe.h.

typedef struct Vdbe Vdbe

Definition at line 29 of file vdbe.h.

typedef struct VdbeFunc VdbeFunc

Definition at line 35 of file vdbe.h.

typedef struct VdbeOp VdbeOp

Definition at line 73 of file vdbe.h.

typedef struct VdbeOpList VdbeOpList

Definition at line 85 of file vdbe.h.


Function Documentation

int sqlite3VdbeAddOp0 ( Vdbe ,
int   
)
int sqlite3VdbeAddOp1 ( Vdbe ,
int  ,
int   
)
int sqlite3VdbeAddOp2 ( Vdbe ,
int  ,
int  ,
int   
)
int sqlite3VdbeAddOp3 ( Vdbe ,
int  ,
int  ,
int  ,
int   
)
int sqlite3VdbeAddOp4 ( Vdbe ,
int  ,
int  ,
int  ,
int  ,
const char *  zP4,
int   
)
int sqlite3VdbeAddOpList ( Vdbe ,
int  nOp,
VdbeOpList const *  aOp 
)
void sqlite3VdbeChangeP1 ( Vdbe ,
int  addr,
int  P1 
)

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 ,
int  addr,
int  P2 
)
void sqlite3VdbeChangeP3 ( Vdbe ,
int  addr,
int  P3 
)

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 ,
int  addr,
const char *  zP4,
int  N 
)
void sqlite3VdbeChangeP5 ( Vdbe ,
u8  P5 
)
void sqlite3VdbeChangeToNoop ( Vdbe ,
int  addr,
int  N 
)
void sqlite3VdbeCountChanges ( Vdbe  ) 

Definition at line 2463 of file vdbeaux.c.

References Vdbe::changeCntOn.

Referenced by sqlite3DeleteFrom(), sqlite3Insert(), and sqlite3Update().

Vdbe* sqlite3VdbeCreate ( sqlite3  ) 
int sqlite3VdbeCurrentAddr ( Vdbe  ) 
sqlite3* sqlite3VdbeDb ( Vdbe  ) 
void sqlite3VdbeDelete ( Vdbe  ) 
void sqlite3VdbeDeleteUnpackedRecord ( UnpackedRecord  ) 
int sqlite3VdbeFinalize ( Vdbe  ) 
VdbeOp* sqlite3VdbeGetOp ( Vdbe ,
int   
)
void sqlite3VdbeJumpHere ( Vdbe ,
int  addr 
)
int sqlite3VdbeMakeLabel ( Vdbe  ) 
void sqlite3VdbeMakeReady ( Vdbe ,
int  ,
int  ,
int  ,
int   
)
int sqlite3VdbeRecordCompare ( int  ,
const void *  ,
UnpackedRecord  
)
UnpackedRecord* sqlite3VdbeRecordUnpack ( KeyInfo ,
int  ,
const void *  ,
UnpackedRecord ,
int   
)
int sqlite3VdbeReset ( Vdbe  ) 
void sqlite3VdbeResetStepResult ( Vdbe  ) 

Definition at line 1687 of file vdbeaux.c.

References Vdbe::rc, and SQLITE_OK.

Referenced by sqlite3Reprepare().

void sqlite3VdbeResolveLabel ( Vdbe ,
int   
)
int sqlite3VdbeSetColName ( Vdbe ,
int  ,
int  ,
const char *  ,
void(*)(void *)   
)
void sqlite3VdbeSetNumCols ( Vdbe ,
int   
)
void sqlite3VdbeSetSql ( Vdbe ,
const char *  z,
int  n 
)

Definition at line 56 of file vdbeaux.c.

References Vdbe::db, sqlite3DbStrNDup(), and Vdbe::zSql.

Referenced by sqlite3Prepare().

void sqlite3VdbeSwap ( Vdbe ,
Vdbe  
)

Definition at line 72 of file vdbeaux.c.

References Vdbe::nSql, Vdbe::pNext, Vdbe::pPrev, and Vdbe::zSql.

Referenced by sqlite3Reprepare().

void sqlite3VdbeUsesBtree ( Vdbe ,
int   
)

ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:50:02 2011 by Doxygen 1.6.1