*** DRAFT ***

SQLite Requirement Matrix Details
vtab_in_first.html

Index Summary Markup Original


R-40355-51265-24214-63984-08148-19006-37378-60160 tcl slt th3 src

If the X parameter is not an xFilter argument that was selected for all-at-once IN constraint processing, then these routines return SQLITE_ERROR.

/* IMP: R-40355-51265 */
# EVIDENCE-OF: R-40355-51265 If the X parameter is not an xFilter
# argument that was selected for all-at-once IN constraint processing,
# then these routines return SQLITE_ERROR.

R-41579-47678-30106-58771-30007-26789-04266-34063 tcl slt th3 src

Use these routines to access all values on the right-hand side of the IN constraint using code like the following:

   for(rc=sqlite3_vtab_in_first(pList, &pVal);
       rc==SQLITE_OK && pVal;
       rc=sqlite3_vtab_in_next(pList, &pVal)
   ){
     // do something with pVal
   }
   if( rc!=SQLITE_OK ){
     // an error has occurred
   }

/* IMP: R-41579-47678 */
# EVIDENCE-OF: R-41579-47678 Use these routines to access all values on
# the right-hand side of the IN constraint using code like the
# following:   for(rc=sqlite3_vtab_in_first(pList, &pVal);
#   rc==SQLITE_OK && pVal;  
# rc=sqlite3_vtab_in_next(pList, &pVal)   ){   //
# do something with pVal   }   if( rc!=SQLITE_OK ){
#   // an error has occurred   }

R-01813-32763-54334-00328-19271-46476-32212-62631 tcl slt th3 src

On success, the sqlite3_vtab_in_first(X,P) and sqlite3_vtab_in_next(X,P) routines return SQLITE_OK and set *P to point to the first or next value on the RHS of the IN constraint.

/* IMP: R-01813-32763 */
# EVIDENCE-OF: R-01813-32763 On success, the sqlite3_vtab_in_first(X,P)
# and sqlite3_vtab_in_next(X,P) routines return SQLITE_OK and set *P to
# point to the first or next value on the RHS of the IN constraint.

R-53099-38567-01215-12266-31913-15951-54753-29101 tcl slt th3 src

If there are no more values on the right hand side of the IN constraint, then *P is set to NULL and these routines return SQLITE_DONE.

/* IMP: R-53099-38567 */
# EVIDENCE-OF: R-53099-38567 If there are no more values on the right
# hand side of the IN constraint, then *P is set to NULL and these
# routines return SQLITE_DONE.

R-00378-15189-28386-10298-40269-01090-46979-64293 tcl slt th3 src

The return value might be some other value, such as SQLITE_NOMEM, in the event of a malfunction.

/* IMP: R-00378-15189 */
# EVIDENCE-OF: R-00378-15189 The return value might be some other value,
# such as SQLITE_NOMEM, in the event of a malfunction.