From f0a1ca06d217f75834dfec92ff3b0f6eaf23e995 Mon Sep 17 00:00:00 2001 From: Vincent Rischmann Date: Sun, 20 Dec 2020 23:39:09 +0100 Subject: allow reading a bool field --- sqlite.zig | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'sqlite.zig') diff --git a/sqlite.zig b/sqlite.zig index f769237..d195811 100644 --- a/sqlite.zig +++ b/sqlite.zig @@ -348,6 +348,10 @@ pub fn Iterator(comptime Type: type) type { const f = c.sqlite3_column_double(self.stmt, i); @field(value, field.name) = f; }, + .Bool => { + const n = c.sqlite3_column_int64(self.stmt, i); + @field(value, field.name) = n > 0; + }, .Void => { @field(value, field.name) = {}; }, @@ -799,7 +803,7 @@ test "sqlite: read in an anonymous struct" { try db.init(testing.allocator, .{ .mode = dbMode() }); try addTestData(&db); - var stmt = try db.prepare("SELECT id, name, name, age FROM user WHERE id = ?{usize}"); + var stmt = try db.prepare("SELECT id, name, name, age, id FROM user WHERE id = ?{usize}"); defer stmt.deinit(); var row = try stmt.one( @@ -808,6 +812,7 @@ test "sqlite: read in an anonymous struct" { name: []const u8, name_2: [200:0xAD]u8, age: usize, + is_id: bool, }, .{ .allocator = &arena.allocator }, .{ .id = @as(usize, 20) }, -- cgit v1.2.3