Home | History | Annotate | Download | only in dist

Lines Matching refs:code

3 ** version 3.6.22.  By combining all the individual C code files into this 
4 ** single large file, the entire code can be compiled as a one translation
15 ** of the embedded sqlite3.h header file.) Additional code files may be needed
17 ** language. The code for the "sqlite3" command-line shell is also in a
18 ** separate file. This file contains only code for the core SQLite library.
32 ** The author disclaims copyright to this source code. In place of
52 ** system #includes. Hence, this block of code must be the very first
53 ** code in all source files.
57 ** on a recent machine (ex: Red Hat 7.2) but you want your code to work
60 ** in Red Hat 6.0, so the code won't work. Hence, for maximum binary
86 ** The author disclaims copyright to this source code. In place of
157 ** The code generator for compound SELECT statements does one
288 #pragma warn -rch /* unreachable code */
428 ** Setting NDEBUG makes the code smaller and run faster. So the following
447 ** where multiple cases go to the same block of code, testcase()
460 ** other bits of code that are needed to support the arguments
470 ** Sometimes we need a small amount of code such as a variable initialization
471 ** to setup for a later assert() statement. We do not want this code to
473 ** used to contain that setup code. The "VVA" acronym stands for
475 ** code within VVA_ONLY() will only run during verification processes.
486 ** expressions could be omitted from the code completely. But they
488 ** of SQLite to unexpected behavior - to make the code "self-healing"
492 ** In other words, ALWAYS and NEVER are added for defensive code.
495 ** be true and false so that the unreachable code then specify will
496 ** not be counted as untested code.
513 ** use these hints to generate better code, sometimes.
528 ** The author disclaims copyright to this source code. In place of
622 ** Since version 3.6.18, SQLite source code has been stored in the
677 ** SQLite was compiled mutexing code omitted due to the
802 ** without having to use a lot of C code.
867 ** KEYWORDS: SQLITE_OK {error code} {error codes}
868 ** KEYWORDS: {result code} {result codes}
870 ** Many SQLite functions return an integer result code from the set shown
911 ** KEYWORDS: {extended error code} {extended error codes}
912 ** KEYWORDS: {extended result code} {extended result codes}
929 ** The SQLITE_OK result code will never be extended. It will always
1214 ** searches the list. Neither the application code nor the VFS
1398 ** as a mutex) it returns an [error code] other than [SQLITE_OK].
1435 ** must return [SQLITE_OK] on success and some other [error code] upon
1470 ** then this routine returns a non-zero [error code].
1487 ** configuration verb - an integer code that indicates what
1589 ** should check the return code from [sqlite3_config()] to make sure that
1591 ** non-zero [error code] if a discontinued or unsupported configuration option
1796 ** should check the return code from [sqlite3_db_config()] to make sure that
1798 ** non-zero [error code] if a discontinued or unsupported configuration option
2077 ** code is promoted from the relatively benign [SQLITE_BUSY] to
2078 ** the more severe [SQLITE_IOERR_BLOCKED]. ^This error code promotion
2282 ** The code above will render a correct SQL statement in the zSQL
2438 ** to the callback is an integer [SQLITE_COPY | action code] that specifies
2443 ** ^If the action code is [SQLITE_READ]
2450 ** ^If the action code is [SQLITE_DELETE] and the callback returns
2514 ** second parameter to the callback is an integer code that specifies
2518 ** These action code values signify what kind of operation is to be
2526 ** top-level SQL code.
2619 ** [SQLITE_OK] is returned. Otherwise an [error code] is returned.)^ ^The
2715 ** ^The sqlite3_errcode() interface returns the numeric [result code] or
2716 ** [extended result code] for the most recent failed sqlite3_* API call
2721 ** [extended result code] even when extended result codes are
2743 ** error code and message may or may not be set.
2877 ** To execute an SQL query, it must first be compiled into a byte-code
2913 ** otherwise an [error code] is returned.
2938 ** [sqlite3_step()] would only return a generic [SQLITE_ERROR] result code
3015 ** for maximum code portability it is recommended that applications
3116 ** [error code] if anything goes wrong.
3363 ** ^With the legacy interface, a more specific error code (for example,
3367 ** the more specific error code is returned directly by sqlite3_step().
3377 ** API always returns a generic error code, [SQLITE_ERROR], following any
3458 ** [SQLITE_INTEGER | datatype code] for the initial data type
3601 ** [error code] or [extended error code] is returned.
3609 ** [error code] returned will be [SQLITE_ABORT].
3632 ** [sqlite3_reset(S)] returns an appropriate [error code].
3758 ** backwards compatibility with older code, these functions continue
4002 ** ^The sqlite3_result_error_code() function changes the error code
4004 ** the error code is SQLITE_ERROR. ^A subsequent call to sqlite3_result_error()
4005 ** or sqlite3_result_error16() resets the error code to SQLITE_ERROR.
4192 ** The code to implement this API is not available in the public release
4205 ** The code to implement this API is not available in the public release
4430 ** successfully. An [error code] is returned otherwise.)^
4522 ** ^If the specified table is actually a view, an [error code] is returned.
4540 ** cannot be found, an [error code] is returned and an error message left
4771 unsigned char omit; /* Do not code a test for this constraint */
4953 ** to *ppBlob. Otherwise an [error code] is returned and *ppBlob is set
4955 ** ^This function sets the [database connection] error code and message
4967 ** a expired BLOB handle fail with an return code of [SQLITE_ABORT].
5012 ** an error code, the BLOB is still closed.)^
5048 ** error code of [SQLITE_ABORT].
5051 ** Otherwise, an [error code] or an [extended error code] is returned.)^
5082 ** error code of [SQLITE_ABORT]. ^Writes to the BLOB that occurred
5089 ** Otherwise, an [error code] or an [extended error code] is returned.)^
5138 ** use by SQLite, code that links against SQLite is
5141 ** The SQLite source code contains multiple implementations
5415 ** code is not remembered and will not be recalled by [sqlite3_errcode()]
5430 ** purposes. ^The first parameter is an operation code that determines
5447 ** These constants are the valid operation code parameters used
5476 ** highwater marks. ^The first argument is an integer code for
5489 ** non-zero [error code] on failure.
5618 ** might be discontinued. Applications should check the return code from
5620 ** The [sqlite3_db_status()] interface will return a non-zero error code
5648 ** is an integer code for a specific [SQLITE_STMTSTATUS_SORT | counter]
5898 ** returned and an error code and error message are store3d in the
5900 ** ^The error code and message for the failed call to sqlite3_backup_init()
5919 ** then an [error code] is returned. ^As well as [SQLITE_OK] and
5922 ** [SQLITE_IOERR_ACCESS | SQLITE_IOERR_XXX] extended error code.
5979 ** sqlite3_backup_finish() returns the corresponding [error code].
6012 ** and so no error code is reported, but the operations may malfunction
6150 ** One way around this problem is to check the extended error code returned
6152 ** extended error code is set to SQLITE_LOCKED_SHAREDCACHE. Otherwise, in
6153 ** the special "DROP TABLE/INDEX" case, the extended error code is just
6215 ** The author disclaims copyright to this source code. In place of
6235 ** code should not attempt to access or modify the fields of this structure
6501 ** to omit code used by TEMP tables without messy #ifndef statements.
6666 ** macro is used only within assert() to verify that the code gets
6731 ** throughout the SQLite code must become constants instead. The SQLITE_WSD
6826 ** The author disclaims copyright to this source code. In place of
6835 ** subsystem. See comments in the source code for a detailed description
7072 ** The author disclaims copyright to this source code. In place of
7488 ** The author disclaims copyright to this source code. In place of
7566 ** that make up the Pager sub-system API. See source code comments for
7658 ** The author disclaims copyright to this source code. In place of
7819 ** The author disclaims copyright to this source code. In place of
7828 ** This header file (together with is companion C source-code file
7949 ** anybody smart enough to figure out the code is also likely smart
8095 ** The author disclaims copyright to this source code. In place of
8106 ** to all source files. We break it out in an effort to keep the code
8116 ** Figure out what version of the code to use. The choices are
8305 ** store the most recent error code and, if applicable, string. The
8315 int errCode; /* Most recent error code (SQLITE_*) */
8395 ** mutex, not by sqlite3.mutex. They are used by code in notify.c.
8843 ** the operation in progress stops and returns an error code. But prior
8992 ** code for a SELECT that contains aggregate functions.
8997 ** code for that node.
9056 ** code representing the ">=" operator. This same integer code is reused
9186 ** so as not to burden production code.
9419 #define WHERE_ONETABLE_ONLY 0x0080 /* Only code the 1st table in pTabList */
9429 Parse *pParse; /* Parsing and code generating context */
9479 ** needed to generate code for a single SELECT statement.
9561 ** During code generation of statements that do inserts into AUTOINCREMENT
9564 ** the code generator needs. We have to keep per-table autoincrement
9614 ** The structure is divided into two parts. When the parser and code
9627 int rc; /* Return code from execution */
9633 u8 nested; /* Number of nested calls to the parser/code generator */
9706 Table *pZombieTab; /* List of Table objects to delete after code gen */
9862 int rc; /* Result code stored here */
9925 ** Return code from the parse-tree walking primitives and their
10024 ** The alloca() routine never returns NULL. This will cause code paths
10319 ** file. Code should use the MACRO forms below, as the Varint32 versions
10538 ** The interface to the code in fault.c used for identifying "benign"
10615 ** The author disclaims copyright to this source code. In place of
10797 ** a different position in the file. This allows code that has to
10822 ** The author disclaims copyright to this source code. In place of
10944 ** The author disclaims copyright to this source code. In place of
10957 ** All other code has file scope.
12050 ** The author disclaims copyright to this source code. In place of
12059 ** This file contains OS interface code that is common to all
12349 ** The author disclaims copyright to this source code. In place of
12358 ** This file contains code to support the concept of "benign"
12364 ** abandons the current operation and returns an error code (usually
12414 ** This (sqlite3EndBenignMalloc()) is called by SQLite code to indicate that
12438 ** The author disclaims copyright to this source code. In place of
12499 ** The author disclaims copyright to this source code. In place of
12652 ** The author disclaims copyright to this source code. In place of
12695 ** The application code sees only a pointer to the allocation. We have
12982 ** higher level code is using pointer to the old allocation, it is
13121 ** The author disclaims copyright to this source code. In place of
13335 ** will already be held (obtained by code in malloc.c) if
13810 ** The author disclaims copyright to this source code. In place of
13992 ** will already be held (obtained by code in malloc.c) if
14392 ** The author disclaims copyright to this source code. In place of
14402 ** This file contains code that is common across all mutex implementations.
14544 ** The author disclaims copyright to this source code. In place of
14730 ** The author disclaims copyright to this source code. In place of
14742 ** The code in this file is only used if SQLITE_MUTEX_OS2 is defined.
15003 ** The author disclaims copyright to this source code. In place of
15015 ** The code in this file is only used if we are compiling threadsafe
15332 ** The author disclaims copyright to this source code. In place of
15344 ** The code in this file is only used if we are compiling multithreaded
15616 ** The author disclaims copyright to this source code. In place of
15809 ** Deprecated external interface. Internal/core SQLite code
16159 ** code that do things like this:
16305 ** then the connection error-code (the value returned by sqlite3_errcode())
16325 ** The "printf" code that follows dates from the 1980's. It is in
16413 char fmttype; /* The format field code letter */
16473 ** Return the ascii code for the leading digit of *val, then
17336 ** The author disclaims copyright to this source code. In place of
17344 ** This file contains code to implement a pseudo-random number
17375 ** randomness any more. But we will leave this code in all the same.
17483 ** The author disclaims copyright to this source code. In place of
17520 ** The author disclaims copyright to this source code. In place of
17530 ** source code file "vdbe.c". When that file became too big (over
17729 ** expression argument once and reused the compiled code for multiple
17759 int isError; /* Error code returned by the function. */
17765 ** is part of a small set. Sets are used to implement code like
18460 ** The author disclaims copyright to this source code. In place of
18549 ** Set the most recent error code and error string for the sqlite
18550 ** handle "db". The error code is set to "err_code".
19073 ** is provided which inlines the single-byte case. All code should use
19259 ** single-byte case. All code should use the MACRO version as
19332 /* For following code (kept for historical record only) shows an
19333 ** unrolling for the 3- and 4-byte varint cases. This code is
19511 ** The author disclaims copyright to this source code. In place of
19946 ** The author disclaims copyright to this source code. In place of
19955 ** This file contains code that is specific to OS/2.
19976 ** the OS driver, but the code to deal with those failure would not
19979 ** code. Better to leave the code out, we think.
19995 ** Include code that is common to all os_*.c files
20002 ** The author disclaims copyright to this source code. In place of
20011 ** This file contains macros and a little bit of code that is common to
20024 ** switch. The following code should catch this problem at compile-time.
20058 ** hwtime.h contains inline assembler code for implementing
20066 ** The author disclaims copyright to this source code. In place of
20075 ** This file contains inline asm code for retrieving "high-performance"
20165 ** of code will give us the ability to simulate a disk I/O error. This
20177 #define SimulateIOError(CODE) \
20180 { local_ioerr(); CODE; }
20186 #define SimulateDiskfullError(CODE) \
20192 CODE; \
20293 ** or some other error code on failure.
20449 int rc = SQLITE_OK; /* Return code from subroutines */
20545 OSTRACE2( "OS/2 error-code = %d\n", res );
20565 ** return the appropriate result code.
20604 APIRET rcu = NO_ERROR; /* return code for unlocking */
20701 ** SQLite code assumes this function cannot fail. It also assumes that
20824 ** The next block of code implements the VFS methods.
21093 ** A no-op since the error code is returned on the DosLoadModule call.
21292 ** The author disclaims copyright to this source code. In place of
21312 ** KEEP THE STRUCTURE OF THIS FILE INTACT. New code should be placed
21380 ** on a recent machine (ex: RedHat 7.2) but you want your code to work
21383 ** in RedHat 6.0, so the code won't work. Hence, for maximum binary
21449 ** Only set the lastErrno if the error code is a real error and not
21450 ** a normal expected return code of SQLITE_BUSY or SQLITE_OK
21520 ** Include code that is common to all os_*.c files
21527 ** The author disclaims copyright to this source code. In place of
21536 ** This file contains macros and a little bit of code that is common to
21549 ** switch. The following code should catch this problem at compile-time.
21583 ** hwtime.h contains inline assembler code for implementing
21591 ** The author disclaims copyright to this source code. In place of
21600 ** This file contains inline asm code for retrieving "high-performance"
21690 ** of code will give us the ability to simulate a disk I/O error. This
21702 #define SimulateIOError(CODE) \
21705 { local_ioerr(); CODE; }
21711 #define SimulateDiskfullError(CODE) \
21717 CODE; \
21832 ** command-line option on the compiler. This code is normally
21888 ** This routine translates a standard POSIX errno code into something
22306 ** it a global so that the test code can change its value in order to verify
22456 ** Return an appropriate error code.
22463 int rc; /* System call return code */
22676 ** code into *pErrcode.
23037 int rc = SQLITE_OK; /* Return code from this interface */
23039 int tErrno; /* Error code from system call errors */
23852 ** Third-party implementations of AFP are available. But this code here
24220 ** The code above is the AFP lock implementation. The code is specific
24358 ** or some other error code on failure.
24479 ** up the real code with the UNUSED_PARAMETER() macros.
24712 ** SQLite code assumes this function cannot fail. It also assumes that
25368 int rc = SQLITE_OK; /* Function Return Code */
26400 int code = errno;
26402 buf.st_mode, code, strerror(code));
26407 int code = errno;
26409 err, code, strerror(code));
26515 int code = errno;
26517 cmode, code, strerror(code));
26522 int code = errno;
26524 err, code, strerror(code));
26606 int rc; /* Subroutine return code */
27098 ** The author disclaims copyright to this source code. In place of
27107 ** This file contains code that is specific to windows.
27127 ** the OS driver, but the code to deal with those failure would not
27130 ** code. Better to leave the code out, we think.
27152 ** Include code that is common to all os_*.c files
27159 ** The author disclaims copyright to this source code. In place of
27168 ** This file contains macros and a little bit of code that is common to
27181 ** switch. The following code should catch this problem at compile-time.
27215 ** hwtime.h contains inline assembler code for implementing
27223 ** The author disclaims copyright to this source code. In place of
27232 ** This file contains inline asm code for retrieving "high-performance"
27322 ** of code will give us the ability to simulate a disk I/O error. This
27334 CODE) \
27337 { local_ioerr(); CODE; }
27343 #define SimulateDiskfullError(CODE) \
27349 CODE; \
27393 ** with some code of our own.
27607 ** This section contains code for WinCE only.
27635 /* This will never be called, but defined to make the code compile */
27918 code for wince
28014 ** or some other error code on failure.
28230 int rc = SQLITE_OK; /* Return code from subroutines */
28320 OSTRACE2("error-code = %d\n", error);
28333 ** return the appropriate result code.
28435 ** SQLite code assumes this function cannot fail. It also assumes that
28476 ** The next block of code implements the VFS methods.
29243 ** The author disclaims copyright to this source code. In place of
29392 ** Set the i-th bit. Return 0 on success and an error code if
29542 ** This routine runs an extensive test of the Bitvec code.
29653 ** The author disclaims copyright to this source code. In place of
29682 ** Some of the assert() macros in this code are too expensive to run
30231 ** The author disclaims copyright to this source code. In place of
30319 ** All code in this file should access the global structure above via the
31012 ** The author disclaims copyright to this source code. In place of
31436 ** The author disclaims copyright to this source code. In place of
31583 ** SQLITE_FULL return code is slightly different. It persists only until the
31807 ** out code that would never execute.
31870 ** error code is something goes wrong.
31890 ** on success or an error code is something goes wrong.
32028 ** error code is returned.
32031 int rc; /* Return code */
32113 ** If an IO error occurs, abandon processing and return the IO error code.
32117 int rc = SQLITE_OK; /* Return code */
32166 int rc = SQLITE_OK; /* Return code */
32280 ** cannot be read from the journal file an error code is returned.
32289 int rc; /* Return code */
32307 ** SQLITE_DONE. If an IO error occurs, return an error code. Otherwise,
32322 ** of the transaction. Return an error code if anything goes wrong.
32403 int rc; /* Return code */
32433 ** an error occurs, return the error code to the caller.
32449 ** dangerous because the code to rollback a hot-journal file
32519 int rc = SQLITE_OK; /* Result code */
32544 int rc; /* Return code */
32570 ** cache can be discarded and the error code safely cleared.
32588 ** structure, the second the error-code about to be returned by a pager
32595 ** error code.
32693 ** database then the IO error code is returned to the user. If the
32694 ** operation to finalize the journal file fails, then the code still
32696 ** unlock operation fails as well, then the first error code related
32701 int rc = SQLITE_OK; /* Error code from journal finalization operation */
32702 int rc2 = SQLITE_OK; /* Error code from db file unlock operation */
32829 ** to the database file, then the IO error code is returned. If data
32868 ** file. Return an error code to the caller if an IO error occurs.
33061 ** If an IO error within this function, an error code is returned. This
33073 int rc; /* Return code */
33181 ** the database file, return the error code to the caller.
33285 ** and an error code is returned.
33300 int rc; /* Result code of a subroutine */
33414 ** code. This will cause the pager to enter the error state
33515 int rc = SQLITE_OK; /* Return code */
33663 ** or some other error code if we fail. The OS will automatically
33679 int rc; /* Return code */
33742 ** is a no-op. The value returned is the error state error code (i.e.
33830 ** and generate no code.
33859 ** the error code is returned to the caller and the contents of the
33883 ** error state error code is returned and *pnPage left unchanged. Or,
33885 ** the query attempt returns an IO error, the IO error code is returned
33894 /* If the pager is already in the error state, return the error code. */
33949 ** Return SQLITE_OK on success and an error code if we cannot obtain
33954 int rc; /* Return code */
34127 ** Or, in pseudo-code:
34142 ** error is encountered, then the IO error code is returned to the caller.
34148 int rc; /* Return code */
34265 ** occurs, an IO error code is returned. Or, if the EXCLUSIVE lock cannot
34270 int rc; /* Return code */
34308 ** make the file smaller (presumably by auto-vacuum code). Do not write
34366 ** error code if the attempt to write to the sub-journal fails, or
34411 ** page clean, the IO error code is returned. If the page cannot be
34528 ** and error code returned. This function may return SQLITE_NOMEM
34543 int rc = SQLITE_OK; /* Return code */
34813 ** code is returned and the value of *pExists is undefined.
34817 int rc; /* Return code */
34910 int rc; /* Return code */
34966 ** the error state error code is returned. It is permitted to read the
34971 ** file or rolling back a journal file, the IO error code is returned.
34974 int rc = SQLITE_OK; /* Return code */
35031 ** this point in the code and fail to obtain its own EXCLUSIVE lock
35207 ** an appropriate error code is returned and *ppPage is set to NULL.
35372 ** An SQLITE_IOERR_XXX error code is returned if a call to
35407 ** an IO error code if opening or writing the journal file fails.
35410 int rc = SQLITE_OK; /* Return code */
35720 ** If an error occurs, SQLITE_NOMEM or an IO error code is returned
35937 ** function returns SQLITE_OK. Otherwise, an IO error code is returned.
35940 int rc; /* Return code */
35981 int rc = SQLITE_OK; /* Return code */
36144 ** If an error occurs, an IO error code is returned and the pager
36148 int rc = SQLITE_OK; /* Return code */
36152 ** called, just return the same error code without doing anything. */
36204 ** of either, the error state error code is returned to the caller
36210 ** error code encountered.
36219 ** otherwise enter the error state and return the error code from the
36229 int rc = SQLITE_OK; /* Return code */
36320 ** occurs while opening the sub-journal file, then an IO error code is
36324 int rc = SQLITE_OK; /* Return code */
36401 ** or an IO error code if an IO error occurs while rolling back a
36534 ** This function may return SQLITE_NOMEM or an IO error code if an error
36540 int rc; /* Return code */
36781 ** The author disclaims copyright to this source code. In place of
36790 ** This file contains code used to implement mutexes on Btree objects.
36791 ** This code really belongs in btree.c. But btree.c is getting too
36800 ** The author disclaims copyright to this source code. In place of
37321 ** should return the error code stored in BtCursor.skip
37783 ** The author disclaims copyright to this source code. In place of
38428 int rc; /* Status code */
38481 ** This routine returns an error code if something goes wrong. The
38526 ** a no-op. If an error occurs, the appropriate error code is written
38534 int rc; /* Return code from subfunctions */
38578 ** An error code is returned if something goes wrong, otherwise SQLITE_OK.
38908 ** an error code (usually SQLITE_CORRUPT).
38923 int rc; /* Integer return code */
39184 ** The following block of code checks early to see if a cell extends
39467 int rc = SQLITE_OK; /* Result code from this function */
39545 ** even when they are not. This exercises the locking code and
40328 int rc; /* Return code */
40634 ** SQLITE_OK is returned. Otherwise an SQLite error code.
40882 ** code to errCode for every cursor on BtShared that pBtree
41308 ** to return an integer result code for historical reasons.
41324 ** If an error occurs an SQLite error code is returned. Otherwise:
41403 ** SQLITE_OK is returned on success, otherwise an error code.
41594 ** Return SQLITE_OK on success or an error code if anything goes
41611 ** Return SQLITE_OK on success or an error code if anything goes
42012 ** specified by pIdxKey or intKey. Return a success code.
42225 ** have been deleted? This API will need to change to return an error code
42434 /* The code within this loop is run only once if the 'searchList' variable
42665 int rc; /* Return Code */
43009 int rc; /* The return code */
43066 int *pRC /* Read and write return code from here */
43225 int rc; /* Return Code */
43255 ** operations fails, the return code is set, but the contents
43256 ** of the parent page are still manipulated by thh code below.
43258 ** be marked as dirty. Returning an error code will cause a
43305 ** it is sometimes activated temporarily while debugging code responsible
43455 int rc = SQLITE_OK; /* The return code */
43692 ** right-most sibling might be nearly empty. This block of code attempts
43927 ** moved to the free-list - the freePage() code has taken care
43932 ** have also already been taken care of by the insertCell() code.
43945 ** Cases 1 and 2 are dealt with above by other code. The next
43948 ** code only sets pointer map entries for child or overflow pages that have
44060 ** an error code is returned and *ppChild is set to 0.
44396 int rc; /* Return code */
44927 ** corruption) an SQLite error code is returned.
44931 int rc; /* Return code */
44985 /* An error has occurred. Return an error code. */
45200 "unable to get the page. error code=%d", rc);
45204 /* Clear MemPage.isInit to make sure the corruption detection code in
45210 "btreeInitPage() returns error code %d", rc);
45549 ** a single shared-btree. The memory is used by client code for its own
45687 ** The author disclaims copyright to this source code. In place of
45718 int rc; /* Backup process error code */
45806 ** If an error occurs, NULL is returned and an error code and error message
45870 ** Argument rc is an SQLite error code. Return true if this error is
45922 ** and the pager code use this trick (clearing the first byte
45942 ** code if an error occurs.
46184 /* Set the error code of the destination database handle. */
46296 ** or an error code.
46316 ** The author disclaims copyright to this source code. In place of
46325 ** This file contains code use to manipulate "Mem" structure. A "Mem"
47193 int rc = SQLITE_OK; /* Return code */
47418 ** The author disclaims copyright to this source code. In place of
47426 ** This file contains code used for creating, destroying, and populating
47428 ** to version 2.8.7, all this code was combined into the vdbe.c source file.
47435 ** When debugging the code generator in a symbolic debugger, one can
48191 ** makes the code easier to read during debugging. None of this happens
48415 ** The justification for duplicating code is that according to
48456 ** running the code, it invokes the callback once for each instruction.
48476 int rc = SQLITE_OK; /* Return code */
49232 ** may be lying around. Returning an error code won't help matters.
49314 ** If an IO error occurs, an SQLITE_IOERR_XXX error code is returned.
49421 ** Return an error code. If the commit could not complete because of
49456 int mrc; /* Primary error code from p->rc */
49542 ** error code is SQLITE_OK or SQLITE_CONSTRAINT, then set the error
49543 ** code to the new value.
49613 ** Write any error messages into *pzErrMsg. Return the result code.
49632 /* If the VDBE has be run even partially, then transfer the error code
49696 ** the result code. Write any error message text into *pzErrMsg.
49757 ** was last positioned. Return an error code if an OOM fault or I/O error
49809 ** encapsulate the code that serializes values for storage in SQLite
49921 ** rather than a 64-bit float. Frank assures us that the code here
50330 ** Return SQLITE_OK if everything works, or an error code otherwise.
50348 ** this code can safely assume that nCellKey is 32-bits
50531 ** The author disclaims copyright to this source code. In place of
50540 ** This file contains code use to implement APIs that are part of the
50584 ** success/failure code that describes the result of executing the virtual
50587 ** This routine sets the error code and string returned by
50614 ** back to its starting state so that it can be reused. A success code from
50617 ** This routine sets the error code and string returned by
50713 ** then sets the error code to SQLITE_TOOBIG
50931 ** error has occured, then return the error code in p->rc to the
50932 ** caller. Set the error code in the database handle to the same value.
51118 ** This function is deprecated. Do not use it for new code. It is
51119 ** provide only to avoid breaking legacy code. New aggregate function
51171 ** running with SQLITE_DEBUG defined the SQLite code sometimes assert()s
51196 ** code of statement pStmt set to SQLITE_NOMEM.
51213 ** sqlite3_column_XXX API, then set the return code of the statement to
51447 ** The error code stored in database p->db is overwritten with the return
51717 ** Deprecated external interface. Internal/core SQLite code
51787 ** The author disclaims copyright to this source code. In place of
51796 ** This file contains code used to insert the values of host parameters
51930 ** The author disclaims copyright to this source code. In place of
51938 ** The code in this file implements execution method of the
51961 ** Most of the code in this file is taken up by the sqlite3VdbeExec()
51968 ** of the code in this file is, therefore, important. See other comments
51970 ** commenting and indentation practices when changing or adding code.
52374 ** hwtime.h contains inline assembler code for implementing
52382 ** The author disclaims copyright to this source code. In place of
52391 ** This file contains inline asm code for retrieving "high-performance"
52537 ** The error code is stored in p->rc and this routine returns SQLITE_ERROR.
52577 ** Automatically generated code
52973 /* End automatically generated code
53056 ** a return code SQLITE_ABORT.
53119 ** that is a lot of wasted space on the left margin. So the code within
53121 ** big comment (similar to this one) will mark the point in the code where
53224 ** P1 is the result code returned by sqlite3_exec(), sqlite3_reset(),
53506 ** with an SQLITE_ROW return code and it sets up the sqlite3_stmt
54682 ** the record to 0. This tells code below to store a NULL
54790 code comments for the details of the record
55347 ** discard the database schema, as the user code implementing the
55382 ** SQLITE_BUSY error code.
55742 /* The next line of code computes as follows, only faster:
56372 ** to guard against future changes to the code generator.
57706 ** fails with an error code of SQLITE_SCHEMA if it is ever executed
57761 ** code will be set to SQLITE_LOCKED.
58011 ** data is available) and the error code returned when xColumn or
58209 /* The following code adds nothing to the actual functionality
58293 ** The author disclaims copyright to this source code. In place of
58302 ** This file contains code used to implement incremental BLOB I/O.
58338 ** of writing code to use the b-tree layer directly is that the
58343 ** Code external to the Vdbe then "borrows" the b-tree cursor and
58675 ** The author disclaims copyright to this source code. In place of
58911 ** The author disclaims copyright to this source code. In place of
58920 ** This file contains code use to implement an in-memory rollback journal.
59170 ** The author disclaims copyright to this source code. In place of
59306 ** The author disclaims copyright to this source code. In place of
59967 int rc; /* Return code from subprocedures */
60507 ** The author disclaims copyright to this source code. In place of
60516 ** for generating VDBE code that evaluates expressions in SQLite.
60733 ** Generate code for a comparison operator.
60736 Parse *pParse, /* The parsing (and code generating) context */
61915 ** caller to use vdbe code equivalent to the following:
61947 /* Code an OP_VerifyCookie and OP_TableLock for <table>. */
62030 ** Generate code for scalar subqueries used as an expression
62075 /* This code must be run in its entirety every time it is encountered
62082 ** If all of the above are false, then we can run this code just once
62126 ** Generate code to write the results of the select into the temporary
62172 ** this code only executes once. Because for a non-constant
62173 ** expression we need to rerun this code each time.
62208 /* If this has to be a scalar SELECT. Generate code to put the
62256 ** Generate code for an IN expression.
62267 ** This routine generates code will jump to destIfFalse if the LHS is not
62273 Parse *pParse, /* Parsing and code generating context */
62298 /* Code the LHS, the <expr> from "<expr> IN (...)".
62341 ** over all of the code that follows.
62345 /* Here we begin generating code that runs if the LHS is not
62346 ** contained within the RHS. Generate additional code that
62476 #if 0 /* This code wold remove the entry from the cache if it existed */
62585 ** Generate code that will extract the iColumn-th column from
62591 ** is called. If iColumn<0 then code is generated that extracts the rowid.
62594 Parse *pParse, /* Parsing and code generating context */
62647 ** Generate code to move content from registers iFrom...iFrom+nReg-1
62664 ** Generate code to copy content from registers iFrom...iFrom+nReg-1
62714 ** Generate code to store the value of the iAlias-th alias in register
62718 ** the register number is returned without generating any code.
62720 ** Note that in order for this to work, code must be generated in the
62762 ** Generate code into the current Vdbe to evaluate the given
62769 ** must check the return code and move the results to the desired
63374 ** Generate code to evaluate an expression and store the results
63395 ** Generate code that will evaluate expression pExpr and store the
63412 ** Generate code that evalutes the given expression and puts the result
63564 ** Generate code that pushes the value of every element of the given
63598 ** Generate code for a BETWEEN operator.
63606 ** Code it as such, taking care to do the common subexpression
63610 Parse *pParse, /* Parsing and code generating context */
63654 ** Generate code for a boolean expression such that a jump is made
63661 ** This code depends on the fact that certain token values (ex: TK_EQ)
63664 ** the make process cause these values to align. Assert()s in the code
63777 ** Generate code for a boolean expression such that a jump is made
63930 ** just might result in some slightly slower code. But returning
64245 ** The author disclaims copyright to this source code. In place of
64253 ** This file contains C code routines that used to generate VDBE code
64258 ** The code in this file only exists if we are not omitting the
64327 ** This C function implements an SQL user function that is used by SQL code
64554 ** Generate code to drop and reload the internal representation of table
64557 ** the time the generated code is executed. This can be different from
64558 ** pTab->zName if this function is being called to code part of an
64603 ** Generate code to implement the "ALTER TABLE xxx RENAME TO yyy"
64685 /* Begin a transaction and code the VerifyCookie for database iDb.
64803 ** Generate code to make sure the file format number is at least minFormat.
64804 ** The generated code will increase the file format number if necessary.
65040 ** The author disclaims copyright to this source code. In place of
65048 ** This file contains code associated with the ANALYZE command.
65053 ** This routine generates code that opens the sqlite_stat1 table for
65065 ** with the named table are deleted. If zWhere==0, then code is generated
65135 ** Generate code to do an analysis of all indices associated with
65210 /* If this iteration of the loop is generating code to analyze the
65360 ** Generate code that will cause the most recent index analysis to
65371 ** Generate code that will do an analysis of an entire database
65393 ** Generate code that will do an analysis of a single table in
65412 ** Generate code for the ANALYZE command. The parser calls this routine
65432 ** and code in pParse and return NULL. */
65565 ** code may be ignored.
65687 ** The author disclaims copyright to this source code. In place of
65695 ** This file contains code used to implement the ATTACH and DETACH commands.
65965 ** This procedure generates VDBE code for a single invocation of either the
66022 /* Code an OP_Expire. For an ATTACH statement, set P1 to true (expire this
66226 ** The author disclaims copyright to this source code. In place of
66234 ** This file contains code used to implement the sqlite3_set_authorizer()
66241 ** All of the code in this file may be omitted by defining a single
66330 int rc; /* Auth callback return code */
66407 ** Do an authorization check using the code and arguments given. Return
66414 int code,
66432 rc = db->xAuth(db->pAuthArg, code, zArg1, zArg2, zArg3, pParse->zAuthContext);
66477 ** The author disclaims copyright to this source code. In place of
66485 ** This file contains C code routines that are called by the SQLite parser
66527 ** code to make the lock occur is generated by a later call to
66567 ** Code an OP_TableLock instruction for each table locked by the
66596 ** no VDBE code was generated.
66607 /* Begin by generating some termination code at the end of the
66618 ** set for each database that is used. Generate code to start a
66655 /* Finally, jump back to the beginning of the executable code. */
66689 ** Run the parser and code generator recursively in order to generate
66690 ** code for the SQL statement given onto the end of the pParse context
66772 ** and code in pParse and return NULL. */
67124 Parse *pParse, /* Parsing and code generating context */
67238 int code;
67245 code = SQLITE_CREATE_TEMP_VIEW;
67247 code = SQLITE_CREATE_VIEW;
67251 code = SQLITE_CREATE_TEMP_TABLE;
67253 code = SQLITE_CREATE_TABLE;
67256 if( !isVirtual && sqlite3AuthCheck(pParse, code, zName, 0, zDb) ){
67311 /* Begin generating the code that will insert the table record into
67350 ** by the real entry in code generated at sqlite3EndTable().
67354 ** The rowid and root page number values are needed by the code that
67385 ** produces larger code.
67748 ** Generate code that will increment the schema cookie.
68348 ** Write code to erase the table with root-page iTable from database iDb.
68349 ** Also write code to modify the sqlite_master table and internal schema
68361 ** location iTable. The following code modifies the sqlite_master table to
68376 ** Write VDBE code to erase table pTab and all associated indices on disk.
68377 ** Code to update the sqlite_master tables and internal schema definitions
68468 int code;
68477 code = SQLITE_DROP_TEMP_VIEW;
68479 code = SQLITE_DROP_VIEW;
68483 code = SQLITE_DROP_VTABLE;
68488 code = SQLITE_DROP_TEMP_TABLE;
68490 code = SQLITE_DROP_TABLE;
68493 if( sqlite3AuthCheck(pParse, code, pTab->zName, zArg2, zDb) ){
68520 /* Generate code to remove the table from the master table
68536 /* Drop all triggers associated with the table being dropped. Code
68746 ** Generate code that will erase and refill index *pIdx. This is
68762 Vdbe *v; /* Generate code into this virtual machine */
69257 /* Fill the index with data and reparse the schema. Code an OP_Expire
69373 int code = SQLITE_DROP_INDEX;
69380 if( !OMIT_TEMPDB && iDb ) code = SQLITE_DROP_TEMP_INDEX;
69381 if( sqlite3AuthCheck(pParse, code, pIndex->zName, pTab->zName, zDb) ){
69387 /* Generate code to remove the index and from the master table */
69759 ** is initially attached to the left operand. But the code generator
69899 ** Generate VDBE code that will verify the schema cookie and start
69905 ** code has been generated. So here is what we do:
69907 ** The first time this routine is called, we code an OP_Goto that
69910 ** pParse->cookieMask field. Later, after all other code has been
69914 ** cookie verification subroutine code happens in sqlite3FinishCoding().
69916 ** If iDb<0 then code the OP_Goto only - don't set flag to verify the
69918 ** early in the code, before we know if any database tables will be used.
69947 ** Generate VDBE code that prepares for doing an operation that
69979 ** The code generator calls this routine if is discovers that it is
69989 ** makes it more difficult to prove that the code is correct (in
70000 ** Code an OP_Halt that causes the vdbe to return an SQLITE_CONSTRAINT
70073 ** Generate code for the REINDEX command.
70097 ** and code in pParse and return NULL. */
70182 ** The author disclaims copyright to this source code. In place of
70634 ** The author disclaims copyright to this source code. In place of
70642 ** This file contains C code routines that are called by the parser
70643 ** in order to generate code for DELETE FROM statements.
70837 ** Generate code for a DELETE FROM statement.
70851 int end, addr = 0; /* A couple addresses of generated code */
70931 /* Begin generating code.
71054 ** generating code because of a call to sqlite3NestedParse(), do not
71080 ** This routine generates VDBE code that causes a single row of a
71095 ** This routine generates code to remove both the table record and all
71109 int iLabel; /* Label resolved to end of generated code */
71191 ** This routine generates VDBE code that causes the deletion of all
71207 Parse *pParse, /* Parsing and code generating context */
71224 ** Generate code that will assemble an index key and put it in register
71272 ** The author disclaims copyright to this source code. In place of
71285 ** All other code has file scope.
71622 ** here. But now they are implemented as VDBE code so that unused arguments
72007 ** that identifies the particular version of the source code used to build
72028 ** change. This function may disappear. Do not write code that depends
72357 int code = iCode[zIn[i]&0x7f];
72358 if( code>0 ){
72359 if( code!=prevcode ){
72360 prevcode = code;
72361 zResult[j++] = code + '0';
72796 ** The author disclaims copyright to this source code. In place of
72804 ** This file contains code used by the compiler to add foreign key
72895 ** Before coding an UPDATE or DELETE row operation, the code-generator
72898 ** row are required by the FK processing VDBE code (i.e. if FKs were
72900 ** accessed). No information is required by the code-generator before
72902 ** generation code to query for this information are:
72912 ** sqlite3FkActions() - Code triggers for ON UPDATE/ON DELETE actions.
73087 ** Each time it is called, this function generates VDBE code to locate the
73118 Vdbe *v = sqlite3GetVdbe(pParse); /* Vdbe to add code to */
73204 ** incrementing a counter. This is necessary as the VM code is being
73222 ** This function is called to generate code executed when a row is deleted
73225 ** code for an SQL UPDATE operation, this function may be called twice -
73228 ** The code generated by this function scans through the rows in the child
73397 ** This function is called to generate code that runs when table pTab is
73402 ** Normally, no code is required. However, if either
73423 ** generating any VDBE code. If one can be found, then jump over
73456 ** table pTab to generate VDBE code to perform foreign key constraint
73481 Vdbe *v; /* VM to write code to */
73619 ** This function is called before generating code to update or delete a
73645 ** This function is called before generating code to update or delete a
73715 ** sub-system, code for them is created by fkScanChildren()).
73990 ** The author disclaims copyright to this source code. In place of
73998 ** This file contains C code routines that are called by the parser
74003 ** Generate code that will open a table for reading.
74006 Parse *p, /* Generate code into this VDBE */
74205 ** This routine generates code that will initialize all of the
74256 ** This routine generates the code needed to write autoincrement
74260 ** routine just before the "exit" code.
74329 ** The code generated follows one of four templates. For a simple
74330 ** select with data coming from a VALUES clause, the code executes
74331 ** once straight down through. Pseudo-code follows (we call this
74365 ** The generated code follows this template:
74429 Vdbe *v; /* Generate code into this virtual machine */
74554 /* Data is coming from a SELECT. Generate code to implement that SELECT
74555 ** as a co-routine. The code is common to both the 3rd and 4th
74619 ** and add it to a transient table srcTab. The code generated
74949 /* Generate code to check constraints and generate index keys and
74979 /* Code AFTER triggers */
75016 ** generating code because of a call to sqlite3NestedParse(), do not
75048 ** Generate code to do constraint checks prior to an INSERT or an UPDATE.
75071 ** The code generated by this routine store new index entries into
75077 ** This routine also generates code to check constraints. NOT NULL,
75086 ** return code of SQLITE_CONSTRAINT.
75094 ** return code of SQLITE_CONSTRAINT. The
75328 /* Generate code that executes if the new index entry is not unique */
75385 ** This routine generates code to finish the INSERT or UPDATE operation
75447 ** Generate code that will open cursors for a table and for all
75807 ** The author disclaims copyright to this source code. In place of
75823 ** Execute SQL code. Return one of the SQLITE_ success/failure
75839 int rc = SQLITE_OK; /* Return code */
75953 ** The author disclaims copyright to this source code. In place of
75961 ** This file contains code used to dynamically load extensions into
75973 ** The author disclaims copyright to this source code. In place of
76801 ** The auto-extension code added regardless of whether or not extension
76803 ** code if regular extension loading is not available. This is that
76944 ** The author disclaims copyright to this source code. In place of
76952 ** This file contains code used to implement the PRAGMA command.
76966 ** to support legacy SQL code. The safety level used to be boolean
77082 ** Generate code to return a single integer value.
77163 /* Many of the flag-pragmas modify the code generated by the SQL
77755 /* The flagPragma() subroutine also generates any necessary code
77978 /* Code that appears at the end of the integrity check. If no error
78376 ** The author disclaims copyright to this source code. In place of
78412 ** This is the callback routine for the code that initializes the
78443 ** But because db->init.busy is set to 1, no VDBE code is generated
78745 ** created using ATTACH statements. Return a success code. If an
78791 ** Otherwise, the schema is loaded. An error code is returned.
78863 /* If pSchema is NULL, then return -1000000. This happens when code in
78899 int rc = SQLITE_OK; /* Result code */
79234 ** The author disclaims copyright to this source code. In place of
79242 ** This file contains C code routines that are called by the parser
79361 u8 code; /* Join type mask */
79380 jointype |= aKeyword[j].code;
79638 ** Insert code into "v" that will push the record on the top of the
79679 ** Add code to implement the OFFSET
79682 Vdbe *v, /* Generate code into this VM */
79697 ** Add code that will check to make sure the N registers starting at iMem
79706 Parse *pParse, /* Parsing and code generating context */
79745 ** This routine generates the code for the inside of the inner loop
80010 ** routine generates the code needed to do that.
80015 Vdbe *v, /* Generate code into this VDBE */
80163 /* At one time, code such as "SELECT new.x" within a trigger would
80165 ** trigger code is generated and so this condition is no longer
80250 ** Generate code that will tell the VDBE the declaration types of columns
80289 ** Generate code that will tell the VDBE the names of columns
80530 ** is disabled, so we might as well hard-code pTab->dbMem to NULL. */
80699 int rc = SQLITE_OK; /* Success code from a subroutine */
80701 Vdbe *v; /* Generate code to this VDBE */
80756 /* Generate code for the left and right SELECT statements.
80820 /* Code the SELECT statements to our left
80829 /* Code the current SELECT statement
80905 /* Code the SELECTs to our left into temporary table "tab1".
80913 /* Code the current SELECT into temporary table "tab2"
80932 /* Generate code to take the intersection of the two temporary
81021 ** Code an output subroutine for a coroutine implementation of a
81033 ** if there has been no previous output. If regPrev>0 then code is
81178 ** Alternative compound select code generator for cases when there
81186 ** is to code both <selectA> and <selectB> with the ORDER BY clause as
81270 Vdbe *v; /* Generate code to this VDBE */
81305 assert( pKeyDup==0 ); /* "Managed" code needs this. Ticket #3382. */
81522 /* Generate code to handle the case of A<B
81530 /* Generate code to handle the case of A==B
81545 /* Generate code to handle the case of A>B
81556 /* This code runs once to initialize everything.
81716 ** The code generated for this simpification gives the same result
82009 ** subquery until code generation is
82035 ** iParent. The iParent cursor will never be used. Subsequent code
82070 ** block of code will expand the out query to 4 slots. The middle
82369 ** The following code just has to locate the TK_ALL expressions and expand
82737 ** Generate code for the SELECT statement given in the p argument.
82839 /* Begin generating code.
82844 /* Generate code for all sub-queries in the FROM clause
83188 /* Generate code that runs whenever the GROUP BY changes.
83189 ** Changes in the GROUP BY are detected by the previous code
83192 ** This code copies current group by terms in b0,b1,b2,...
83326 ** If it is, then ask the code in where.c to attempt to sort results
83329 ** add vdbe code to break out of the processing loop after the
83341 ** + The optimizer code in where.c (the thing that decides which
83344 ** Refer to code and comments in where.c for details.
83399 /* The SELECT was successfully coded. Set the return code to 0
83423 ** The following code is used for testing and debugging only. The code
83428 ** for helping to understand what is happening inside the code generator
83432 ** code base. Then are intended to be called from within the debugger
83512 /* End of the structure debug printing code
83521 ** The author disclaims copyright to this source code. In place of
83550 int rc; /* Return code from sqlite3_exec() */
83717 ** The author disclaims copyright to this source code. In place of
83912 int code = SQLITE_CREATE_TRIGGER;
83915 if( iTabDb==1 || isTemp ) code = SQLITE_CREATE_TEMP_TRIGGER;
83916 if( sqlite3AuthCheck(pParse, code, zName, pTab->zName, zDbTrig) ){
83927 ** INSTEAD OF trigger into a BEFORE trigger. It simplifies code
84245 int code = SQLITE_DROP_TRIGGER;
84248 if( iDb==1 ) code = SQLITE_DROP_TEMP_TRIGGER;
84249 if( sqlite3AuthCheck(pParse, code, pTrigger->zName, pTable->zName, zDb) ||
84256 /* Generate code to destroy the database record of the trigger.
84384 ** Generate VDBE code for the statements inside the body of a single
84462 ** program. It is not used in production code, only for debugging.
84499 Trigger *pTrigger, /* Trigger to code */
84501 int orconf /* ON CONFLICT policy to code trigger program with */
84558 /* If one was specified, code the WHEN clause. If it evaluates to false
84572 /* Code the trigger program into the sub-vdbe. */
84609 Trigger *pTrigger, /* Trigger to code */
84636 ** Generate code for the trigger program associated with trigger p on
84643 Trigger *p, /* Trigger to code */
84644 Table *pTab, /* The table to code triggers from */
84654 /* Code the OP_Program opcode in the parent VDBE. P4 of the OP_Program
84673 ** This is called to code the required FOR EACH ROW triggers for an operation
84674 ** on table pTab. The operation to code triggers for (INSERT, UPDATE or DELETE)
84718 Table *pTab, /* The table to code triggers from */
84739 /* Determine whether we should code this trigger */
84780 Table *pTab, /* The table to code triggers from */
84810 ** The author disclaims copyright to this source code. In place of
84818 ** This file contains C code routines that are called by the parser
84860 ** If parameter iReg is not negative, code an OP_RealAffinity instruction
85065 /* Begin generating code. */
85352 ** generating code because of a call to sqlite3NestedParse(), do not
85382 ** Generate code for an UPDATE of a virtual table.
85452 /* Generate code to scan the ephemeral table and call VUpdate. */
85478 ** The author disclaims copyright to this source code. In place of
85486 ** This file contains code used to implement the VACUUM command.
85488 ** Most of the code in this file may be omitted by defining the
85495 ** text of the error message in *pzErrMsg. Return the result code.
85507 ** Execute zSql on database db. Return an error code.
85568 int rc = SQLITE_OK; /* Return code from service routines */
85806 ** The author disclaims copyright to this source code. In place of
85814 ** This file contains code used to help implement virtual tables.
86333 ** of the virtual table pTab. If an error occurs, an error code is returned
86398 ** description of the error and an SQLITE_XXX error code is returned.
86554 ** array. Return the error code for the first error that occurs, or
86748 ** The author disclaims copyright to this source code. In place of
86756 ** This module contains C code that generates VDBE code used to process
86758 ** generating the code that loops through a table looking for applicable
86857 #define TERM_VIRTUAL 0x02 /* Added by the optimizer. Do not code */
87367 Parse *pParse, /* Parsing and code generating context */
88544 ** code is generated to access the virtual table. The whereInfoDelete()
88784 ** If an error occurs, return an error code. Otherwise, SQLITE_OK.
88848 Parse *pParse, /* Parsing & code generating context */
89335 ** Code an OP_Affinity opcode to apply the column affinity string zAff
89340 ** SQLITE_AFF_NONE, then no code gets generated.
89365 /* Code the OP_Affinity opcode if there is anything left to do. */
89375 ** Generate code for a single equality term of the WHERE clause. An equality
89440 ** Generate code that will evaluate all == and IN constraints for an
89447 ** constraints are coded. This routine will generate code to evaluate
89457 ** the index of that memory cell. The code that
89486 int nEq = pLevel->plan.nEq; /* The number of == or IN constraints to code */
89549 ** Generate code for the start of the iLevel-th loop in the WHERE clause
89838 /* Generate code to evaluate all constraint terms using == or IN
89987 ** Gosub opcode and jumps straight to the code generated by WhereEnd().
89994 ** Following the above, code to terminate the loop. Label A, the target
90057 ** correct response for the end-of-loop code (the OP_Return) is to
90123 /* Insert code to test every subexpression that can be completely
90148 /* For a LEFT OUTER JOIN, generate code that will record the fact that
90225 ** Then the code generated is conceptually like the following:
90227 ** foreach row1 in t1 do \ Code generated
90231 ** end \ Code generated
90243 ** And so forth. This routine generates code to open those VDBE cursors
90244 ** and sqlite3WhereEnd() generates the code to close them.
90246 ** The code that sqlite3WhereBegin() generates leaves the cursors named
90247 ** in pTabList pointing at their appropriate entries. The [...] code
90255 ** code will run much faster. Most of the work of this routine is checking
90328 ** only generate code for the first table in pTabList and assume that
90367 ** expression and either jump over all of the code or fall thru.
90662 /* Generate the code to do the search. Each iteration of the for
90663 ** loop below generates code for a single nested loop of the VM
90744 /* Generate loop termination code.
90808 /* If this scan uses an index, make code substitutions to read data
90815 ** Calls to the code generator in between sqlite3WhereBegin and
90816 ** sqlite3WhereEnd will have created code that references the table
90817 ** directly. This loop scans all that code looking for opcodes
90858 ** The author disclaims copyright to this source code.
90866 /* First off, code is included that follows the "include" declaration
91030 ** sqlite3ParserARG_STORE Code to store %extra_argument into yypParser
91031 ** sqlite3ParserARG_FETCH Code to extract %extra_argument from yypParser
91034 ** YYERRORSYMBOL is the code number of the error symbol. If not
91081 ** to a macro that can assist in verifying code coverage. For production
91082 ** code the yytestcase() macro should be turned off. But it is useful
91701 YYCODETYPE major; /* The major token value. This is the code
92220 ** "yymajor" is the symbol code, and "yypminor" is a pointer to
92225 YYCODETYPE yymajor, /* Type code for object to destroy */
92238 ** inside the C code.
92488 /* Here code is inserted which will execute if the parser
92912 ** as the value is never used. So really the only thing this code
92916 ** without this code, their parser segfaults. I'm not sure what there
92930 ** { ... } // User supplied code
94043 ** The following code executes when the parse fails
94056 /* Here code is inserted which will be executed whenever the
94063 ** The following code executes when a syntax error first occurs.
94093 /* Here code is inserted which will be executed whenever the
94119 int yymajor, /* The major token code number */
94273 ** The author disclaims copyright to this source code. In place of
94283 ** This file contains C code that splits an SQL input string up into
94323 ** it is a keyword. If it is a keyword, the token code of that keyword is
94334 /***** This file contains automatically generated code ******
94336 ** The code in this file has been automatically generated by
94340 ** The code in this file implements a function that determines whether
94343 ** But by using this automatically generated code, the size of the code
94924 ** passed in. An SQLITE_ status code is returned. If an error occurs
95045 ** structure built up in pParse->pNewTable. The calling code (see vtab.c)
95075 ** The author disclaims copyright to this source code. In place of
95085 ** This file contains C code that implements the sqlite3_complete() API.
95086 ** This code used to be part of the tokenizer.c source file. But by
95087 ** separating it out, the code will be automatically omitted from
95360 ** The author disclaims copyright to this source code. In place of
95380 ** The author disclaims copyright to this source code. In place of
95412 ** The author disclaims copyright to this source code. In place of
95444 ** The author disclaims copyright to this source code. In place of
95535 int rc; /* Result code */
95637 ** been compiled correctly. It is important to run this code, but
95643 /* This section of code's only "output" is via assert() statements. */
96096 /* Tell the code in notify.c that the connection no longer holds any
96370 ** that it is designed to be called by internal code. The difference is
96371 ** that if a malloc() fails in sqlite3_create_function(), an error code
96789 ** Return the most recent error code generated by an SQLite routine. If NULL is
97009 ** dealt with in the previous code block. Besides these, the only
97393 ** 2. Invoke sqlite3_log() to provide the source code location where
97798 ** The author disclaims copyright to this source code. In place of
98064 ** code to the caller is insufficient, as even if an error code
98130 ** The author disclaims copyright to this source code. In place of
98143 ** The code in this file is only compiled if:
98412 ** The author disclaims copyright to this source code. In place of
98435 ** The author disclaims copyright to this source code.
98501 ** code. If SQLITE_OK is returned, then *ppTokenizer should be set
98539 ** the end of the buffer has been reached, or an SQLite error code.
98591 ** The author disclaims copyright to this source code. In place of
98613 ** code should not attempt to access or modify the fields of this structure
99137 int rc; /* Return code */
99160 ** Otherwise, return an SQLite error code.
99173 int rc; /* Return code */
99205 int rc; /* Return code */
99269 int rc; /* Return code */
99534 int rc = SQLITE_OK; /* Return code */
99568 ** If an error occurs, an error code other than SQLITE_OK is returned.
99578 int rc = SQLITE_OK; /* Return code */
100243 int rc; /* Return code */
100261 ** The code in this loop does not actually load any leaves into memory
100390 ** smaller than nList bytes. The code in fts3DoclistMerge() is written
100425 int rc = SQLITE_OK; /* Return code */
100552 int rc; /* Return code */
100642 int rc; /* Return Code */
100921 int rc; /* Return code */
101014 int rc = SQLITE_NOMEM; /* Return Code */
101144 /* An error has occurred. Delete the hash table and return the error code. */
101171 ** The author disclaims copyright to this source code. In place of
101180 ** This module contains code that implements a parser for fts3 query strings
101466 ** Returns an SQLite error code. SQLITE_OK if everything works, SQLITE_NOMEM
101480 unsigned char eType; /* Keyword code */
101908 ** Everything after this point is just test code.
102093 ** The author disclaims copyright to this source code. In place of
102107 ** The code in this file is only compiled if:
102236 ** For help in interpreted the obscure C code in the function definition,
102474 ** The author disclaims copyright to this source code. In place of
102487 ** The code in this file is only compiled if:
103115 ** The author disclaims copyright to this source code. In place of
103129 ** The code in this file is only compiled if:
103501 ** can be used as designed by the C-code in the queryTokenizer and
103610 ** The author disclaims copyright to this source code. In place of
103623 ** The code in this file is only compiled if:
103836 ** The author disclaims copyright to this source code. In place of
103846 ** this file contains code to insert, update and delete rows from FTS3
103847 ** tables. It also contains code to merge FTS3 b-tree segments. Some
103849 ** code in fts3.c.
103876 ** this structure are only manipulated by code in this file, opaque handles
103877 ** of type Fts3SegReader* are also used by code in fts3.c to iterate through
103942 ** the leaf nodes). These functions and type are only ever used by code
103988 ** Otherwise, an SQLite error code is returned and *pp is set to 0.
104080 ** SQLite error code otherwise.
104096 ** etc.) occurs, return the appropriate SQLite error code.
104136 ** return an SQLite error code.
104156 ** if successful, or an SQLite error code otherwise.
104215 int *pRc /* OUT: Return code */
104267 ** If successful, SQLITE_OK is returned. Otherwise, an SQLite error code.
104398 int rc; /* Return code */
104452 int rc; /* Return code */
104516 ** returned. Otherwise, an SQLite error code is returned.
104519 int rc; /* Return Code */
104553 ** SQLITE_DONE. Otherwise, an SQLite error code.
104712 int rc = SQLITE_OK; /* Return code */
104824 int rc = SQLITE_OK; /* Return Code */
104907 ** code is returned.
105252 ** blocks were written to the db). Otherwise, an SQLite error code is
105322 ** If successful, SQLITE_OK is returned. Otherwise, an SQLite error code.
105460 ** returned. Otherwise, an SQLite error code.
105468 int rc; /* Return code */
105514 ** error occurs, an SQLite error code is returned.
105532 ** Return SQLITE_OK if successful, or an SQLite error code if not.
105553 ** Return SQLITE_OK if successful, or an SQLite error code if not.
105580 ** SQLITE_OK is returned if successful, otherwise an SQLite error code.
105588 int rc; /* Return Code */
105731 int rc = SQLITE_OK; /* Return code */
105886 ** an SQLite error code is returned.
105890 int rc; /* Return code */
105991 int rc; /* Return Code */
106051 int rc; /* Return Code */
106090 int rc = SQLITE_OK; /* Return Code */
106166 ** The author disclaims copyright to this source code. In place of
106408 int rc; /* Return code */
106912 ** the iteration is abandoned and the error code returned immediately.
107090 int rc; /* Return Code */
107227 int rc; /* Return code */
107509 ** The author disclaims copyright to this source code. In place of
107517 ** This file contains code for implementations of the r-tree and r*-tree
108472 ** to zero and return an SQLite error code.
110126 ** code is returned.
110370 ** The author disclaims copyright to this source code. In place of
110571 UErrorCode e /* Error code returned by ICU function */
110783 int rc; /* Return code from sqlite3_create_collation_x() */
110869 ** The author disclaims copyright to this source code. In place of