@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.
- package/README.md +565 -3
- package/dist/lib/darwin_aarch64/include/selva/db.h +1 -1
- package/dist/lib/darwin_aarch64/include/selva/fields.h +0 -2
- package/dist/lib/darwin_aarch64/libdeflate.dylib +0 -0
- package/dist/lib/darwin_aarch64/libjemalloc_selva.2.dylib +0 -0
- package/dist/lib/darwin_aarch64/libnode-v20.node +0 -0
- package/dist/lib/darwin_aarch64/libselva.dylib +0 -0
- package/dist/src/client/flushModify.d.ts +1 -1
- package/dist/src/client/flushModify.js +5 -4
- package/dist/src/client/index.d.ts +3 -2
- package/dist/src/client/modify/binary.js +1 -1
- package/dist/src/client/modify/cardinality.js +1 -1
- package/dist/src/client/modify/references/appendEdgeRefs.js +3 -0
- package/dist/src/client/modify/references/edge.js +6 -0
- package/dist/src/client/modify/references/getEdgeSize.js +1 -1
- package/dist/src/client/modify/string.js +10 -4
- package/dist/src/client/modify/text.js +1 -9
- package/dist/src/client/modify/types.d.ts +1 -0
- package/dist/src/client/modify/types.js +1 -0
- package/dist/src/client/modify/upsert.js +33 -21
- package/dist/src/client/query/BasedDbQuery.js +1 -1
- package/dist/src/client/query/BasedIterable.d.ts +2 -2
- package/dist/src/client/query/BasedIterable.js +7 -1
- package/dist/src/client/query/aggregates/aggregation.d.ts +4 -0
- package/dist/src/client/query/aggregates/aggregation.js +12 -0
- package/dist/src/client/query/aggregation.d.ts +1 -1
- package/dist/src/client/query/debug.js +3 -2
- package/dist/src/client/query/display.js +1 -1
- package/dist/src/client/query/filter/createFixedFilterBuffer.js +1 -1
- package/dist/src/client/query/filter/createVariableFilterBuffer.js +1 -1
- package/dist/src/client/query/filter/parseFilterValue.js +1 -2
- package/dist/src/client/query/queryDef.js +2 -2
- package/dist/src/client/query/read/read.js +4 -14
- package/dist/src/client/query/registerQuery.js +1 -1
- package/dist/src/client/query/search/index.d.ts +1 -1
- package/dist/src/client/query/search/index.js +1 -1
- package/dist/src/client/query/sort.d.ts +1 -1
- package/dist/src/client/query/toBuffer.js +11 -15
- package/dist/src/client/query/types.d.ts +7 -0
- package/dist/src/client/query/types.js +8 -0
- package/dist/src/client/query/validation.d.ts +1 -1
- package/dist/src/client/query/validation.js +4 -5
- package/dist/src/client/string.js +1 -3
- package/dist/src/client/xxHash64.d.ts +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +5 -1
- package/dist/src/native.d.ts +1 -2
- package/dist/src/native.js +2 -5
- package/dist/src/server/csmt/draw-dot.d.ts +3 -1
- package/dist/src/server/csmt/draw-dot.js +7 -2
- package/dist/src/server/csmt/match.d.ts +1 -1
- package/dist/src/server/csmt/memebership-proof.d.ts +1 -1
- package/dist/src/server/csmt/tree-utils.d.ts +4 -4
- package/dist/src/server/csmt/tree.d.ts +1 -1
- package/dist/src/server/csmt/tree.js +1 -1
- package/dist/src/server/csmt/types.d.ts +10 -10
- package/dist/src/server/dbHash.d.ts +1 -1
- package/dist/src/server/dbHash.js +1 -1
- package/dist/src/server/index.d.ts +8 -4
- package/dist/src/server/index.js +28 -13
- package/dist/src/server/migrate/worker.js +11 -0
- package/dist/src/server/save.js +3 -2
- package/dist/src/server/start.js +9 -5
- package/dist/src/utils.d.ts +0 -10
- package/dist/src/utils.js +0 -152
- package/package.json +3 -3
- package/dist/lib/darwin_aarch64/include/selva/xxhash64.h +0 -23
- package/dist/lib/darwin_aarch64/libnode-v21.node +0 -0
- package/dist/lib/darwin_aarch64/libnode-v22.node +0 -0
- package/dist/lib/darwin_aarch64/libnode-v23.node +0 -0
- package/dist/lib/linux_aarch64/include/cdefs.h +0 -317
- package/dist/lib/linux_aarch64/include/jemalloc.h +0 -468
- package/dist/lib/linux_aarch64/include/libdeflate.h +0 -322
- package/dist/lib/linux_aarch64/include/libdeflate_strings.h +0 -35
- package/dist/lib/linux_aarch64/include/linker_set.h +0 -109
- package/dist/lib/linux_aarch64/include/queue.h +0 -627
- package/dist/lib/linux_aarch64/include/selva/_export.h +0 -7
- package/dist/lib/linux_aarch64/include/selva/align.h +0 -9
- package/dist/lib/linux_aarch64/include/selva/backoff_timeout.h +0 -29
- package/dist/lib/linux_aarch64/include/selva/bitmap.h +0 -95
- package/dist/lib/linux_aarch64/include/selva/crc32c.h +0 -17
- package/dist/lib/linux_aarch64/include/selva/ctime.h +0 -135
- package/dist/lib/linux_aarch64/include/selva/db.h +0 -418
- package/dist/lib/linux_aarch64/include/selva/endian.h +0 -301
- package/dist/lib/linux_aarch64/include/selva/fast_linear_search.h +0 -23
- package/dist/lib/linux_aarch64/include/selva/fast_memcmp.h +0 -18
- package/dist/lib/linux_aarch64/include/selva/fast_memmem.h +0 -11
- package/dist/lib/linux_aarch64/include/selva/fast_parsei.h +0 -36
- package/dist/lib/linux_aarch64/include/selva/fields.h +0 -383
- package/dist/lib/linux_aarch64/include/selva/find.h +0 -47
- package/dist/lib/linux_aarch64/include/selva/history.h +0 -64
- package/dist/lib/linux_aarch64/include/selva/hll.h +0 -81
- package/dist/lib/linux_aarch64/include/selva/lpf.h +0 -28
- package/dist/lib/linux_aarch64/include/selva/node_id_set.h +0 -43
- package/dist/lib/linux_aarch64/include/selva/poptop.h +0 -114
- package/dist/lib/linux_aarch64/include/selva/queue_r.h +0 -190
- package/dist/lib/linux_aarch64/include/selva/selva_hash128.h +0 -49
- package/dist/lib/linux_aarch64/include/selva/selva_lang.h +0 -105
- package/dist/lib/linux_aarch64/include/selva/selva_math.h +0 -37
- package/dist/lib/linux_aarch64/include/selva/selva_string.h +0 -674
- package/dist/lib/linux_aarch64/include/selva/sort.h +0 -140
- package/dist/lib/linux_aarch64/include/selva/strsearch.h +0 -43
- package/dist/lib/linux_aarch64/include/selva/timestamp.h +0 -25
- package/dist/lib/linux_aarch64/include/selva/traverse.h +0 -65
- package/dist/lib/linux_aarch64/include/selva/types.h +0 -106
- package/dist/lib/linux_aarch64/include/selva/vector.h +0 -35
- package/dist/lib/linux_aarch64/include/selva/worker_ctx.h +0 -13
- package/dist/lib/linux_aarch64/include/selva/xxhash64.h +0 -23
- package/dist/lib/linux_aarch64/include/selva_error.h +0 -137
- package/dist/lib/linux_aarch64/include/selva_lang_code.h +0 -157
- package/dist/lib/linux_aarch64/include/tree.h +0 -852
- package/dist/lib/linux_aarch64/libdeflate.so +0 -0
- package/dist/lib/linux_aarch64/libjemalloc_selva.so.2 +0 -0
- package/dist/lib/linux_aarch64/libnode-v20.node +0 -0
- package/dist/lib/linux_aarch64/libnode-v21.node +0 -0
- package/dist/lib/linux_aarch64/libnode-v22.node +0 -0
- package/dist/lib/linux_aarch64/libnode-v23.node +0 -0
- package/dist/lib/linux_aarch64/libselva.so +0 -0
- package/dist/lib/linux_aarch64/libxxhash.so.0 +0 -0
- package/dist/lib/linux_x86_64/include/cdefs.h +0 -317
- package/dist/lib/linux_x86_64/include/jemalloc.h +0 -468
- package/dist/lib/linux_x86_64/include/libdeflate.h +0 -322
- package/dist/lib/linux_x86_64/include/libdeflate_strings.h +0 -35
- package/dist/lib/linux_x86_64/include/linker_set.h +0 -109
- package/dist/lib/linux_x86_64/include/queue.h +0 -627
- package/dist/lib/linux_x86_64/include/selva/_export.h +0 -7
- package/dist/lib/linux_x86_64/include/selva/align.h +0 -9
- package/dist/lib/linux_x86_64/include/selva/backoff_timeout.h +0 -29
- package/dist/lib/linux_x86_64/include/selva/bitmap.h +0 -95
- package/dist/lib/linux_x86_64/include/selva/crc32c.h +0 -17
- package/dist/lib/linux_x86_64/include/selva/ctime.h +0 -135
- package/dist/lib/linux_x86_64/include/selva/db.h +0 -418
- package/dist/lib/linux_x86_64/include/selva/endian.h +0 -301
- package/dist/lib/linux_x86_64/include/selva/fast_linear_search.h +0 -23
- package/dist/lib/linux_x86_64/include/selva/fast_memcmp.h +0 -18
- package/dist/lib/linux_x86_64/include/selva/fast_memmem.h +0 -11
- package/dist/lib/linux_x86_64/include/selva/fast_parsei.h +0 -36
- package/dist/lib/linux_x86_64/include/selva/fields.h +0 -383
- package/dist/lib/linux_x86_64/include/selva/find.h +0 -47
- package/dist/lib/linux_x86_64/include/selva/history.h +0 -64
- package/dist/lib/linux_x86_64/include/selva/hll.h +0 -81
- package/dist/lib/linux_x86_64/include/selva/lpf.h +0 -28
- package/dist/lib/linux_x86_64/include/selva/node_id_set.h +0 -43
- package/dist/lib/linux_x86_64/include/selva/poptop.h +0 -114
- package/dist/lib/linux_x86_64/include/selva/queue_r.h +0 -190
- package/dist/lib/linux_x86_64/include/selva/selva_hash128.h +0 -49
- package/dist/lib/linux_x86_64/include/selva/selva_lang.h +0 -105
- package/dist/lib/linux_x86_64/include/selva/selva_math.h +0 -37
- package/dist/lib/linux_x86_64/include/selva/selva_string.h +0 -674
- package/dist/lib/linux_x86_64/include/selva/sort.h +0 -140
- package/dist/lib/linux_x86_64/include/selva/strsearch.h +0 -43
- package/dist/lib/linux_x86_64/include/selva/timestamp.h +0 -25
- package/dist/lib/linux_x86_64/include/selva/traverse.h +0 -65
- package/dist/lib/linux_x86_64/include/selva/types.h +0 -106
- package/dist/lib/linux_x86_64/include/selva/vector.h +0 -35
- package/dist/lib/linux_x86_64/include/selva/worker_ctx.h +0 -13
- package/dist/lib/linux_x86_64/include/selva/xxhash64.h +0 -23
- package/dist/lib/linux_x86_64/include/selva_error.h +0 -137
- package/dist/lib/linux_x86_64/include/selva_lang_code.h +0 -157
- package/dist/lib/linux_x86_64/include/tree.h +0 -852
- package/dist/lib/linux_x86_64/libdeflate.so +0 -0
- package/dist/lib/linux_x86_64/libjemalloc_selva.so.2 +0 -0
- package/dist/lib/linux_x86_64/libnode-v20.node +0 -0
- package/dist/lib/linux_x86_64/libnode-v21.node +0 -0
- package/dist/lib/linux_x86_64/libnode-v22.node +0 -0
- package/dist/lib/linux_x86_64/libnode-v23.node +0 -0
- package/dist/lib/linux_x86_64/libselva.so +0 -0
- package/dist/lib/linux_x86_64/libxxhash.so.0 +0 -0
- package/dist/src/client/query/subscription/markers.d.ts +0 -10
- package/dist/src/client/query/subscription/markers.js +0 -213
- package/dist/src/client/query/subscription/run.d.ts +0 -5
- 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
|
-
}
|