| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- DEFINITION MODULE FOR "C" SQLite;
- (* Scalar SQLite binding: connection setup, prepared statements,
- scalar binding/results, column metadata and error reporting.
- The full binding stays in m2SQLITE for later porting. *)
- FROM SYSTEM IMPORT ADDRESS;
- FROM CStr IMPORT CString;
- EXPORT UNQUALIFIED
- SQLiteOk, SQLiteError, SQLiteInternal, SQLitePerm, SQLiteAbort,
- SQLiteBusy, SQLiteLocked, SQLiteNoMem, SQLiteReadOnly,
- SQLiteInterrupt, SQLiteIoErr, SQLiteCorrupt, SQLiteNotFound,
- SQLiteFull, SQLiteCantOpen, SQLiteProtocol, SQLiteEmpty,
- SQLiteSchema, SQLiteTooBig, SQLiteConstraint, SQLiteMismatch,
- SQLiteMisuse, SQLiteNoLfs, SQLiteAuth, SQLiteFormat, SQLiteRange,
- SQLiteNotADb, SQLiteNotice, SQLiteWarning, SQLiteRow, SQLiteDone,
- SQLiteInteger, SQLiteFloat, SQLiteText, SQLiteBlob, SQLiteNull,
- SQLiteConstraintPrimaryKey, SQLiteConstraintUnique,
- sqlite3_open,
- sqlite3_exec,
- sqlite3_close,
- sqlite3_prepare_v2,
- sqlite3_bind_int,
- sqlite3_bind_int64,
- sqlite3_bind_double,
- sqlite3_bind_null,
- sqlite3_bind_text,
- sqlite3_step,
- sqlite3_reset,
- sqlite3_clear_bindings,
- sqlite3_column_count,
- sqlite3_data_count,
- sqlite3_column_type,
- sqlite3_column_bytes,
- sqlite3_column_int,
- sqlite3_column_int64,
- sqlite3_column_double,
- sqlite3_column_text,
- sqlite3_column_name,
- sqlite3_column_decltype,
- sqlite3_finalize,
- sqlite3_errmsg,
- sqlite3_errstr,
- sqlite3_errcode,
- sqlite3_extended_errcode,
- sqlite3_extended_result_codes,
- sqlite3_free,
- SQLiteTransient;
- CONST
- SQLiteOk = 0;
- SQLiteError = 1;
- SQLiteInternal = 2;
- SQLitePerm = 3;
- SQLiteAbort = 4;
- SQLiteBusy = 5;
- SQLiteLocked = 6;
- SQLiteNoMem = 7;
- SQLiteReadOnly = 8;
- SQLiteInterrupt = 9;
- SQLiteIoErr = 10;
- SQLiteCorrupt = 11;
- SQLiteNotFound = 12;
- SQLiteFull = 13;
- SQLiteCantOpen = 14;
- SQLiteProtocol = 15;
- SQLiteEmpty = 16;
- SQLiteSchema = 17;
- SQLiteTooBig = 18;
- SQLiteConstraint = 19;
- SQLiteMismatch = 20;
- SQLiteMisuse = 21;
- SQLiteNoLfs = 22;
- SQLiteAuth = 23;
- SQLiteFormat = 24;
- SQLiteRange = 25;
- SQLiteNotADb = 26;
- SQLiteNotice = 27;
- SQLiteWarning = 28;
- SQLiteRow = 100;
- SQLiteDone = 101;
- SQLiteInteger = 1;
- SQLiteFloat = 2;
- SQLiteText = 3;
- SQLiteBlob = 4;
- SQLiteNull = 5;
- SQLiteConstraintPrimaryKey = 1555;
- SQLiteConstraintUnique = 2067;
- PROCEDURE sqlite3_open (filename : ARRAY OF CHAR;
- VAR db : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_exec (db : ADDRESS;
- sql : ARRAY OF CHAR;
- callback, arg : ADDRESS;
- VAR errmsg : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_close (db : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_prepare_v2 (db : ADDRESS;
- sql : ARRAY OF CHAR;
- nBytes : INTEGER;
- VAR stmt : ADDRESS;
- tail : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_bind_int (stmt : ADDRESS;
- idx : INTEGER;
- value : INTEGER) : INTEGER;
- PROCEDURE sqlite3_bind_int64 (stmt : ADDRESS;
- idx : INTEGER;
- value : LONGINT) : INTEGER;
- PROCEDURE sqlite3_bind_double (stmt : ADDRESS;
- idx : INTEGER;
- value : REAL) : INTEGER;
- PROCEDURE sqlite3_bind_null (stmt : ADDRESS;
- idx : INTEGER) : INTEGER;
- PROCEDURE sqlite3_bind_text (stmt : ADDRESS;
- idx : INTEGER;
- value : ARRAY OF CHAR;
- nBytes : INTEGER;
- destructor : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_step (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_reset (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_clear_bindings (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_column_count (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_data_count (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_column_type (stmt : ADDRESS;
- col : INTEGER) : INTEGER;
- PROCEDURE sqlite3_column_bytes (stmt : ADDRESS;
- col : INTEGER) : INTEGER;
- PROCEDURE sqlite3_column_int (stmt : ADDRESS;
- col : INTEGER) : INTEGER;
- PROCEDURE sqlite3_column_int64 (stmt : ADDRESS;
- col : INTEGER) : LONGINT;
- PROCEDURE sqlite3_column_double (stmt : ADDRESS;
- col : INTEGER) : REAL;
- PROCEDURE sqlite3_column_text (stmt : ADDRESS;
- col : INTEGER) : CString;
- PROCEDURE sqlite3_column_name (stmt : ADDRESS;
- col : INTEGER) : CString;
- PROCEDURE sqlite3_column_decltype (stmt : ADDRESS;
- col : INTEGER) : CString;
- PROCEDURE sqlite3_finalize (stmt : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_errmsg (db : ADDRESS) : CString;
- PROCEDURE sqlite3_errstr (code : INTEGER) : CString;
- PROCEDURE sqlite3_errcode (db : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_extended_errcode (db : ADDRESS) : INTEGER;
- PROCEDURE sqlite3_extended_result_codes (db : ADDRESS;
- onoff : INTEGER) : INTEGER;
- PROCEDURE sqlite3_free (p : ADDRESS);
- PROCEDURE SQLiteTransient () : ADDRESS;
- EXTERNAL "m2_sqlite_transient";
- (* The SQLITE_TRANSIENT destructor sentinel: SQLite copies bound text. *)
- END SQLite.
|