module SQLite3

SQLite3 is a wrapper around the popular database sqlite.

For an example of usage, see SQLite3::Database.

Constants

SQLITE_LOADED_VERSION

(String) The version of the sqlite3 library loaded at runtime (e.g., “3.46.1”)

SQLITE_PACKAGED_LIBRARIES
SQLITE_PRECOMPILED_LIBRARIES
SQLITE_VERSION

(String) The version of the sqlite3 library compiled with (e.g., “3.46.1”)

SQLITE_VERSION_NUMBER

(Integer) The version of the sqlite3 library compiled with (e.g., 346001)

VERSION

(String) the version of the sqlite3 gem, e.g. “2.1.1”

VERSION_INFO

a hash of descriptive metadata about the current version of the sqlite3 gem

Public Class Methods

status(parameter) → Hash click to toggle source
status(parameter, reset_flag = false) → Hash

Queries the SQLite3 library for run-time status information. Passing a truthy reset_flag will reset the highwater mark to the current value.

Parameters
  • parameter (Integer, SQLite3::Constants::Status): The status parameter to query.

  • reset_flag (Boolean): Whether to reset the highwater mark. (default is false)

Returns

A Hash containing :current and :highwater keys for integer values.

static VALUE
rb_sqlite3_status(int argc, VALUE *argv, VALUE klass)
{
    VALUE opArg, resetFlagArg;

    rb_scan_args(argc, argv, "11", &opArg, &resetFlagArg);

    int op = NUM2INT(opArg);
    bool resetFlag = RTEST(resetFlagArg);

    int pCurrent = 0;
    int pHighwater = 0;
    sqlite3_status(op, &pCurrent, &pHighwater, resetFlag);

    VALUE hash = rb_hash_new();
    rb_hash_aset(hash, ID2SYM(rb_intern("current")), INT2FIX(pCurrent));
    rb_hash_aset(hash, ID2SYM(rb_intern("highwater")), INT2FIX(pHighwater));

    return hash;
}
threadsafe?() click to toggle source

Was sqlite3 compiled with thread safety on?

# File lib/sqlite3.rb, line 14
def self.threadsafe?
  threadsafe > 0
end