@calcit/procs 0.8.46 → 0.8.47
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/lib/custom-formatter.mjs +2 -1
- package/lib/js-cirru.mjs +25 -18
- package/lib/js-list.mjs +8 -4
- package/lib/package.json +2 -2
- package/package.json +2 -2
- package/ts-src/custom-formatter.mts +2 -1
- package/ts-src/js-cirru.mts +24 -16
- package/ts-src/js-list.mts +8 -4
package/lib/custom-formatter.mjs
CHANGED
|
@@ -92,7 +92,8 @@ export let load_console_formatter_$x_ = () => {
|
|
|
92
92
|
if (obj instanceof CalcitList || obj instanceof CalcitSliceList) {
|
|
93
93
|
let preview = "";
|
|
94
94
|
let hasCollection = false;
|
|
95
|
-
|
|
95
|
+
let size = obj.len();
|
|
96
|
+
for (let idx = 0; idx < size; idx++) {
|
|
96
97
|
preview += " ";
|
|
97
98
|
if (isLiteral(obj.get(idx))) {
|
|
98
99
|
preview += saveString(obj.get(idx));
|
package/lib/js-cirru.mjs
CHANGED
|
@@ -68,10 +68,10 @@ export let to_cirru_edn = (x) => {
|
|
|
68
68
|
return `|${x}`;
|
|
69
69
|
}
|
|
70
70
|
if (typeof x === "number") {
|
|
71
|
-
return x
|
|
71
|
+
return `${x}`;
|
|
72
72
|
}
|
|
73
73
|
if (typeof x === "boolean") {
|
|
74
|
-
return x
|
|
74
|
+
return `${x}`;
|
|
75
75
|
}
|
|
76
76
|
if (x instanceof CalcitTag) {
|
|
77
77
|
return x.toString();
|
|
@@ -80,8 +80,12 @@ export let to_cirru_edn = (x) => {
|
|
|
80
80
|
return x.toString();
|
|
81
81
|
}
|
|
82
82
|
if (x instanceof CalcitList || x instanceof CalcitSliceList) {
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
let ret = ["[]"];
|
|
84
|
+
let arr = x.toArray();
|
|
85
|
+
for (let idx = 0; idx < arr.length; idx++) {
|
|
86
|
+
ret.push(to_cirru_edn(arr[idx]));
|
|
87
|
+
}
|
|
88
|
+
return ret;
|
|
85
89
|
}
|
|
86
90
|
if (x instanceof CalcitCirruQuote) {
|
|
87
91
|
return ["quote", x.value];
|
|
@@ -126,24 +130,14 @@ export let to_cirru_edn = (x) => {
|
|
|
126
130
|
return buffer;
|
|
127
131
|
}
|
|
128
132
|
if (x instanceof CalcitRecord) {
|
|
129
|
-
let buffer = [
|
|
133
|
+
let buffer = [];
|
|
130
134
|
for (let idx = 0; idx < x.fields.length; idx++) {
|
|
131
135
|
buffer.push([x.fields[idx].toString(), to_cirru_edn(x.values[idx])]);
|
|
132
136
|
}
|
|
133
137
|
// placed literals first
|
|
134
|
-
buffer.sort(
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
if (a1_literal && !b1_literal) {
|
|
138
|
-
return -1;
|
|
139
|
-
}
|
|
140
|
-
else if (!a1_literal && b1_literal) {
|
|
141
|
-
return 1;
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
return _$n_compare(a[0], b[0]);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
138
|
+
buffer.sort(recordFieldOrder);
|
|
139
|
+
buffer.unshift(x.name.toString());
|
|
140
|
+
buffer.unshift("%{}");
|
|
147
141
|
return buffer;
|
|
148
142
|
}
|
|
149
143
|
if (x instanceof CalcitSet) {
|
|
@@ -176,6 +170,19 @@ export let to_cirru_edn = (x) => {
|
|
|
176
170
|
console.error(x);
|
|
177
171
|
throw new Error("Unexpected data to to-cirru-edn");
|
|
178
172
|
};
|
|
173
|
+
let recordFieldOrder = (a, b) => {
|
|
174
|
+
let a1_literal = isLiteral(a[1]);
|
|
175
|
+
let b1_literal = isLiteral(b[1]);
|
|
176
|
+
if (a1_literal && !b1_literal) {
|
|
177
|
+
return -1;
|
|
178
|
+
}
|
|
179
|
+
else if (!a1_literal && b1_literal) {
|
|
180
|
+
return 1;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
return _$n_compare(a[0], b[0]);
|
|
184
|
+
}
|
|
185
|
+
};
|
|
179
186
|
/** makes sure we got string */
|
|
180
187
|
let extractFieldTag = (x) => {
|
|
181
188
|
if (x[0] === ":") {
|
package/lib/js-list.mjs
CHANGED
|
@@ -92,7 +92,8 @@ export class CalcitList {
|
|
|
92
92
|
return new CalcitList(ternaryTree.reverse(this.value));
|
|
93
93
|
}
|
|
94
94
|
nestedDataInChildren() {
|
|
95
|
-
|
|
95
|
+
let size = this.len();
|
|
96
|
+
for (let idx = 0; idx < size; idx++) {
|
|
96
97
|
if (!isLiteral(this.get(idx))) {
|
|
97
98
|
return true;
|
|
98
99
|
}
|
|
@@ -247,7 +248,8 @@ export class CalcitSliceList {
|
|
|
247
248
|
return this.turnListMode().reverse();
|
|
248
249
|
}
|
|
249
250
|
nestedDataInChildren() {
|
|
250
|
-
|
|
251
|
+
let size = this.len();
|
|
252
|
+
for (let idx = 0; idx < size; idx++) {
|
|
251
253
|
if (!isLiteral(this.get(idx))) {
|
|
252
254
|
return true;
|
|
253
255
|
}
|
|
@@ -275,7 +277,8 @@ export let foldl = function (xs, acc, f) {
|
|
|
275
277
|
}
|
|
276
278
|
if (xs instanceof CalcitSliceList || xs instanceof CalcitList) {
|
|
277
279
|
var result = acc;
|
|
278
|
-
|
|
280
|
+
let size = xs.len();
|
|
281
|
+
for (let idx = 0; idx < size; idx++) {
|
|
279
282
|
let item = xs.get(idx);
|
|
280
283
|
result = f(result, item);
|
|
281
284
|
}
|
|
@@ -316,7 +319,8 @@ export let foldl_shortcut = function (xs, acc, v0, f) {
|
|
|
316
319
|
}
|
|
317
320
|
if (xs instanceof CalcitList || xs instanceof CalcitSliceList) {
|
|
318
321
|
var state = acc;
|
|
319
|
-
|
|
322
|
+
let size = xs.len();
|
|
323
|
+
for (let idx = 0; idx < size; idx++) {
|
|
320
324
|
let item = xs.get(idx);
|
|
321
325
|
let pair = f(state, item);
|
|
322
326
|
if (pair instanceof CalcitTuple) {
|
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calcit/procs",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.47",
|
|
4
4
|
"main": "./lib/calcit.procs.mjs",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@types/node": "^20.11.28",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@calcit/ternary-tree": "0.0.23",
|
|
25
25
|
"@cirru/parser.ts": "^0.0.6",
|
|
26
|
-
"@cirru/writer.ts": "^0.1.
|
|
26
|
+
"@cirru/writer.ts": "^0.1.5"
|
|
27
27
|
}
|
|
28
28
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calcit/procs",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.47",
|
|
4
4
|
"main": "./lib/calcit.procs.mjs",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@types/node": "^20.11.28",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@calcit/ternary-tree": "0.0.23",
|
|
25
25
|
"@cirru/parser.ts": "^0.0.6",
|
|
26
|
-
"@cirru/writer.ts": "^0.1.
|
|
26
|
+
"@cirru/writer.ts": "^0.1.5"
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -106,7 +106,8 @@ export let load_console_formatter_$x_ = () => {
|
|
|
106
106
|
if (obj instanceof CalcitList || obj instanceof CalcitSliceList) {
|
|
107
107
|
let preview = "";
|
|
108
108
|
let hasCollection = false;
|
|
109
|
-
|
|
109
|
+
let size = obj.len();
|
|
110
|
+
for (let idx = 0; idx < size; idx++) {
|
|
110
111
|
preview += " ";
|
|
111
112
|
if (isLiteral(obj.get(idx))) {
|
|
112
113
|
preview += saveString(obj.get(idx));
|
package/ts-src/js-cirru.mts
CHANGED
|
@@ -73,10 +73,10 @@ export let to_cirru_edn = (x: CalcitValue): CirruEdnFormat => {
|
|
|
73
73
|
return `|${x}`;
|
|
74
74
|
}
|
|
75
75
|
if (typeof x === "number") {
|
|
76
|
-
return x
|
|
76
|
+
return `${x}`;
|
|
77
77
|
}
|
|
78
78
|
if (typeof x === "boolean") {
|
|
79
|
-
return x
|
|
79
|
+
return `${x}`;
|
|
80
80
|
}
|
|
81
81
|
if (x instanceof CalcitTag) {
|
|
82
82
|
return x.toString();
|
|
@@ -85,8 +85,12 @@ export let to_cirru_edn = (x: CalcitValue): CirruEdnFormat => {
|
|
|
85
85
|
return x.toString();
|
|
86
86
|
}
|
|
87
87
|
if (x instanceof CalcitList || x instanceof CalcitSliceList) {
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
let ret: CirruEdnFormat[] = ["[]"];
|
|
89
|
+
let arr = x.toArray();
|
|
90
|
+
for (let idx = 0; idx < arr.length; idx++) {
|
|
91
|
+
ret.push(to_cirru_edn(arr[idx]));
|
|
92
|
+
}
|
|
93
|
+
return ret;
|
|
90
94
|
}
|
|
91
95
|
if (x instanceof CalcitCirruQuote) {
|
|
92
96
|
return ["quote", x.value];
|
|
@@ -126,22 +130,14 @@ export let to_cirru_edn = (x: CalcitValue): CirruEdnFormat => {
|
|
|
126
130
|
return buffer;
|
|
127
131
|
}
|
|
128
132
|
if (x instanceof CalcitRecord) {
|
|
129
|
-
let buffer: [string, CirruEdnFormat] = [
|
|
133
|
+
let buffer: [string, CirruEdnFormat][] = [];
|
|
130
134
|
for (let idx = 0; idx < x.fields.length; idx++) {
|
|
131
135
|
buffer.push([x.fields[idx].toString(), to_cirru_edn(x.values[idx])]);
|
|
132
136
|
}
|
|
133
137
|
// placed literals first
|
|
134
|
-
buffer.sort(
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
if (a1_literal && !b1_literal) {
|
|
138
|
-
return -1;
|
|
139
|
-
} else if (!a1_literal && b1_literal) {
|
|
140
|
-
return 1;
|
|
141
|
-
} else {
|
|
142
|
-
return _$n_compare(a[0] as CalcitValue, b[0] as CalcitValue);
|
|
143
|
-
}
|
|
144
|
-
});
|
|
138
|
+
buffer.sort(recordFieldOrder);
|
|
139
|
+
(buffer as any[]).unshift(x.name.toString());
|
|
140
|
+
(buffer as any[]).unshift("%{}");
|
|
145
141
|
return buffer;
|
|
146
142
|
}
|
|
147
143
|
if (x instanceof CalcitSet) {
|
|
@@ -172,6 +168,18 @@ export let to_cirru_edn = (x: CalcitValue): CirruEdnFormat => {
|
|
|
172
168
|
throw new Error("Unexpected data to to-cirru-edn");
|
|
173
169
|
};
|
|
174
170
|
|
|
171
|
+
let recordFieldOrder = (a: [string, CirruEdnFormat], b: [string, CirruEdnFormat]) => {
|
|
172
|
+
let a1_literal = isLiteral(a[1] as CalcitValue);
|
|
173
|
+
let b1_literal = isLiteral(b[1] as CalcitValue);
|
|
174
|
+
if (a1_literal && !b1_literal) {
|
|
175
|
+
return -1;
|
|
176
|
+
} else if (!a1_literal && b1_literal) {
|
|
177
|
+
return 1;
|
|
178
|
+
} else {
|
|
179
|
+
return _$n_compare(a[0] as CalcitValue, b[0] as CalcitValue);
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
|
|
175
183
|
/** makes sure we got string */
|
|
176
184
|
let extractFieldTag = (x: string) => {
|
|
177
185
|
if (x[0] === ":") {
|
package/ts-src/js-list.mts
CHANGED
|
@@ -107,7 +107,8 @@ export class CalcitList {
|
|
|
107
107
|
return new CalcitList(ternaryTree.reverse(this.value));
|
|
108
108
|
}
|
|
109
109
|
nestedDataInChildren(): boolean {
|
|
110
|
-
|
|
110
|
+
let size = this.len();
|
|
111
|
+
for (let idx = 0; idx < size; idx++) {
|
|
111
112
|
if (!isLiteral(this.get(idx))) {
|
|
112
113
|
return true;
|
|
113
114
|
}
|
|
@@ -262,7 +263,8 @@ export class CalcitSliceList {
|
|
|
262
263
|
return this.turnListMode().reverse();
|
|
263
264
|
}
|
|
264
265
|
nestedDataInChildren(): boolean {
|
|
265
|
-
|
|
266
|
+
let size = this.len();
|
|
267
|
+
for (let idx = 0; idx < size; idx++) {
|
|
266
268
|
if (!isLiteral(this.get(idx))) {
|
|
267
269
|
return true;
|
|
268
270
|
}
|
|
@@ -292,7 +294,8 @@ export let foldl = function (xs: CalcitValue, acc: CalcitValue, f: CalcitFn): Ca
|
|
|
292
294
|
}
|
|
293
295
|
if (xs instanceof CalcitSliceList || xs instanceof CalcitList) {
|
|
294
296
|
var result = acc;
|
|
295
|
-
|
|
297
|
+
let size = xs.len();
|
|
298
|
+
for (let idx = 0; idx < size; idx++) {
|
|
296
299
|
let item = xs.get(idx);
|
|
297
300
|
result = f(result, item);
|
|
298
301
|
}
|
|
@@ -335,7 +338,8 @@ export let foldl_shortcut = function (xs: CalcitValue, acc: CalcitValue, v0: Cal
|
|
|
335
338
|
}
|
|
336
339
|
if (xs instanceof CalcitList || xs instanceof CalcitSliceList) {
|
|
337
340
|
var state = acc;
|
|
338
|
-
|
|
341
|
+
let size = xs.len();
|
|
342
|
+
for (let idx = 0; idx < size; idx++) {
|
|
339
343
|
let item = xs.get(idx);
|
|
340
344
|
let pair = f(state, item);
|
|
341
345
|
if (pair instanceof CalcitTuple) {
|