Skip to content

Commit 253d5e6

Browse files
committed
Export all SQLite3 API functions, plus Emscripten utilities.
1 parent 83b377e commit 253d5e6

File tree

7 files changed

+482
-201
lines changed

7 files changed

+482
-201
lines changed

dist/wa-sqlite-async.mjs

Lines changed: 134 additions & 99 deletions
Large diffs are not rendered by default.

dist/wa-sqlite-async.wasm

55.5 KB
Binary file not shown.

dist/wa-sqlite.mjs

Lines changed: 129 additions & 95 deletions
Large diffs are not rendered by default.

dist/wa-sqlite.wasm

20.6 KB
Binary file not shown.

src/exported_functions.json

Lines changed: 204 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,55 +3,255 @@
33
"_main",
44
"_malloc",
55
"_free",
6+
"_sqlite3_aggregate_context",
7+
"_sqlite3_auto_extension",
8+
"_sqlite3_autovacuum_pages",
9+
"_sqlite3_backup_finish",
10+
"_sqlite3_backup_init",
11+
"_sqlite3_backup_pagecount",
12+
"_sqlite3_backup_remaining",
13+
"_sqlite3_backup_step",
614
"_sqlite3_bind_blob",
15+
"_sqlite3_bind_blob64",
716
"_sqlite3_bind_double",
817
"_sqlite3_bind_int",
918
"_sqlite3_bind_int64",
1019
"_sqlite3_bind_null",
11-
"_sqlite3_bind_parameter_name",
1220
"_sqlite3_bind_parameter_count",
21+
"_sqlite3_bind_parameter_index",
22+
"_sqlite3_bind_parameter_name",
23+
"_sqlite3_bind_pointer",
1324
"_sqlite3_bind_text",
25+
"_sqlite3_bind_text16",
26+
"_sqlite3_bind_text64",
27+
"_sqlite3_bind_value",
28+
"_sqlite3_bind_zeroblob",
29+
"_sqlite3_bind_zeroblob64",
30+
"_sqlite3_blob_bytes",
31+
"_sqlite3_blob_close",
32+
"_sqlite3_blob_open",
33+
"_sqlite3_blob_read",
34+
"_sqlite3_blob_reopen",
35+
"_sqlite3_blob_write",
36+
"_sqlite3_busy_handler",
37+
"_sqlite3_busy_timeout",
38+
"_sqlite3_cancel_auto_extension",
1439
"_sqlite3_changes",
40+
"_sqlite3_changes64",
1541
"_sqlite3_clear_bindings",
1642
"_sqlite3_close",
43+
"_sqlite3_close_v2",
44+
"_sqlite3_collation_needed",
45+
"_sqlite3_collation_needed16",
1746
"_sqlite3_column_blob",
1847
"_sqlite3_column_bytes",
48+
"_sqlite3_column_bytes16",
1949
"_sqlite3_column_count",
2050
"_sqlite3_column_double",
2151
"_sqlite3_column_int",
2252
"_sqlite3_column_int64",
2353
"_sqlite3_column_name",
54+
"_sqlite3_column_name16",
2455
"_sqlite3_column_text",
56+
"_sqlite3_column_text16",
2557
"_sqlite3_column_type",
58+
"_sqlite3_column_value",
59+
"_sqlite3_commit_hook",
60+
"_sqlite3_compileoption_get",
61+
"_sqlite3_compileoption_used",
62+
"_sqlite3_complete",
63+
"_sqlite3_complete16",
64+
"_sqlite3_config",
65+
"_sqlite3_context_db_handle",
66+
"_sqlite3_create_collation",
67+
"_sqlite3_create_collation16",
68+
"_sqlite3_create_collation_v2",
69+
"_sqlite3_create_filename",
70+
"_sqlite3_create_function",
71+
"_sqlite3_create_function16",
72+
"_sqlite3_create_function_v2",
73+
"_sqlite3_create_module",
74+
"_sqlite3_create_module_v2",
75+
"_sqlite3_create_window_function",
2676
"_sqlite3_data_count",
77+
"_sqlite3_database_file_object",
78+
"_sqlite3_db_cacheflush",
79+
"_sqlite3_db_config",
80+
"_sqlite3_db_filename",
81+
"_sqlite3_db_handle",
82+
"_sqlite3_db_mutex",
83+
"_sqlite3_db_name",
84+
"_sqlite3_db_readonly",
85+
"_sqlite3_db_release_memory",
86+
"_sqlite3_db_status",
2787
"_sqlite3_declare_vtab",
88+
"_sqlite3_deserialize",
89+
"_sqlite3_drop_modules",
90+
"_sqlite3_errcode",
2891
"_sqlite3_errmsg",
92+
"_sqlite3_errmsg16",
93+
"_sqlite3_error_offset",
94+
"_sqlite3_errstr",
2995
"_sqlite3_exec",
96+
"_sqlite3_expanded_sql",
97+
"_sqlite3_extended_errcode",
98+
"_sqlite3_extended_result_codes",
99+
"_sqlite3_file_control",
100+
"_sqlite3_filename_database",
101+
"_sqlite3_filename_journal",
102+
"_sqlite3_filename_wal",
30103
"_sqlite3_finalize",
31104
"_sqlite3_free",
105+
"_sqlite3_free_filename",
106+
"_sqlite3_free_table",
32107
"_sqlite3_get_autocommit",
108+
"_sqlite3_get_auxdata",
109+
"_sqlite3_get_clientdata",
110+
"_sqlite3_get_table",
111+
"_sqlite3_hard_heap_limit64",
112+
"_sqlite3_initialize",
113+
"_sqlite3_interrupt",
114+
"_sqlite3_is_interrupted",
115+
"_sqlite3_keyword_check",
116+
"_sqlite3_keyword_count",
117+
"_sqlite3_keyword_name",
118+
"_sqlite3_last_insert_rowid",
33119
"_sqlite3_libversion",
34120
"_sqlite3_libversion_number",
35121
"_sqlite3_limit",
122+
"_sqlite3_log",
36123
"_sqlite3_malloc",
124+
"_sqlite3_malloc64",
125+
"_sqlite3_memory_highwater",
126+
"_sqlite3_memory_used",
127+
"_sqlite3_mprintf",
128+
"_sqlite3_msize",
129+
"_sqlite3_next_stmt",
130+
"_sqlite3_open",
131+
"_sqlite3_open16",
37132
"_sqlite3_open_v2",
133+
"_sqlite3_os_end",
134+
"_sqlite3_os_init",
135+
"_sqlite3_overload_function",
136+
"_sqlite3_prepare",
137+
"_sqlite3_prepare16",
138+
"_sqlite3_prepare16_v2",
139+
"_sqlite3_prepare16_v3",
38140
"_sqlite3_prepare_v2",
141+
"_sqlite3_prepare_v3",
142+
"_sqlite3_progress_handler",
143+
"_sqlite3_randomness",
144+
"_sqlite3_realloc",
145+
"_sqlite3_realloc64",
146+
"_sqlite3_release_memory",
39147
"_sqlite3_reset",
40-
"_sqlite3_sql",
41-
"_sqlite3_step",
148+
"_sqlite3_reset_auto_extension",
42149
"_sqlite3_result_blob",
150+
"_sqlite3_result_blob64",
43151
"_sqlite3_result_double",
44152
"_sqlite3_result_error",
153+
"_sqlite3_result_error16",
154+
"_sqlite3_result_error_code",
155+
"_sqlite3_result_error_nomem",
156+
"_sqlite3_result_error_toobig",
45157
"_sqlite3_result_int",
46158
"_sqlite3_result_int64",
47159
"_sqlite3_result_null",
160+
"_sqlite3_result_pointer",
161+
"_sqlite3_result_subtype",
48162
"_sqlite3_result_text",
163+
"_sqlite3_result_text16",
164+
"_sqlite3_result_text16be",
165+
"_sqlite3_result_text16le",
166+
"_sqlite3_result_text64",
167+
"_sqlite3_result_value",
168+
"_sqlite3_result_zeroblob",
169+
"_sqlite3_result_zeroblob64",
170+
"_sqlite3_rollback_hook",
171+
"_sqlite3_serialize",
172+
"_sqlite3_set_authorizer",
173+
"_sqlite3_set_auxdata",
174+
"_sqlite3_set_clientdata",
175+
"_sqlite3_set_last_insert_rowid",
176+
"_sqlite3_shutdown",
177+
"_sqlite3_sleep",
178+
"_sqlite3_snprintf",
179+
"_sqlite3_soft_heap_limit64",
180+
"_sqlite3_sourceid",
181+
"_sqlite3_sql",
182+
"_sqlite3_status",
183+
"_sqlite3_status64",
184+
"_sqlite3_step",
185+
"_sqlite3_stmt_busy",
186+
"_sqlite3_stmt_explain",
187+
"_sqlite3_stmt_isexplain",
188+
"_sqlite3_stmt_readonly",
189+
"_sqlite3_stmt_status",
190+
"_sqlite3_str_append",
191+
"_sqlite3_str_appendall",
192+
"_sqlite3_str_appendchar",
193+
"_sqlite3_str_appendf",
194+
"_sqlite3_str_errcode",
195+
"_sqlite3_str_finish",
196+
"_sqlite3_str_length",
197+
"_sqlite3_str_new",
198+
"_sqlite3_str_reset",
199+
"_sqlite3_str_value",
200+
"_sqlite3_str_vappendf",
201+
"_sqlite3_strglob",
202+
"_sqlite3_stricmp",
203+
"_sqlite3_strlike",
204+
"_sqlite3_strnicmp",
205+
"_sqlite3_system_errno",
206+
"_sqlite3_table_column_metadata",
207+
"_sqlite3_test_control",
208+
"_sqlite3_threadsafe",
209+
"_sqlite3_total_changes",
210+
"_sqlite3_total_changes64",
211+
"_sqlite3_trace_v2",
212+
"_sqlite3_txn_state",
213+
"_sqlite3_update_hook",
214+
"_sqlite3_uri_boolean",
215+
"_sqlite3_uri_int64",
216+
"_sqlite3_uri_key",
217+
"_sqlite3_uri_parameter",
218+
"_sqlite3_user_data",
49219
"_sqlite3_value_blob",
50220
"_sqlite3_value_bytes",
221+
"_sqlite3_value_bytes16",
51222
"_sqlite3_value_double",
223+
"_sqlite3_value_dup",
224+
"_sqlite3_value_encoding",
225+
"_sqlite3_value_free",
226+
"_sqlite3_value_frombind",
52227
"_sqlite3_value_int",
53228
"_sqlite3_value_int64",
229+
"_sqlite3_value_nochange",
230+
"_sqlite3_value_numeric_type",
231+
"_sqlite3_value_pointer",
232+
"_sqlite3_value_subtype",
54233
"_sqlite3_value_text",
234+
"_sqlite3_value_text16",
235+
"_sqlite3_value_text16be",
236+
"_sqlite3_value_text16le",
55237
"_sqlite3_value_type",
56-
"_sqlite3_vfs_find"
238+
"_sqlite3_version",
239+
"_sqlite3_vfs_find",
240+
"_sqlite3_vfs_register",
241+
"_sqlite3_vfs_unregister",
242+
"_sqlite3_vmprintf",
243+
"_sqlite3_vsnprintf",
244+
"_sqlite3_vtab_collation",
245+
"_sqlite3_vtab_config",
246+
"_sqlite3_vtab_distinct",
247+
"_sqlite3_vtab_in",
248+
"_sqlite3_vtab_in_first",
249+
"_sqlite3_vtab_in_next",
250+
"_sqlite3_vtab_nochange",
251+
"_sqlite3_vtab_on_conflict",
252+
"_sqlite3_vtab_rhs_value",
253+
"_sqlite3_wal_autocheckpoint",
254+
"_sqlite3_wal_checkpoint",
255+
"_sqlite3_wal_checkpoint_v2",
256+
"_sqlite3_wal_hook"
57257
]
Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
[
2+
"addFunction",
23
"ccall",
34
"cwrap",
45
"getTempRet0",
56
"getValue",
67
"setValue",
7-
"UTF8ToString",
8+
"lengthBytesUTF8",
89
"stringToUTF8",
9-
"lengthBytesUTF8"
10+
"stringToUTF16",
11+
"stringToUTF32",
12+
"AsciiToString",
13+
"UTF8ToString",
14+
"UTF16ToString",
15+
"UTF32ToString",
16+
"intArrayFromString",
17+
"intArrayToString",
18+
"writeArrayToMemory"
1019
]

src/libvfs.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,13 @@ const vfs_methods = {
33
$vfs_method_support__postset: 'vfs_method_support();',
44
$vfs_method_support: function() {
55
const hasAsyncify = typeof Asyncify === 'object';
6+
if (hasAsyncify) {
7+
Module['handleAsync'] = Asyncify.handleAsync;
8+
}
69

710
const mapIdToVFS = new Map();
811
const mapFileToVFS = new Map();
9-
12+
1013
Module['registerVFS'] = function(vfs, makeDefault) {
1114
const vfsAlreadyRegistered = ccall('sqlite3_vfs_find', 'number', ['string'],
1215
[vfs.name]);

0 commit comments

Comments
 (0)