diff options
Diffstat (limited to 'ext/sqlite/libsqlite/src/vdbe.h')
-rw-r--r-- | ext/sqlite/libsqlite/src/vdbe.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/ext/sqlite/libsqlite/src/vdbe.h b/ext/sqlite/libsqlite/src/vdbe.h index d56fe49014..6428598075 100644 --- a/ext/sqlite/libsqlite/src/vdbe.h +++ b/ext/sqlite/libsqlite/src/vdbe.h @@ -34,7 +34,7 @@ typedef struct Vdbe Vdbe; ** as an instance of the following structure: */ struct VdbeOp { - int opcode; /* What operation to perform */ + u8 opcode; /* What operation to perform */ int p1; /* First operand */ int p2; /* Second parameter (often the jump destination) */ char *p3; /* Third parameter */ @@ -47,6 +47,18 @@ struct VdbeOp { typedef struct VdbeOp VdbeOp; /* +** A smaller version of VdbeOp used for the VdbeAddOpList() function because +** it takes up less space. +*/ +struct VdbeOpList { + u8 opcode; /* What operation to perform */ + signed char p1; /* First operand */ + short int p2; /* Second parameter (often the jump destination) */ + char *p3; /* Third parameter */ +}; +typedef struct VdbeOpList VdbeOpList; + +/* ** Allowed values of VdbeOp.p3type */ #define P3_NOTUSED 0 /* The P3 parameter is not used */ @@ -75,7 +87,9 @@ typedef struct VdbeOp VdbeOp; Vdbe *sqliteVdbeCreate(sqlite*); void sqliteVdbeCreateCallback(Vdbe*, int*); int sqliteVdbeAddOp(Vdbe*,int,int,int); -int sqliteVdbeAddOpList(Vdbe*, int nOp, VdbeOp const *aOp); +int sqliteVdbeOp3(Vdbe*,int,int,int,const char *zP3,int); +int sqliteVdbeCode(Vdbe*,...); +int sqliteVdbeAddOpList(Vdbe*, int nOp, VdbeOpList const *aOp); void sqliteVdbeChangeP1(Vdbe*, int addr, int P1); void sqliteVdbeChangeP2(Vdbe*, int addr, int P2); void sqliteVdbeChangeP3(Vdbe*, int addr, const char *zP1, int N); @@ -84,7 +98,7 @@ int sqliteVdbeFindOp(Vdbe*, int, int); VdbeOp *sqliteVdbeGetOp(Vdbe*, int); int sqliteVdbeMakeLabel(Vdbe*); void sqliteVdbeDelete(Vdbe*); -void sqliteVdbeMakeReady(Vdbe*,int,sqlite_callback,void*,int); +void sqliteVdbeMakeReady(Vdbe*,int,int); int sqliteVdbeExec(Vdbe*); int sqliteVdbeList(Vdbe*); int sqliteVdbeFinalize(Vdbe*,char**); |