Alien-SVN

 view release on metacpan or  search on metacpan

src/subversion/subversion/include/private/svn_sqlite.h  view on Meta::CPAN

   return value will be FALSE. */
svn_boolean_t
svn_sqlite__column_boolean(svn_sqlite__stmt_t *stmt, int column);

/* Wrapper around sqlite3_column_int. If the column is null, then the
   return value will be 0. */
int
svn_sqlite__column_int(svn_sqlite__stmt_t *stmt, int column);

/* Wrapper around sqlite3_column_int64. If the column is null, then the
   return value will be 0. */
apr_int64_t
svn_sqlite__column_int64(svn_sqlite__stmt_t *stmt, int column);

/* Fetch the word at COLUMN, look it up in the MAP, and return its value.
   MALFUNCTION is thrown if the column is null or contains an unknown word.  */
int
svn_sqlite__column_token(svn_sqlite__stmt_t *stmt,
                         int column,
                         const svn_token_map_t *map);

/* Fetch the word at COLUMN, look it up in the MAP, and return its value.
   Returns NULL_VAL if the column is null. MALFUNCTION is thrown if the
   column contains an unknown word.  */
int
svn_sqlite__column_token_null(svn_sqlite__stmt_t *stmt,
                              int column,
                              const svn_token_map_t *map,
                              int null_val);

/* Return the column as a hash of const char * => const svn_string_t *.
   If the column is null, then set *PROPS to NULL. The
   results will be allocated in RESULT_POOL, and any temporary allocations
   will be made in SCRATCH_POOL. */
svn_error_t *
svn_sqlite__column_properties(apr_hash_t **props,
                              svn_sqlite__stmt_t *stmt,
                              int column,
                              apr_pool_t *result_pool,
                              apr_pool_t *scratch_pool);

/* Return the column as an array of depth-first ordered array of
   svn_prop_inherited_item_t * structures.  If the column is null, then
   set *IPROPS to NULL. The results will be allocated in RESULT_POOL,
   and any temporary allocations will be made in SCRATCH_POOL. */
svn_error_t *
svn_sqlite__column_iprops(apr_array_header_t **iprops,
                          svn_sqlite__stmt_t *stmt,
                          int column,
                          apr_pool_t *result_pool,
                          apr_pool_t *scratch_pool);

/* Return the column as a checksum. If the column is null, then NULL will
   be stored into *CHECKSUM. The result will be allocated in RESULT_POOL. */
svn_error_t *
svn_sqlite__column_checksum(const svn_checksum_t **checksum,
                            svn_sqlite__stmt_t *stmt,
                            int column,
                            apr_pool_t *result_pool);

/* Return TRUE if the result of selecting the column is null,
   FALSE otherwise */
svn_boolean_t
svn_sqlite__column_is_null(svn_sqlite__stmt_t *stmt, int column);

/* Return the number of bytes the column uses in a text or blob representation.
   0 for NULL columns. */
int
svn_sqlite__column_bytes(svn_sqlite__stmt_t *stmt, int column);


/* --------------------------------------------------------------------- */

#define SVN_SQLITE__INTEGER  1
#define SVN_SQLITE__FLOAT    2
#define SVN_SQLITE__TEXT     3
#define SVN_SQLITE__BLOB     4
#define SVN_SQLITE__NULL     5

/* */
int
svn_sqlite__value_type(svn_sqlite__value_t *val);

/* */
const char *
svn_sqlite__value_text(svn_sqlite__value_t *val);


/* --------------------------------------------------------------------- */

/* */
void
svn_sqlite__result_null(svn_sqlite__context_t *sctx);

void
svn_sqlite__result_int64(svn_sqlite__context_t *sctx, apr_int64_t val);


/* --------------------------------------------------------------------- */


/* Error-handling wrapper around sqlite3_finalize. */
svn_error_t *
svn_sqlite__finalize(svn_sqlite__stmt_t *stmt);

/* Reset STMT by calling sqlite3_reset(), and also clear any bindings to it.

   Note: svn_sqlite__get_statement() calls this function automatically if
   the requested statement has been used and has not yet been reset. */
svn_error_t *
svn_sqlite__reset(svn_sqlite__stmt_t *stmt);


/* Begin a transaction in DB. */
svn_error_t *
svn_sqlite__begin_transaction(svn_sqlite__db_t *db);

/* Like svn_sqlite__begin_transaction(), but takes out a 'RESERVED' lock
   immediately, instead of using the default deferred locking scheme. */
svn_error_t *
svn_sqlite__begin_immediate_transaction(svn_sqlite__db_t *db);



( run in 0.313 second using v1.01-cache-2.11-cpan-02777c243ea )