summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Vincent Rischmann2022-08-05 23:00:28 +0200
committerGravatar Vincent Rischmann2022-08-05 23:00:45 +0200
commit4c492de0f8fef67c41855bd503862874c6a2adce (patch)
tree62ed1463261ddfc6241987ca7573f00a306b290f
parentmove Text in sqlite.zig (diff)
downloadzig-sqlite-4c492de0f8fef67c41855bd503862874c6a2adce.tar.gz
zig-sqlite-4c492de0f8fef67c41855bd503862874c6a2adce.tar.xz
zig-sqlite-4c492de0f8fef67c41855bd503862874c6a2adce.zip
move versionGreaterThanOrEqualTo in sqlite.zig
We will need it later on.
-rw-r--r--errors.zig6
-rw-r--r--sqlite.zig5
2 files changed, 7 insertions, 4 deletions
diff --git a/errors.zig b/errors.zig
index 654e93d..2beef5f 100644
--- a/errors.zig
+++ b/errors.zig
@@ -3,6 +3,8 @@ const mem = std.mem;
3 3
4const c = @import("c.zig").c; 4const c = @import("c.zig").c;
5 5
6const versionGreaterThanOrEqualTo = @import("sqlite.zig").versionGreaterThanOrEqualTo;
7
6pub const SQLiteExtendedIOError = error{ 8pub const SQLiteExtendedIOError = error{
7 SQLiteIOErrRead, 9 SQLiteIOErrRead,
8 SQLiteIOErrShortRead, 10 SQLiteIOErrShortRead,
@@ -127,10 +129,6 @@ pub const Error = SQLiteError ||
127 SQLiteExtendedReadOnlyError || 129 SQLiteExtendedReadOnlyError ||
128 SQLiteExtendedConstraintError; 130 SQLiteExtendedConstraintError;
129 131
130fn versionGreaterThanOrEqualTo(major: u8, minor: u8, patch: u8) bool {
131 return c.SQLITE_VERSION_NUMBER >= @as(u32, major) * 1000000 + @as(u32, minor) * 1000 + @as(u32, patch);
132}
133
134pub fn errorFromResultCode(code: c_int) Error { 132pub fn errorFromResultCode(code: c_int) Error {
135 // These errors are only available since 3.22.0. 133 // These errors are only available since 3.22.0.
136 if (comptime versionGreaterThanOrEqualTo(3, 22, 0)) { 134 if (comptime versionGreaterThanOrEqualTo(3, 22, 0)) {
diff --git a/sqlite.zig b/sqlite.zig
index a6dc6f4..89ddd67 100644
--- a/sqlite.zig
+++ b/sqlite.zig
@@ -20,6 +20,11 @@ const getDetailedErrorFromResultCode = errors.getDetailedErrorFromResultCode;
20 20
21const logger = std.log.scoped(.sqlite); 21const logger = std.log.scoped(.sqlite);
22 22
23// versionGreaterThanOrEqualTo returns true if the SQLite version is >= to the major.minor.patch provided.
24pub fn versionGreaterThanOrEqualTo(major: u8, minor: u8, patch: u8) bool {
25 return c.SQLITE_VERSION_NUMBER >= @as(u32, major) * 1000000 + @as(u32, minor) * 1000 + @as(u32, patch);
26}
27
23/// Text is used to represent a SQLite TEXT value when binding a parameter or reading a column. 28/// Text is used to represent a SQLite TEXT value when binding a parameter or reading a column.
24pub const Text = struct { data: []const u8 }; 29pub const Text = struct { data: []const u8 };
25 30