summaryrefslogtreecommitdiffstats
path: root/third_party/rust/libsqlite3-sys/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/libsqlite3-sys/src/lib.rs')
-rw-r--r--third_party/rust/libsqlite3-sys/src/lib.rs47
1 files changed, 47 insertions, 0 deletions
diff --git a/third_party/rust/libsqlite3-sys/src/lib.rs b/third_party/rust/libsqlite3-sys/src/lib.rs
new file mode 100644
index 0000000000..5141df3911
--- /dev/null
+++ b/third_party/rust/libsqlite3-sys/src/lib.rs
@@ -0,0 +1,47 @@
+#![allow(non_snake_case, non_camel_case_types)]
+#![cfg_attr(test, allow(deref_nullptr))] // https://github.com/rust-lang/rust-bindgen/issues/2066
+
+// force linking to openssl
+#[cfg(feature = "bundled-sqlcipher-vendored-openssl")]
+extern crate openssl_sys;
+
+#[cfg(all(windows, feature = "winsqlite3", target_pointer_width = "32"))]
+compile_error!("The `libsqlite3-sys/winsqlite3` feature is not supported on 32 bit targets.");
+
+pub use self::error::*;
+
+use std::default::Default;
+use std::mem;
+
+mod error;
+
+#[must_use]
+pub fn SQLITE_STATIC() -> sqlite3_destructor_type {
+ None
+}
+
+#[must_use]
+pub fn SQLITE_TRANSIENT() -> sqlite3_destructor_type {
+ Some(unsafe { mem::transmute(-1_isize) })
+}
+
+#[allow(clippy::all)]
+mod bindings {
+ include!(concat!(env!("OUT_DIR"), "/bindgen.rs"));
+}
+pub use bindings::*;
+
+pub type sqlite3_index_constraint = sqlite3_index_info_sqlite3_index_constraint;
+pub type sqlite3_index_constraint_usage = sqlite3_index_info_sqlite3_index_constraint_usage;
+
+impl Default for sqlite3_vtab {
+ fn default() -> Self {
+ unsafe { mem::zeroed() }
+ }
+}
+
+impl Default for sqlite3_vtab_cursor {
+ fn default() -> Self {
+ unsafe { mem::zeroed() }
+ }
+}