Blame


1 e84153de 2023-12-31 op // This is free and unencumbered software released into the public domain.
2 e84153de 2023-12-31 op //
3 e84153de 2023-12-31 op // Anyone is free to copy, modify, publish, use, compile, sell, or
4 e84153de 2023-12-31 op // distribute this software, either in source code form or as a compiled
5 e84153de 2023-12-31 op // binary, for any purpose, commercial or non-commercial, and by any
6 e84153de 2023-12-31 op // means.
7 e84153de 2023-12-31 op //
8 e84153de 2023-12-31 op // In jurisdictions that recognize copyright laws, the author or authors
9 e84153de 2023-12-31 op // of this software dedicate any and all copyright interest in the
10 e84153de 2023-12-31 op // software to the public domain. We make this dedication for the benefit
11 e84153de 2023-12-31 op // of the public at large and to the detriment of our heirs and
12 e84153de 2023-12-31 op // successors. We intend this dedication to be an overt act of
13 e84153de 2023-12-31 op // relinquishment in perpetuity of all present and future rights to this
14 e84153de 2023-12-31 op // software under copyright law.
15 e84153de 2023-12-31 op //
16 e84153de 2023-12-31 op // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 e84153de 2023-12-31 op // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 e84153de 2023-12-31 op // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19 e84153de 2023-12-31 op // IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20 e84153de 2023-12-31 op // OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21 e84153de 2023-12-31 op // ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 e84153de 2023-12-31 op // OTHER DEALINGS IN THE SOFTWARE.
23 e84153de 2023-12-31 op
24 e84153de 2023-12-31 op def sqlite_ok: int = 0;
25 e84153de 2023-12-31 op def sqlite_row: int = 100;
26 e84153de 2023-12-31 op def sqlite_done: int = 101;
27 e84153de 2023-12-31 op
28 e84153de 2023-12-31 op export type sqlite_error = !void;
29 e84153de 2023-12-31 op export type sqlite_internal = !void;
30 e84153de 2023-12-31 op export type sqlite_perm = !void;
31 e84153de 2023-12-31 op export type sqlite_abort = !void;
32 e84153de 2023-12-31 op export type sqlite_busy = !void;
33 e84153de 2023-12-31 op export type sqlite_locked = !void;
34 e84153de 2023-12-31 op // ...
35 e84153de 2023-12-31 op export type sqlite_unknown_error = !void;
36 e84153de 2023-12-31 op
37 e84153de 2023-12-31 op export type error = !(sqlite_error | sqlite_internal | sqlite_perm |
38 e84153de 2023-12-31 op sqlite_abort | sqlite_busy | sqlite_locked |
39 e84153de 2023-12-31 op sqlite_unknown_error);
40 e84153de 2023-12-31 op
41 e84153de 2023-12-31 op export fn strerror(err: error) str = {
42 e84153de 2023-12-31 op return "";
43 e84153de 2023-12-31 op };
44 e84153de 2023-12-31 op
45 e84153de 2023-12-31 op fn code2err(code: int) error = {
46 e84153de 2023-12-31 op switch (code) {
47 e84153de 2023-12-31 op case 1 => return sqlite_error;
48 e84153de 2023-12-31 op case => return sqlite_unknown_error;
49 e84153de 2023-12-31 op };
50 e84153de 2023-12-31 op };