@calcit/procs
Advanced tools
Comparing version 0.2.71 to 0.2.72
var _a; | ||
import { overwriteComparator, initTernaryTreeMap } from "@calcit/ternary-tree"; | ||
import { parse } from "@cirru/parser.ts"; | ||
import { writeCirruCode } from "@cirru/writer.ts"; | ||
import { CrDataSymbol, CrDataKeyword, CrDataList, CrDataMap, CrDataAtom, CrDataRecur, kwd, atomsRegistry, toString, CrDataSet, } from "./calcit-data"; | ||
@@ -1236,2 +1237,28 @@ export * from "./calcit-data"; | ||
}; | ||
let toWriterNode = (xs) => { | ||
if (typeof xs === "string") { | ||
return xs; | ||
} | ||
if (xs instanceof CrDataList) { | ||
return xs.toArray().map(toWriterNode); | ||
} | ||
else { | ||
throw new Error("Unexpected type for CirruWriteNode"); | ||
} | ||
}; | ||
export let write_cirru = (data, useInline) => { | ||
let chunk = toWriterNode(data); | ||
if (!Array.isArray(chunk)) { | ||
throw new Error("Expected data of list"); | ||
} | ||
for (let item of chunk) { | ||
if (!Array.isArray(item)) { | ||
throw new Error("Expected data in a list of lists"); | ||
} | ||
} | ||
return writeCirruCode(chunk, { useInline }); | ||
}; | ||
export let write_cirru_edn = (data, useInline) => { | ||
return writeCirruCode([to_cirru_edn(data)], { useInline: useInline }); | ||
}; | ||
/** return in seconds, like from Nim */ | ||
@@ -1238,0 +1265,0 @@ export let now_BANG_ = () => { |
import { overwriteComparator, initTernaryTreeMap } from "@calcit/ternary-tree"; | ||
import { parse } from "@cirru/parser.ts"; | ||
import { CirruWriterNode, writeCirruCode } from "@cirru/writer.ts"; | ||
@@ -1355,2 +1356,30 @@ import { | ||
let toWriterNode = (xs: CrDataList): CirruWriterNode => { | ||
if (typeof xs === "string") { | ||
return xs; | ||
} | ||
if (xs instanceof CrDataList) { | ||
return xs.toArray().map(toWriterNode); | ||
} else { | ||
throw new Error("Unexpected type for CirruWriteNode"); | ||
} | ||
}; | ||
export let write_cirru = (data: CrDataList, useInline: boolean): string => { | ||
let chunk = toWriterNode(data); | ||
if (!Array.isArray(chunk)) { | ||
throw new Error("Expected data of list"); | ||
} | ||
for (let item of chunk) { | ||
if (!Array.isArray(item)) { | ||
throw new Error("Expected data in a list of lists"); | ||
} | ||
} | ||
return writeCirruCode(chunk, { useInline }); | ||
}; | ||
export let write_cirru_edn = (data: CrDataValue, useInline: boolean): string => { | ||
return writeCirruCode([to_cirru_edn(data)], { useInline: useInline }); | ||
}; | ||
/** return in seconds, like from Nim */ | ||
@@ -1357,0 +1386,0 @@ export let now_BANG_ = () => { |
{ | ||
"name": "@calcit/procs", | ||
"version": "0.2.71", | ||
"version": "0.2.72", | ||
"main": "./lib/calcit.procs.js", | ||
@@ -17,4 +17,5 @@ "devDependencies": { | ||
"@calcit/ternary-tree": "0.0.9", | ||
"@cirru/parser.ts": "^0.0.1" | ||
"@cirru/parser.ts": "^0.0.1", | ||
"@cirru/writer.ts": "^0.1.2" | ||
} | ||
} |
101205
3746
3
+ Added@cirru/writer.ts@^0.1.2
+ Added@cirru/writer.ts@0.1.5(transitive)