@based/db 0.0.31 → 0.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/README.md +565 -3
  2. package/dist/lib/darwin_aarch64/include/selva/db.h +1 -1
  3. package/dist/lib/darwin_aarch64/include/selva/fields.h +0 -2
  4. package/dist/lib/darwin_aarch64/libdeflate.dylib +0 -0
  5. package/dist/lib/darwin_aarch64/libjemalloc_selva.2.dylib +0 -0
  6. package/dist/lib/darwin_aarch64/libnode-v20.node +0 -0
  7. package/dist/lib/darwin_aarch64/libselva.dylib +0 -0
  8. package/dist/src/client/flushModify.d.ts +1 -1
  9. package/dist/src/client/flushModify.js +5 -4
  10. package/dist/src/client/index.d.ts +3 -2
  11. package/dist/src/client/modify/binary.js +1 -1
  12. package/dist/src/client/modify/cardinality.js +1 -1
  13. package/dist/src/client/modify/references/appendEdgeRefs.js +3 -0
  14. package/dist/src/client/modify/references/edge.js +6 -0
  15. package/dist/src/client/modify/references/getEdgeSize.js +1 -1
  16. package/dist/src/client/modify/string.js +10 -4
  17. package/dist/src/client/modify/text.js +1 -9
  18. package/dist/src/client/modify/types.d.ts +1 -0
  19. package/dist/src/client/modify/types.js +1 -0
  20. package/dist/src/client/modify/upsert.js +33 -21
  21. package/dist/src/client/query/BasedDbQuery.js +1 -1
  22. package/dist/src/client/query/BasedIterable.d.ts +2 -2
  23. package/dist/src/client/query/BasedIterable.js +7 -1
  24. package/dist/src/client/query/aggregates/aggregation.d.ts +4 -0
  25. package/dist/src/client/query/aggregates/aggregation.js +12 -0
  26. package/dist/src/client/query/aggregation.d.ts +1 -1
  27. package/dist/src/client/query/debug.js +3 -2
  28. package/dist/src/client/query/display.js +1 -1
  29. package/dist/src/client/query/filter/createFixedFilterBuffer.js +1 -1
  30. package/dist/src/client/query/filter/createVariableFilterBuffer.js +1 -1
  31. package/dist/src/client/query/filter/parseFilterValue.js +1 -2
  32. package/dist/src/client/query/queryDef.js +2 -2
  33. package/dist/src/client/query/read/read.js +4 -14
  34. package/dist/src/client/query/registerQuery.js +1 -1
  35. package/dist/src/client/query/search/index.d.ts +1 -1
  36. package/dist/src/client/query/search/index.js +1 -1
  37. package/dist/src/client/query/sort.d.ts +1 -1
  38. package/dist/src/client/query/toBuffer.js +11 -15
  39. package/dist/src/client/query/types.d.ts +7 -0
  40. package/dist/src/client/query/types.js +8 -0
  41. package/dist/src/client/query/validation.d.ts +1 -1
  42. package/dist/src/client/query/validation.js +4 -5
  43. package/dist/src/client/string.js +1 -3
  44. package/dist/src/client/xxHash64.d.ts +1 -1
  45. package/dist/src/index.d.ts +1 -0
  46. package/dist/src/index.js +5 -1
  47. package/dist/src/native.d.ts +1 -2
  48. package/dist/src/native.js +2 -5
  49. package/dist/src/server/csmt/draw-dot.d.ts +3 -1
  50. package/dist/src/server/csmt/draw-dot.js +7 -2
  51. package/dist/src/server/csmt/match.d.ts +1 -1
  52. package/dist/src/server/csmt/memebership-proof.d.ts +1 -1
  53. package/dist/src/server/csmt/tree-utils.d.ts +4 -4
  54. package/dist/src/server/csmt/tree.d.ts +1 -1
  55. package/dist/src/server/csmt/tree.js +1 -1
  56. package/dist/src/server/csmt/types.d.ts +10 -10
  57. package/dist/src/server/dbHash.d.ts +1 -1
  58. package/dist/src/server/dbHash.js +1 -1
  59. package/dist/src/server/index.d.ts +8 -4
  60. package/dist/src/server/index.js +28 -13
  61. package/dist/src/server/migrate/worker.js +11 -0
  62. package/dist/src/server/save.js +3 -2
  63. package/dist/src/server/start.js +9 -5
  64. package/dist/src/utils.d.ts +0 -10
  65. package/dist/src/utils.js +0 -152
  66. package/package.json +3 -3
  67. package/dist/lib/darwin_aarch64/include/selva/xxhash64.h +0 -23
  68. package/dist/lib/darwin_aarch64/libnode-v21.node +0 -0
  69. package/dist/lib/darwin_aarch64/libnode-v22.node +0 -0
  70. package/dist/lib/darwin_aarch64/libnode-v23.node +0 -0
  71. package/dist/lib/linux_aarch64/include/cdefs.h +0 -317
  72. package/dist/lib/linux_aarch64/include/jemalloc.h +0 -468
  73. package/dist/lib/linux_aarch64/include/libdeflate.h +0 -322
  74. package/dist/lib/linux_aarch64/include/libdeflate_strings.h +0 -35
  75. package/dist/lib/linux_aarch64/include/linker_set.h +0 -109
  76. package/dist/lib/linux_aarch64/include/queue.h +0 -627
  77. package/dist/lib/linux_aarch64/include/selva/_export.h +0 -7
  78. package/dist/lib/linux_aarch64/include/selva/align.h +0 -9
  79. package/dist/lib/linux_aarch64/include/selva/backoff_timeout.h +0 -29
  80. package/dist/lib/linux_aarch64/include/selva/bitmap.h +0 -95
  81. package/dist/lib/linux_aarch64/include/selva/crc32c.h +0 -17
  82. package/dist/lib/linux_aarch64/include/selva/ctime.h +0 -135
  83. package/dist/lib/linux_aarch64/include/selva/db.h +0 -418
  84. package/dist/lib/linux_aarch64/include/selva/endian.h +0 -301
  85. package/dist/lib/linux_aarch64/include/selva/fast_linear_search.h +0 -23
  86. package/dist/lib/linux_aarch64/include/selva/fast_memcmp.h +0 -18
  87. package/dist/lib/linux_aarch64/include/selva/fast_memmem.h +0 -11
  88. package/dist/lib/linux_aarch64/include/selva/fast_parsei.h +0 -36
  89. package/dist/lib/linux_aarch64/include/selva/fields.h +0 -383
  90. package/dist/lib/linux_aarch64/include/selva/find.h +0 -47
  91. package/dist/lib/linux_aarch64/include/selva/history.h +0 -64
  92. package/dist/lib/linux_aarch64/include/selva/hll.h +0 -81
  93. package/dist/lib/linux_aarch64/include/selva/lpf.h +0 -28
  94. package/dist/lib/linux_aarch64/include/selva/node_id_set.h +0 -43
  95. package/dist/lib/linux_aarch64/include/selva/poptop.h +0 -114
  96. package/dist/lib/linux_aarch64/include/selva/queue_r.h +0 -190
  97. package/dist/lib/linux_aarch64/include/selva/selva_hash128.h +0 -49
  98. package/dist/lib/linux_aarch64/include/selva/selva_lang.h +0 -105
  99. package/dist/lib/linux_aarch64/include/selva/selva_math.h +0 -37
  100. package/dist/lib/linux_aarch64/include/selva/selva_string.h +0 -674
  101. package/dist/lib/linux_aarch64/include/selva/sort.h +0 -140
  102. package/dist/lib/linux_aarch64/include/selva/strsearch.h +0 -43
  103. package/dist/lib/linux_aarch64/include/selva/timestamp.h +0 -25
  104. package/dist/lib/linux_aarch64/include/selva/traverse.h +0 -65
  105. package/dist/lib/linux_aarch64/include/selva/types.h +0 -106
  106. package/dist/lib/linux_aarch64/include/selva/vector.h +0 -35
  107. package/dist/lib/linux_aarch64/include/selva/worker_ctx.h +0 -13
  108. package/dist/lib/linux_aarch64/include/selva/xxhash64.h +0 -23
  109. package/dist/lib/linux_aarch64/include/selva_error.h +0 -137
  110. package/dist/lib/linux_aarch64/include/selva_lang_code.h +0 -157
  111. package/dist/lib/linux_aarch64/include/tree.h +0 -852
  112. package/dist/lib/linux_aarch64/libdeflate.so +0 -0
  113. package/dist/lib/linux_aarch64/libjemalloc_selva.so.2 +0 -0
  114. package/dist/lib/linux_aarch64/libnode-v20.node +0 -0
  115. package/dist/lib/linux_aarch64/libnode-v21.node +0 -0
  116. package/dist/lib/linux_aarch64/libnode-v22.node +0 -0
  117. package/dist/lib/linux_aarch64/libnode-v23.node +0 -0
  118. package/dist/lib/linux_aarch64/libselva.so +0 -0
  119. package/dist/lib/linux_aarch64/libxxhash.so.0 +0 -0
  120. package/dist/lib/linux_x86_64/include/cdefs.h +0 -317
  121. package/dist/lib/linux_x86_64/include/jemalloc.h +0 -468
  122. package/dist/lib/linux_x86_64/include/libdeflate.h +0 -322
  123. package/dist/lib/linux_x86_64/include/libdeflate_strings.h +0 -35
  124. package/dist/lib/linux_x86_64/include/linker_set.h +0 -109
  125. package/dist/lib/linux_x86_64/include/queue.h +0 -627
  126. package/dist/lib/linux_x86_64/include/selva/_export.h +0 -7
  127. package/dist/lib/linux_x86_64/include/selva/align.h +0 -9
  128. package/dist/lib/linux_x86_64/include/selva/backoff_timeout.h +0 -29
  129. package/dist/lib/linux_x86_64/include/selva/bitmap.h +0 -95
  130. package/dist/lib/linux_x86_64/include/selva/crc32c.h +0 -17
  131. package/dist/lib/linux_x86_64/include/selva/ctime.h +0 -135
  132. package/dist/lib/linux_x86_64/include/selva/db.h +0 -418
  133. package/dist/lib/linux_x86_64/include/selva/endian.h +0 -301
  134. package/dist/lib/linux_x86_64/include/selva/fast_linear_search.h +0 -23
  135. package/dist/lib/linux_x86_64/include/selva/fast_memcmp.h +0 -18
  136. package/dist/lib/linux_x86_64/include/selva/fast_memmem.h +0 -11
  137. package/dist/lib/linux_x86_64/include/selva/fast_parsei.h +0 -36
  138. package/dist/lib/linux_x86_64/include/selva/fields.h +0 -383
  139. package/dist/lib/linux_x86_64/include/selva/find.h +0 -47
  140. package/dist/lib/linux_x86_64/include/selva/history.h +0 -64
  141. package/dist/lib/linux_x86_64/include/selva/hll.h +0 -81
  142. package/dist/lib/linux_x86_64/include/selva/lpf.h +0 -28
  143. package/dist/lib/linux_x86_64/include/selva/node_id_set.h +0 -43
  144. package/dist/lib/linux_x86_64/include/selva/poptop.h +0 -114
  145. package/dist/lib/linux_x86_64/include/selva/queue_r.h +0 -190
  146. package/dist/lib/linux_x86_64/include/selva/selva_hash128.h +0 -49
  147. package/dist/lib/linux_x86_64/include/selva/selva_lang.h +0 -105
  148. package/dist/lib/linux_x86_64/include/selva/selva_math.h +0 -37
  149. package/dist/lib/linux_x86_64/include/selva/selva_string.h +0 -674
  150. package/dist/lib/linux_x86_64/include/selva/sort.h +0 -140
  151. package/dist/lib/linux_x86_64/include/selva/strsearch.h +0 -43
  152. package/dist/lib/linux_x86_64/include/selva/timestamp.h +0 -25
  153. package/dist/lib/linux_x86_64/include/selva/traverse.h +0 -65
  154. package/dist/lib/linux_x86_64/include/selva/types.h +0 -106
  155. package/dist/lib/linux_x86_64/include/selva/vector.h +0 -35
  156. package/dist/lib/linux_x86_64/include/selva/worker_ctx.h +0 -13
  157. package/dist/lib/linux_x86_64/include/selva/xxhash64.h +0 -23
  158. package/dist/lib/linux_x86_64/include/selva_error.h +0 -137
  159. package/dist/lib/linux_x86_64/include/selva_lang_code.h +0 -157
  160. package/dist/lib/linux_x86_64/include/tree.h +0 -852
  161. package/dist/lib/linux_x86_64/libdeflate.so +0 -0
  162. package/dist/lib/linux_x86_64/libjemalloc_selva.so.2 +0 -0
  163. package/dist/lib/linux_x86_64/libnode-v20.node +0 -0
  164. package/dist/lib/linux_x86_64/libnode-v21.node +0 -0
  165. package/dist/lib/linux_x86_64/libnode-v22.node +0 -0
  166. package/dist/lib/linux_x86_64/libnode-v23.node +0 -0
  167. package/dist/lib/linux_x86_64/libselva.so +0 -0
  168. package/dist/lib/linux_x86_64/libxxhash.so.0 +0 -0
  169. package/dist/src/client/query/subscription/markers.d.ts +0 -10
  170. package/dist/src/client/query/subscription/markers.js +0 -213
  171. package/dist/src/client/query/subscription/run.d.ts +0 -5
  172. package/dist/src/client/query/subscription/run.js +0 -76
@@ -1,105 +0,0 @@
1
- /*
2
- * Copyright (c) 2022, 2024-2025 SAULX
3
- * SPDX-License-Identifier: MIT
4
- */
5
- #pragma once
6
-
7
- #if defined(__APPLE__) && __MACH__
8
- #include <xlocale.h>
9
- #endif
10
- #include <locale.h>
11
- #include <wchar.h>
12
- #include <wctype.h>
13
- #include "selva/_export.h"
14
- #include "selva_lang_code.h"
15
-
16
- #define SELVA_LANG_NAME_MAX 4ul
17
-
18
- struct libdeflate_decompressor;
19
- struct libdeflate_block_state;
20
-
21
- int selva_lang_set_fallback(const char *lang_str, size_t lang_len);
22
-
23
- /**
24
- * Get locale for a lang string.
25
- * @param lang_str is a pointer to the language name.
26
- * @param lang_len is the length of lang_str excluding any possible nul-character(s).
27
- * @returns a POSIX locale.
28
- */
29
- SELVA_EXPORT
30
- locale_t selva_lang_getlocale(const char *lang_str, size_t lang_len);
31
-
32
- SELVA_EXPORT
33
- locale_t selva_lang_getlocale2(enum selva_lang_code lang);
34
-
35
- /* TODO rename these */
36
- enum selva_langs_trans {
37
- SELVA_LANGS_TRANS_NONE = 0,
38
- SELVA_LANGS_TRANS_TOUPPER,
39
- SELVA_LANGS_TRANS_TOLOWER,
40
- SELVA_LANGS_TRANS_TOJHIRA, /*!< When lang is selva_lang_ja. */
41
- SELVA_LANGS_TRANS_TOJKATA, /*!< When lang is selva_lang_ja. */
42
- };
43
-
44
- SELVA_EXPORT
45
- wctrans_t selva_lang_wctrans(enum selva_lang_code lang, enum selva_langs_trans trans);
46
-
47
- /**
48
- * Transform a multibyte string.
49
- * @returns a selva_malloc'd c-string.
50
- */
51
- SELVA_EXPORT
52
- char *selva_mbstrans(locale_t loc, const char *src, size_t len, wctrans_t trans);
53
-
54
- /**
55
- * Read a symbol from a multibyte string.
56
- * @param wc symbol read from mbs_str.
57
- * @returns bytes consumed from mbs_str.
58
- */
59
- SELVA_EXPORT
60
- size_t selva_mbstowc(wchar_t *wc, const char *mbs_str, size_t mbs_len, mbstate_t *ps, wctrans_t trans, locale_t loc);
61
-
62
- /**
63
- * Compare two multibyte strings by transforming each character.
64
- * Unicode normalization and flattening is not supported.
65
- */
66
- SELVA_EXPORT
67
- int selva_mbscmp(const char *mbs1_str, size_t mbs1_len, const char *mbs2_str, size_t mbs2_len, wctrans_t trans, locale_t loc);
68
-
69
- SELVA_EXPORT
70
- int selva_deflate_mbscmp(
71
- struct libdeflate_decompressor *decompressor,
72
- struct libdeflate_block_state *state,
73
- const char *in_buf, size_t in_len,
74
- const char *mbs2_str, size_t mbs2_len,
75
- wctrans_t trans, locale_t loc);
76
-
77
- SELVA_EXPORT
78
- const char *selva_mbsstrstr(const char *mbs1_str, size_t mbs1_len, const char *mbs2_str, size_t mbs2_len, wctrans_t trans, locale_t loc);
79
-
80
- SELVA_EXPORT
81
- bool selva_deflate_mbsstrstr(
82
- struct libdeflate_decompressor *decompressor,
83
- struct libdeflate_block_state *state,
84
- const char *in_buf, size_t in_len,
85
- const void *needle_buf, size_t needle_len,
86
- wctrans_t trans, locale_t loc);
87
-
88
- /**
89
- * Constructs a value of type wctrans_t that describes a LC_CTYPE category of wide character mapping.
90
- * - "" none
91
- * - "toupper"
92
- * - "tolower"
93
- * - "tojhira" when lang is "jp"
94
- * - "tojkata" when lang is "jp"
95
- */
96
- static inline wctrans_t selva_wctrans(const char *class_str, size_t class_len, locale_t loc)
97
- {
98
- char charclass[16] = {};
99
-
100
- if (likely(class_len < sizeof(charclass))) {
101
- __builtin_memcpy(charclass, class_str, class_len);
102
- }
103
-
104
- return wctrans_l(charclass, loc);
105
- }
@@ -1,37 +0,0 @@
1
- /*
2
- * Copyright (c) 2022-2024 SAULX
3
- * SPDX-License-Identifier: MIT
4
- */
5
- #pragma once
6
- #include <math.h>
7
-
8
- static inline double nan_undefined(void)
9
- {
10
- return nan("1");
11
- }
12
-
13
- static inline int isnan_undefined(double x)
14
- {
15
- long long i;
16
-
17
- if (!isnan(x)) {
18
- return 0;
19
- }
20
-
21
- __builtin_memcpy(&i, &x, sizeof(i));
22
-
23
- return i & 1;
24
- }
25
-
26
- /**
27
- * Mod (%) like it is in JS.
28
- */
29
- static inline double js_fmod(double x, double y)
30
- {
31
- double result = remainder(fabs(x), (y = fabs(y)));
32
- if (signbit(result)) {
33
- result += y;
34
- }
35
-
36
- return copysign(result, x);
37
- }