@ohos-ports/lmdb 2.5.3-beta.0

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 (120) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +536 -0
  3. package/SECURITY.md +12 -0
  4. package/binding.gyp +111 -0
  5. package/build/Release/lmdb.node +0 -0
  6. package/caching.js +156 -0
  7. package/dependencies/lmdb/libraries/liblmdb/COPYRIGHT +20 -0
  8. package/dependencies/lmdb/libraries/liblmdb/Doxyfile +1631 -0
  9. package/dependencies/lmdb/libraries/liblmdb/LICENSE +47 -0
  10. package/dependencies/lmdb/libraries/liblmdb/Makefile +136 -0
  11. package/dependencies/lmdb/libraries/liblmdb/chacha8.c +183 -0
  12. package/dependencies/lmdb/libraries/liblmdb/chacha8.h +14 -0
  13. package/dependencies/lmdb/libraries/liblmdb/crypto.c +121 -0
  14. package/dependencies/lmdb/libraries/liblmdb/intro.doc +192 -0
  15. package/dependencies/lmdb/libraries/liblmdb/lmdb.h +1792 -0
  16. package/dependencies/lmdb/libraries/liblmdb/mdb.c +12429 -0
  17. package/dependencies/lmdb/libraries/liblmdb/mdb_copy.1 +74 -0
  18. package/dependencies/lmdb/libraries/liblmdb/mdb_copy.c +106 -0
  19. package/dependencies/lmdb/libraries/liblmdb/mdb_drop.1 +53 -0
  20. package/dependencies/lmdb/libraries/liblmdb/mdb_drop.c +154 -0
  21. package/dependencies/lmdb/libraries/liblmdb/mdb_dump.1 +94 -0
  22. package/dependencies/lmdb/libraries/liblmdb/mdb_dump.c +333 -0
  23. package/dependencies/lmdb/libraries/liblmdb/mdb_load.1 +97 -0
  24. package/dependencies/lmdb/libraries/liblmdb/mdb_load.c +530 -0
  25. package/dependencies/lmdb/libraries/liblmdb/mdb_stat.1 +83 -0
  26. package/dependencies/lmdb/libraries/liblmdb/mdb_stat.c +276 -0
  27. package/dependencies/lmdb/libraries/liblmdb/midl.c +452 -0
  28. package/dependencies/lmdb/libraries/liblmdb/midl.h +208 -0
  29. package/dependencies/lmdb/libraries/liblmdb/module.c +101 -0
  30. package/dependencies/lmdb/libraries/liblmdb/module.h +16 -0
  31. package/dependencies/lmdb/libraries/liblmdb/mtest.c +178 -0
  32. package/dependencies/lmdb/libraries/liblmdb/mtest2.c +124 -0
  33. package/dependencies/lmdb/libraries/liblmdb/mtest3.c +133 -0
  34. package/dependencies/lmdb/libraries/liblmdb/mtest4.c +168 -0
  35. package/dependencies/lmdb/libraries/liblmdb/mtest5.c +135 -0
  36. package/dependencies/lmdb/libraries/liblmdb/mtest6.c +141 -0
  37. package/dependencies/lmdb/libraries/liblmdb/mtest_enc.c +190 -0
  38. package/dependencies/lmdb/libraries/liblmdb/mtest_enc2.c +189 -0
  39. package/dependencies/lmdb/libraries/liblmdb/mtest_remap.c +177 -0
  40. package/dependencies/lmdb/libraries/liblmdb/sample-bdb.txt +73 -0
  41. package/dependencies/lmdb/libraries/liblmdb/sample-mdb.txt +62 -0
  42. package/dependencies/lmdb/libraries/liblmdb/tooltag +27 -0
  43. package/dependencies/lmdb-data-v1/libraries/liblmdb/COPYRIGHT +20 -0
  44. package/dependencies/lmdb-data-v1/libraries/liblmdb/Doxyfile +1631 -0
  45. package/dependencies/lmdb-data-v1/libraries/liblmdb/LICENSE +47 -0
  46. package/dependencies/lmdb-data-v1/libraries/liblmdb/Makefile +118 -0
  47. package/dependencies/lmdb-data-v1/libraries/liblmdb/intro.doc +192 -0
  48. package/dependencies/lmdb-data-v1/libraries/liblmdb/lmdb.h +1653 -0
  49. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb.c +11359 -0
  50. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_copy.1 +61 -0
  51. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_copy.c +84 -0
  52. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_drop.1 +40 -0
  53. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_drop.c +135 -0
  54. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_dump.1 +81 -0
  55. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_dump.c +319 -0
  56. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_load.1 +84 -0
  57. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_load.c +492 -0
  58. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_stat.1 +70 -0
  59. package/dependencies/lmdb-data-v1/libraries/liblmdb/mdb_stat.c +264 -0
  60. package/dependencies/lmdb-data-v1/libraries/liblmdb/midl.c +421 -0
  61. package/dependencies/lmdb-data-v1/libraries/liblmdb/midl.h +200 -0
  62. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest.c +177 -0
  63. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest2.c +124 -0
  64. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest3.c +133 -0
  65. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest4.c +168 -0
  66. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest5.c +135 -0
  67. package/dependencies/lmdb-data-v1/libraries/liblmdb/mtest6.c +141 -0
  68. package/dependencies/lmdb-data-v1/libraries/liblmdb/sample-bdb.txt +73 -0
  69. package/dependencies/lmdb-data-v1/libraries/liblmdb/sample-mdb.txt +62 -0
  70. package/dependencies/lmdb-data-v1/libraries/liblmdb/tooltag +27 -0
  71. package/dependencies/lz4/LICENSE +11 -0
  72. package/dependencies/lz4/lib/LICENSE +24 -0
  73. package/dependencies/lz4/lib/README.md +137 -0
  74. package/dependencies/lz4/lib/dll/example/README.md +69 -0
  75. package/dependencies/lz4/lib/dll/example/fullbench-dll.sln +25 -0
  76. package/dependencies/lz4/lib/dll/example/fullbench-dll.vcxproj +182 -0
  77. package/dependencies/lz4/lib/dll/liblz4.def +62 -0
  78. package/dependencies/lz4/lib/liblz4-dll.rc.in +35 -0
  79. package/dependencies/lz4/lib/liblz4.pc.in +14 -0
  80. package/dependencies/lz4/lib/lz4.c +2495 -0
  81. package/dependencies/lz4/lib/lz4.h +774 -0
  82. package/dependencies/lz4/lib/lz4frame.c +1899 -0
  83. package/dependencies/lz4/lib/lz4frame.h +623 -0
  84. package/dependencies/lz4/lib/lz4frame_static.h +47 -0
  85. package/dependencies/lz4/lib/lz4hc.c +1615 -0
  86. package/dependencies/lz4/lib/lz4hc.h +413 -0
  87. package/dependencies/lz4/lib/xxhash.c +1030 -0
  88. package/dependencies/lz4/lib/xxhash.h +328 -0
  89. package/dependencies/v8/v8-fast-api-calls-v16.h +791 -0
  90. package/dependencies/v8/v8-fast-api-calls.h +888 -0
  91. package/dict/dict.txt +1 -0
  92. package/dict/dict2.txt +1 -0
  93. package/dist/index.cjs +2478 -0
  94. package/dist/index.cjs.map +1 -0
  95. package/index.d.ts +385 -0
  96. package/index.js +37 -0
  97. package/keys.js +102 -0
  98. package/level.js +27 -0
  99. package/native.js +82 -0
  100. package/node-index.js +28 -0
  101. package/open.js +414 -0
  102. package/package.json +70 -0
  103. package/read.js +590 -0
  104. package/rollup.config.js +12 -0
  105. package/src/compression.cpp +222 -0
  106. package/src/cursor.cpp +344 -0
  107. package/src/dbi.cpp +344 -0
  108. package/src/env.cpp +762 -0
  109. package/src/lmdb-js.cpp +64 -0
  110. package/src/lmdb-js.h +599 -0
  111. package/src/misc.cpp +324 -0
  112. package/src/ordered-binary.cpp +46 -0
  113. package/src/txn.cpp +257 -0
  114. package/src/v8-functions.cpp +166 -0
  115. package/src/windows.c +35 -0
  116. package/src/writer.cpp +452 -0
  117. package/util/RangeIterable.js +141 -0
  118. package/util/set-optional-deps.cjs +10 -0
  119. package/util/when.js +8 -0
  120. package/write.js +882 -0
@@ -0,0 +1,141 @@
1
+ const SKIP = {};
2
+ if (!Symbol.asyncIterator) {
3
+ Symbol.asyncIterator = Symbol.for('Symbol.asyncIterator');
4
+ }
5
+
6
+ export class RangeIterable {
7
+ constructor(sourceArray) {
8
+ if (sourceArray) {
9
+ this.iterate = sourceArray[Symbol.iterator].bind(sourceArray);
10
+ }
11
+ }
12
+ map(func) {
13
+ let source = this;
14
+ let result = new RangeIterable();
15
+ result.iterate = (async) => {
16
+ let iterator = source[Symbol.iterator](async);
17
+ return {
18
+ next(resolvedResult) {
19
+ let result;
20
+ do {
21
+ let iteratorResult;
22
+ if (resolvedResult) {
23
+ iteratorResult = resolvedResult;
24
+ resolvedResult = null; // don't go in this branch on next iteration
25
+ } else {
26
+ iteratorResult = iterator.next();
27
+ if (iteratorResult.then) {
28
+ return iteratorResult.then(iteratorResult => this.next(iteratorResult));
29
+ }
30
+ }
31
+ if (iteratorResult.done === true) {
32
+ this.done = true;
33
+ return iteratorResult;
34
+ }
35
+ result = func(iteratorResult.value);
36
+ if (result && result.then) {
37
+ return result.then(result =>
38
+ result == SKIP ?
39
+ this.next() :
40
+ {
41
+ value: result
42
+ });
43
+ }
44
+ } while(result == SKIP)
45
+ return {
46
+ value: result
47
+ };
48
+ },
49
+ return() {
50
+ return iterator.return();
51
+ },
52
+ throw() {
53
+ return iterator.throw();
54
+ }
55
+ };
56
+ };
57
+ return result;
58
+ }
59
+ [Symbol.asyncIterator]() {
60
+ return this.iterator = this.iterate();
61
+ }
62
+ [Symbol.iterator]() {
63
+ return this.iterator = this.iterate();
64
+ }
65
+ filter(func) {
66
+ return this.map(element => func(element) ? element : SKIP);
67
+ }
68
+
69
+ forEach(callback) {
70
+ let iterator = this.iterator = this.iterate();
71
+ let result;
72
+ while ((result = iterator.next()).done !== true) {
73
+ callback(result.value);
74
+ }
75
+ }
76
+ concat(secondIterable) {
77
+ let concatIterable = new RangeIterable();
78
+ concatIterable.iterate = (async) => {
79
+ let iterator = this.iterator = this.iterate();
80
+ let isFirst = true;
81
+ let concatIterator = {
82
+ next() {
83
+ let result = iterator.next();
84
+ if (isFirst && result.done) {
85
+ isFirst = false;
86
+ iterator = secondIterable[Symbol.iterator](async);
87
+ return iterator.next();
88
+ }
89
+ return result;
90
+ },
91
+ return() {
92
+ return iterator.return();
93
+ },
94
+ throw() {
95
+ return iterator.throw();
96
+ }
97
+ };
98
+ return concatIterator;
99
+ };
100
+ return concatIterable;
101
+ }
102
+ next() {
103
+ if (!this.iterator)
104
+ this.iterator = this.iterate();
105
+ return this.iterator.next();
106
+ }
107
+ toJSON() {
108
+ if (this.asArray && this.asArray.forEach) {
109
+ return this.asArray;
110
+ }
111
+ throw new Error('Can not serialize async iteratables without first calling resolveJSON');
112
+ //return Array.from(this)
113
+ }
114
+ get asArray() {
115
+ if (this._asArray)
116
+ return this._asArray;
117
+ let promise = new Promise((resolve, reject) => {
118
+ let iterator = this.iterate();
119
+ let array = [];
120
+ let iterable = this;
121
+ function next(result) {
122
+ while (result.done !== true) {
123
+ if (result.then) {
124
+ return result.then(next);
125
+ } else {
126
+ array.push(result.value);
127
+ }
128
+ result = iterator.next();
129
+ }
130
+ array.iterable = iterable;
131
+ resolve(iterable._asArray = array);
132
+ }
133
+ next(iterator.next());
134
+ });
135
+ promise.iterable = this;
136
+ return this._asArray || (this._asArray = promise);
137
+ }
138
+ resolveData() {
139
+ return this.asArray;
140
+ }
141
+ }
@@ -0,0 +1,10 @@
1
+ let fs = require('fs');
2
+ packageData = JSON.parse(fs.readFileSync('package.json'));
3
+ let prebuilds = fs.readdirSync('prebuilds');
4
+ let platformDeps = packageData.optionalDependencies = {};
5
+ let packageName = packageData.name;
6
+ let version = packageData.version;
7
+ for (let prebuild of prebuilds) {
8
+ platformDeps['@' + packageName + '/' + packageName + '-' + prebuild] = version;
9
+ }
10
+ fs.writeFileSync('package.json', JSON.stringify(packageData, null, 2));
package/util/when.js ADDED
@@ -0,0 +1,8 @@
1
+ export function when(promise, callback, errback) {
2
+ if (promise && promise.then) {
3
+ return errback ?
4
+ promise.then(callback, errback) :
5
+ promise.then(callback);
6
+ }
7
+ return callback(promise);
8
+ }