[vala] sqlite3: add many missing bindings



commit 90e32db5350223d59e68ae252a5580c40b926477
Author: Evan Nemerson <evan coeus-group com>
Date:   Mon Apr 19 02:17:23 2010 -0700

    sqlite3: add many missing bindings

 vapi/sqlite3.vapi |  147 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 135 insertions(+), 12 deletions(-)
---
diff --git a/vapi/sqlite3.vapi b/vapi/sqlite3.vapi
index 43d71e0..3b680e6 100644
--- a/vapi/sqlite3.vapi
+++ b/vapi/sqlite3.vapi
@@ -29,8 +29,8 @@ namespace Sqlite {
 		public int busy_timeout (int ms);
 		public int changes ();
 		[CCode (cname = "sqlite3_exec")]
-		private int _exec (string sql, Callback? sqlite3_callback = null, out unowned string errmsg = null);
-		[CCode (cname = "_vala_sqlite3_exec")]
+		public int _exec (string sql, Callback? sqlite3_callback = null, out unowned string errmsg = null);
+		[CCode (cname = "_sqlite3_exec")]
 		public int exec (string sql, Callback? sqlite3_callback = null, out string errmsg = null) {
 			unowned string sqlite_errmsg;
 			var ec = this._exec (sql, sqlite3_callback, out sqlite_errmsg);
@@ -44,12 +44,13 @@ namespace Sqlite {
 		public int get_autocommit ();
 		public void interrupt ();
 		public int64 last_insert_rowid ();
+		public int limit (Sqlite.Limit id, int new_val);
 		public int total_changes ();
 		public int complete (string sql);
 		[CCode (cname = "sqlite3_get_table")]
-		private int _get_table (string sql, [CCode (array_length = false)] out unowned string[] resultp, out int nrow, out int ncolumn, out unowned string? errmsg = null);
+		public int _get_table (string sql, [CCode (array_length = false)] out unowned string[] resultp, out int nrow, out int ncolumn, out unowned string? errmsg = null);
 		private static void free_table ([CCode (array_length = false)] string[] result);
-		[CCode (cname = "_vala_sqlite3_get_table")]
+		[CCode (cname = "_sqlite3_get_table")]
 		public int get_table (string sql, out string[] resultp, out int nrow, out int ncolumn, out string? errmsg = null) {
 			unowned string sqlite_errmsg;
 			unowned string[] sqlite_resultp;
@@ -72,18 +73,24 @@ namespace Sqlite {
 		public static int open_v2 (string filename, out Database db, int flags = OPEN_READWRITE | OPEN_CREATE, string? zVfs = null);
 		public int errcode ();
 		public unowned string errmsg ();
+		public unowned Sqlite.Statement next_stmt (Sqlite.Statement? current);
 		public int prepare (string sql, int n_bytes, out Statement stmt, out unowned string tail = null);
 		public int prepare_v2 (string sql, int n_bytes, out Statement stmt, out unowned string tail = null);
+		public int set_authorizer (AuthorizeCallback? auth);
+		[CCode (cname = "sqlite3_db_status")]
+		public int status (Sqlite.DatabaseStatus op, out int pCurrent, out int pHighwater, int resetFlag = 0);
+		public int table_column_metadata (string db_name, string table_name, string column_name, out string? data_type, out string? collation_sequence, out int? not_null, out int? primary_key, out int? auto_increment);
 		public void trace (TraceCallback? xtrace);
 		public void profile (ProfileCallback? xprofile);
 		public void progress_handler (int n_opcodes, Sqlite.ProgressCallback? progress_handler);
 		public void commit_hook (CommitCallback? commit_hook);
 		public void rollback_hook (RollbackCallback? rollback_hook);
-		[CCode (simple_generics = true)]
 		public int create_function (string zFunctionName, int nArg, int eTextRep, void * user_data, UserFuncCallback? xFunc, UserFuncCallback? xStep, UserFuncFinishCallback? xFinal);
 	}
 
 	[CCode (instance_pos = 0)]
+	public delegate int AuthorizeCallback (Sqlite.Action action, string? p1, string? p2, string db_name, string? responsible);
+	[CCode (instance_pos = 0)]
 	public delegate void TraceCallback (string message);
 	[CCode (instance_pos = 0)]
 	public delegate void ProfileCallback (string sql, uint64 time);
@@ -95,6 +102,26 @@ namespace Sqlite {
 	[CCode (has_target = false)]
 	public delegate void UserFuncFinishCallback (Sqlite.Context context);
 
+	public unowned string? compileoption_get (int n);
+	public int compileoption_used (string option_name);
+	public static int complete (string sql);
+	[CCode (sentinel = "")]
+	public static int config (Sqlite.Config op, ...);
+	public unowned string libversion ();
+	public int libversion_number ();
+	[PrintfFormat]
+	public void log (int error_code, string format, ...);
+	public unowned string sourceid ();
+	public static int status (Sqlite.Status op, out int pCurrent, out int pHighwater, int resetFlag = 0);
+	public static int threadsafe ();
+
+	[CCode (cname = "SQLITE_VERSION")]
+	public const string VERSION;
+	[CCode (cname = "SQLITE_VERSION_NUMBER")]
+	public const int VERSION_NUMBER;
+	[CCode (cname = "SQLITE_SOURCE_ID")]
+	public const string SOURCE_ID;
+
 	/* Dynamically Typed Value Object */
 	[Compact]
 	[CCode (cname = "sqlite3_value")]
@@ -211,6 +238,88 @@ namespace Sqlite {
 	[CCode (cname = "SQLITE_UTF16_ALIGNED")]
 	public const int UTF16_ALIGNED;
 
+	[CCode (cname = "int", cprefix = "SQLITE_")]
+	public enum Action {
+		CREATE_INDEX,
+		CREATE_TABLE,
+		CREATE_TEMP_INDEX,
+		CREATE_TEMP_TABLE,
+		CREATE_TEMP_TRIGGER,
+		CREATE_TEMP_VIEW,
+		CREATE_TRIGGER,
+		CREATE_VIEW,
+		DELETE,
+		DROP_INDEX,
+		DROP_TABLE,
+		DROP_TEMP_INDEX,
+		DROP_TEMP_TABLE,
+		DROP_TEMP_TRIGGER,
+		DROP_TEMP_VIEW,
+		DROP_TRIGGER,
+		DROP_VIEW,
+		INSERT,
+		PRAGMA,
+		READ,
+		SELECT,
+		TRANSACTION,
+		UPDATE,
+		ATTACH,
+		DETACH,
+		ALTER_TABLE,
+		REINDEX,
+		ANALYZE,
+		CREATE_VTABLE,
+		DROP_VTABLE,
+		FUNCTION,
+		SAVEPOINT,
+		COPY
+	}
+
+	[CCode (cname = "int", cprefix = "SQLITE_CONFIG_")]
+	public enum Config {
+		SINGLETHREAD,
+		MULTITHREAD,
+		SERIALIZED,
+		MALLOC,
+		GETMALLOC,
+		SCRATCH,
+		PAGECACHE,
+		HEAP,
+		MEMSTATUS,
+		MUTEX,
+		GETMUTEX,
+		LOOKASIDE,
+		PCACHE,
+		GETPCACHE,
+		LOG,
+	}
+
+	[CCode (cname = "int", cprefix = "SQLITE_DBSTATUS_")]
+	public enum DatabaseStatus {
+		LOOKASIDE_USED
+	}
+
+	[CCode (cname = "int", cprefix = "SQLITE_LIMIT_")]
+	public enum Limit {
+		LENGTH,
+		SQL_LENGTH,
+		COLUMN,
+		EXPR_DEPTH,
+		COMPOUND_SELECT,
+		VDBE_OP,
+		FUNCTION_ARG,
+		ATTACHED,
+		LIKE_PATTERN_LENGTH,
+		VARIABLE_NUMBER,
+		TRIGGER_DEPTH
+	}
+
+	[CCode (cname = "int", cprefix = "SQLITE_STMTSTATUS_")]
+	public enum StatementStatus {
+		FULLSCAN_STEP,
+		SORT
+	}
+
 	[CCode (cname = "int", cprefix = "SQLITE_STATUS_")]
 	public enum Status {
 		MEMORY_USED,
@@ -221,12 +330,7 @@ namespace Sqlite {
 		MALLOC_SIZE,
 		PARSER_STACK,
 		PAGECACHE_SIZE,
-		SCRATCH_SIZE,
-
-		[CCode (cname = "SQLITE_STMTSTATUS_FULLSCAN_STEP")]
-		STMT_FULLSCAN_STEP,
-		[CCode (cname = "SQLITE_STMTSTATUS_SORT")]
-		STMT_SORT
+		SCRATCH_SIZE
 	}
 
 	/* SQL Statement Object */
@@ -242,7 +346,7 @@ namespace Sqlite {
 		public unowned Database db_handle ();
 		public int reset ();
 		[CCode (cname = "sqlite3_stmt_status")]
-		public int status (Sqlite.Status op, int resetFlg);
+		public int status (Sqlite.StatementStatus op, int resetFlg = 0);
 		public int step ();
 		public int bind_blob (int index, void* value, int n, GLib.DestroyNotify destroy_notify);
 		public int bind_double (int index, double value);
@@ -271,6 +375,14 @@ namespace Sqlite {
 		public static void* realloc (void* mem, int n_bytes);
 		[CCode (cname = "sqlite3_free")]
 		public static void free (void* mem);
+		[CCode (cname = "sqlite3_release_memory")]
+		public static int release (int bytes);
+		[CCode (cname = "sqlite3_memory_used")]
+		public static int64 used ();
+		[CCode (cname = "sqlite3_memory_highwater")]
+		public static int64 highwater (int reset = 0);
+		[CCode (cname = "sqlite3_soft_heap_limit")]
+		public static void soft_heap_limit (int limit);
 	}
 
 	[Compact]
@@ -279,6 +391,8 @@ namespace Sqlite {
 		[CCode (cname = "sqlite3_mutex_alloc")]
 		public Mutex (int mutex_type = MUTEX_RECURSIVE);
 		public void enter ();
+		public int held ();
+		public int notheld ();
 		public int @try ();
 		public void leave ();
 	}
@@ -309,5 +423,14 @@ namespace Sqlite {
 		[CCode (cname = "sqlite3_aggregate_context")]
 		public void * aggregate (int n_bytes);
 	}
+
+	[Compact, CCode (cname = "sqlite3_backup", free_function = "sqlite3_backup_finish", cprefix = "sqlite3_backup_")]
+	public class Backup {
+		[CCode (cname = "sqlite3_backup_init")]
+		public Backup (Database dest, string dest_name, Database source, string source_name);
+		public int step (int nPage);
+		public int remaining ();
+		public int pagecount ();
+	}
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]