aontu 0.52.1 → 0.53.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.
- package/README.md +88 -0
- package/bin/aontu-mcp.js +4 -0
- package/dist/agentsmd.d.ts +16 -0
- package/dist/agentsmd.js +107 -0
- package/dist/agentsmd.js.map +1 -0
- package/dist/aontu.d.ts +14 -3
- package/dist/aontu.js +96 -4
- package/dist/aontu.js.map +1 -1
- package/dist/cli.d.ts +44 -1
- package/dist/cli.js +2401 -44
- package/dist/cli.js.map +1 -1
- package/dist/ctx.d.ts +13 -0
- package/dist/ctx.js +43 -0
- package/dist/ctx.js.map +1 -1
- package/dist/diff.d.ts +22 -0
- package/dist/diff.js +141 -0
- package/dist/diff.js.map +1 -0
- package/dist/err.d.ts +3 -1
- package/dist/err.js +38 -7
- package/dist/err.js.map +1 -1
- package/dist/graph.d.ts +16 -0
- package/dist/graph.js +73 -0
- package/dist/graph.js.map +1 -0
- package/dist/hcanon.d.ts +3 -0
- package/dist/hcanon.js +146 -0
- package/dist/hcanon.js.map +1 -0
- package/dist/hints.js +167 -4
- package/dist/hints.js.map +1 -1
- package/dist/jsonschema.d.ts +20 -0
- package/dist/jsonschema.js +391 -0
- package/dist/jsonschema.js.map +1 -0
- package/dist/lang.js +512 -69
- package/dist/lang.js.map +1 -1
- package/dist/lsp.d.ts +9 -2
- package/dist/lsp.js +262 -47
- package/dist/lsp.js.map +1 -1
- package/dist/mcp-server.d.ts +20 -0
- package/dist/mcp-server.js +147 -0
- package/dist/mcp-server.js.map +1 -0
- package/dist/mcp.d.ts +42 -0
- package/dist/mcp.js +814 -0
- package/dist/mcp.js.map +1 -0
- package/dist/mod-tool.d.ts +58 -0
- package/dist/mod-tool.js +498 -0
- package/dist/mod-tool.js.map +1 -0
- package/dist/mod.d.ts +31 -0
- package/dist/mod.js +250 -0
- package/dist/mod.js.map +1 -0
- package/dist/patch.d.ts +44 -0
- package/dist/patch.js +506 -0
- package/dist/patch.js.map +1 -0
- package/dist/provenance.d.ts +40 -0
- package/dist/provenance.js +335 -0
- package/dist/provenance.js.map +1 -0
- package/dist/query.d.ts +27 -0
- package/dist/query.js +294 -0
- package/dist/query.js.map +1 -0
- package/dist/reach.d.ts +14 -0
- package/dist/reach.js +140 -0
- package/dist/reach.js.map +1 -0
- package/dist/relation.d.ts +19 -0
- package/dist/relation.js +305 -0
- package/dist/relation.js.map +1 -0
- package/dist/report-sarif.d.ts +14 -0
- package/dist/report-sarif.js +102 -0
- package/dist/report-sarif.js.map +1 -0
- package/dist/site.d.ts +4 -0
- package/dist/site.js +31 -0
- package/dist/site.js.map +1 -1
- package/dist/std.d.ts +1 -0
- package/dist/std.js +73 -0
- package/dist/std.js.map +1 -0
- package/dist/subsume.d.ts +39 -0
- package/dist/subsume.js +526 -0
- package/dist/subsume.js.map +1 -0
- package/dist/trim.d.ts +19 -0
- package/dist/trim.js +155 -0
- package/dist/trim.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/type.d.ts +17 -1
- package/dist/type.js.map +1 -1
- package/dist/unify.d.ts +2 -1
- package/dist/unify.js +253 -36
- package/dist/unify.js.map +1 -1
- package/dist/utility.d.ts +9 -1
- package/dist/utility.js +122 -1
- package/dist/utility.js.map +1 -1
- package/dist/val/AggFuncVal.d.ts +33 -0
- package/dist/val/AggFuncVal.js +202 -0
- package/dist/val/AggFuncVal.js.map +1 -0
- package/dist/val/ArithFuncVal.d.ts +31 -0
- package/dist/val/ArithFuncVal.js +62 -0
- package/dist/val/ArithFuncVal.js.map +1 -0
- package/dist/val/BagVal.d.ts +5 -0
- package/dist/val/BagVal.js +96 -5
- package/dist/val/BagVal.js.map +1 -1
- package/dist/val/CloseFuncVal.js +9 -1
- package/dist/val/CloseFuncVal.js.map +1 -1
- package/dist/val/ConjunctVal.d.ts +1 -1
- package/dist/val/ConjunctVal.js +19 -0
- package/dist/val/ConjunctVal.js.map +1 -1
- package/dist/val/ConstraintVal.d.ts +7 -1
- package/dist/val/ConstraintVal.js +490 -40
- package/dist/val/ConstraintVal.js.map +1 -1
- package/dist/val/CopyFuncVal.d.ts +1 -2
- package/dist/val/CopyFuncVal.js +7 -0
- package/dist/val/CopyFuncVal.js.map +1 -1
- package/dist/val/Decimal.d.ts +1 -0
- package/dist/val/Decimal.js +13 -0
- package/dist/val/Decimal.js.map +1 -1
- package/dist/val/DeprecateFuncVal.d.ts +11 -0
- package/dist/val/DeprecateFuncVal.js +47 -0
- package/dist/val/DeprecateFuncVal.js.map +1 -0
- package/dist/val/DisjunctVal.js +130 -21
- package/dist/val/DisjunctVal.js.map +1 -1
- package/dist/val/EachFuncVal.d.ts +15 -0
- package/dist/val/EachFuncVal.js +75 -0
- package/dist/val/EachFuncVal.js.map +1 -0
- package/dist/val/ExpectVal.js +27 -4
- package/dist/val/ExpectVal.js.map +1 -1
- package/dist/val/FeatureVal.js +1 -1
- package/dist/val/FeatureVal.js.map +1 -1
- package/dist/val/FilterFuncVal.d.ts +15 -0
- package/dist/val/FilterFuncVal.js +91 -0
- package/dist/val/FilterFuncVal.js.map +1 -0
- package/dist/val/FuncBaseVal.d.ts +6 -1
- package/dist/val/FuncBaseVal.js +171 -1
- package/dist/val/FuncBaseVal.js.map +1 -1
- package/dist/val/HideFuncVal.js.map +1 -1
- package/dist/val/IdFuncVal.d.ts +13 -0
- package/dist/val/IdFuncVal.js +54 -0
- package/dist/val/IdFuncVal.js.map +1 -0
- package/dist/val/JunctionVal.js +7 -1
- package/dist/val/JunctionVal.js.map +1 -1
- package/dist/val/KeyFuncVal.d.ts +1 -1
- package/dist/val/KeyFuncVal.js +38 -30
- package/dist/val/KeyFuncVal.js.map +1 -1
- package/dist/val/ListVal.js +101 -14
- package/dist/val/ListVal.js.map +1 -1
- package/dist/val/LowerFuncVal.js.map +1 -1
- package/dist/val/MapVal.js +93 -8
- package/dist/val/MapVal.js.map +1 -1
- package/dist/val/MatchFuncVal.d.ts +15 -0
- package/dist/val/MatchFuncVal.js +107 -0
- package/dist/val/MatchFuncVal.js.map +1 -0
- package/dist/val/MoveFuncVal.js.map +1 -1
- package/dist/val/NilVal.js +24 -0
- package/dist/val/NilVal.js.map +1 -1
- package/dist/val/OpBaseVal.d.ts +1 -1
- package/dist/val/OpBaseVal.js +19 -1
- package/dist/val/OpBaseVal.js.map +1 -1
- package/dist/val/OpenFuncVal.js +4 -1
- package/dist/val/OpenFuncVal.js.map +1 -1
- package/dist/val/PackFuncVal.d.ts +15 -0
- package/dist/val/PackFuncVal.js +108 -0
- package/dist/val/PackFuncVal.js.map +1 -0
- package/dist/val/PathFuncVal.js.map +1 -1
- package/dist/val/PlaceVal.d.ts +13 -0
- package/dist/val/PlaceVal.js +131 -0
- package/dist/val/PlaceVal.js.map +1 -0
- package/dist/val/PlusOpVal.js +11 -2
- package/dist/val/PlusOpVal.js.map +1 -1
- package/dist/val/PrefFuncVal.js.map +1 -1
- package/dist/val/PrefVal.d.ts +2 -2
- package/dist/val/PrefVal.js +78 -23
- package/dist/val/PrefVal.js.map +1 -1
- package/dist/val/RefVal.d.ts +1 -1
- package/dist/val/RefVal.js +89 -7
- package/dist/val/RefVal.js.map +1 -1
- package/dist/val/ReferFuncVal.d.ts +36 -0
- package/dist/val/ReferFuncVal.js +303 -0
- package/dist/val/ReferFuncVal.js.map +1 -0
- package/dist/val/ScalarKindVal.d.ts +1 -2
- package/dist/val/ScalarKindVal.js +0 -11
- package/dist/val/ScalarKindVal.js.map +1 -1
- package/dist/val/TopVal.js.map +1 -1
- package/dist/val/TypeFuncVal.js.map +1 -1
- package/dist/val/UpperFuncVal.js.map +1 -1
- package/dist/val/Val.d.ts +8 -1
- package/dist/val/Val.js +150 -1
- package/dist/val/Val.js.map +1 -1
- package/dist/val/VarVal.js.map +1 -1
- package/dist/val/arith.d.ts +6 -0
- package/dist/val/arith.js +170 -0
- package/dist/val/arith.js.map +1 -0
- package/dist/vet.d.ts +45 -0
- package/dist/vet.js +776 -0
- package/dist/vet.js.map +1 -0
- package/dist/walk.d.ts +2 -0
- package/dist/walk.js +91 -0
- package/dist/walk.js.map +1 -0
- package/grammar/aontu.gbnf +130 -0
- package/grammar/aontu.lark +113 -0
- package/package.json +21 -6
- package/skill/SKILL.md +37 -0
- package/skill/error-codes.md +62 -0
- package/skill/examples.md +99 -0
- package/skill/grammar-card.md +57 -0
- package/src/agentsmd.ts +135 -0
- package/src/aontu.ts +135 -4
- package/src/cli.ts +2858 -71
- package/src/ctx.ts +73 -1
- package/src/diff.ts +196 -0
- package/src/err.ts +42 -7
- package/src/graph.ts +135 -0
- package/src/hcanon.ts +169 -0
- package/src/hints.ts +208 -4
- package/src/jsonschema.ts +511 -0
- package/src/lang.ts +570 -70
- package/src/lsp.ts +281 -48
- package/src/mcp-server.ts +187 -0
- package/src/mcp.ts +993 -0
- package/src/mod-tool.ts +679 -0
- package/src/mod.ts +344 -0
- package/src/patch.ts +624 -0
- package/src/provenance.ts +430 -0
- package/src/query.ts +379 -0
- package/src/reach.ts +184 -0
- package/src/relation.ts +395 -0
- package/src/report-sarif.ts +137 -0
- package/src/site.ts +36 -1
- package/src/std.ts +73 -0
- package/src/subsume.ts +690 -0
- package/src/trim.ts +195 -0
- package/src/tsconfig.json +10 -4
- package/src/type.ts +51 -2
- package/src/unify.ts +274 -36
- package/src/utility.ts +139 -1
- package/src/val/AggFuncVal.ts +319 -0
- package/src/val/ArithFuncVal.ts +108 -0
- package/src/val/BagVal.ts +101 -4
- package/src/val/CloseFuncVal.ts +9 -1
- package/src/val/ConjunctVal.ts +20 -0
- package/src/val/ConstraintVal.ts +542 -43
- package/src/val/CopyFuncVal.ts +7 -1
- package/src/val/Decimal.ts +15 -0
- package/src/val/DeprecateFuncVal.ts +84 -0
- package/src/val/DisjunctVal.ts +139 -28
- package/src/val/EachFuncVal.ts +133 -0
- package/src/val/ExpectVal.ts +28 -6
- package/src/val/FeatureVal.ts +1 -1
- package/src/val/FilterFuncVal.ts +154 -0
- package/src/val/FuncBaseVal.ts +192 -1
- package/src/val/HideFuncVal.ts +0 -2
- package/src/val/IdFuncVal.ts +91 -0
- package/src/val/JunctionVal.ts +7 -1
- package/src/val/KeyFuncVal.ts +39 -35
- package/src/val/ListVal.ts +108 -15
- package/src/val/LowerFuncVal.ts +0 -1
- package/src/val/MapVal.ts +99 -8
- package/src/val/MatchFuncVal.ts +176 -0
- package/src/val/MoveFuncVal.ts +0 -2
- package/src/val/NilVal.ts +25 -0
- package/src/val/OpBaseVal.ts +20 -1
- package/src/val/OpenFuncVal.ts +4 -2
- package/src/val/PackFuncVal.ts +175 -0
- package/src/val/PathFuncVal.ts +0 -1
- package/src/val/PlaceVal.ts +193 -0
- package/src/val/PlusOpVal.ts +11 -2
- package/src/val/PrefFuncVal.ts +0 -1
- package/src/val/PrefVal.ts +79 -36
- package/src/val/RefVal.ts +91 -8
- package/src/val/ReferFuncVal.ts +387 -0
- package/src/val/ScalarKindVal.ts +0 -13
- package/src/val/TopVal.ts +0 -1
- package/src/val/TypeFuncVal.ts +0 -2
- package/src/val/UpperFuncVal.ts +0 -1
- package/src/val/Val.ts +205 -2
- package/src/val/VarVal.ts +0 -1
- package/src/val/arith.ts +316 -0
- package/src/vet.ts +992 -0
- package/src/walk.ts +99 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarKindVal.js","sourceRoot":"","sources":["../../src/val/ScalarKindVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;
|
|
1
|
+
{"version":3,"file":"ScalarKindVal.js","sourceRoot":"","sources":["../../src/val/ScalarKindVal.ts"],"names":[],"mappings":"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"}
|
package/dist/val/TopVal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopVal.js","sourceRoot":"","sources":["../../src/val/TopVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;
|
|
1
|
+
{"version":3,"file":"TopVal.js","sourceRoot":"","sources":["../../src/val/TopVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAOzD,kCAEgB;AAMhB,+BAEc;AAGd,yBAAyB;AACzB,MAAM,MAAO,SAAQ,SAAG;IAMtB,YACE,IAAa,EACb,GAAkB;QAElB,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QATlB,UAAK,GAAG,IAAI,CAAA;QAEZ,OAAE,GAAG,CAAC,CAAA;QACN,OAAE,GAAG,WAAI,CAAA;QAQP,qCAAqC;QACrC,IAAI,CAAC,EAAE,GAAG,WAAI,CAAA;QACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;IACxB,CAAC;IAED,IAAI,CAAC,IAAS;QACZ,uBAAuB;QACvB,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,IAAS,EAAE,GAAiB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,KAAK,KAAK,OAAO,KAAK,CAAA,CAAC,CAAC;IAE5B,QAAQ;QACN,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,IAAkB,EAAE,KAAe;QACvC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,GAAG,CAAC,IAAmB;QACrB,OAAO,SAAS,CAAA;IAClB,CAAC;CAEF,CAAC,iCAAiC;QAIjC,MAAM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeFuncVal.js","sourceRoot":"","sources":["../../src/val/TypeFuncVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAYzD,gCAAmC;AAEnC,
|
|
1
|
+
{"version":3,"file":"TypeFuncVal.js","sourceRoot":"","sources":["../../src/val/TypeFuncVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAYzD,gCAAmC;AAEnC,wCAEmB;AAGnB,+CAA2C;AAG3C,MAAM,WAAY,SAAQ,yBAAW;IAKnC,YACE,IAAa,EACb,GAAkB;QAElB,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QARlB,eAAU,GAAG,IAAI,CAAA;QAUf,qCAAqC;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;IACxB,CAAC;IAGD,IAAI,CAAC,IAAkB,EAAE,IAAa;QACpC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAA;IACf,CAAC;IAGD,OAAO,CAAC,GAAiB,EAAE,IAAW;QACpC,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAA,gBAAU,EAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACjD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACf,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAEpB,IAAA,cAAI,EAAC,GAAG,EAAE,CAAC,IAAiC,EAAE,GAAQ,EAAE,EAAE;gBACxD,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;gBACpB,OAAO,GAAG,CAAA;YACZ,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;CACF,CAAC,iCAAiC;QAIjC,WAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpperFuncVal.js","sourceRoot":"","sources":["../../src/val/UpperFuncVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAYzD,gCAAmC;
|
|
1
|
+
{"version":3,"file":"UpperFuncVal.js","sourceRoot":"","sources":["../../src/val/UpperFuncVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAYzD,gCAAmC;AAGnC,wDAAoD;AACpD,4CAA+C;AAC/C,4CAAwC;AAIxC,+CAA2C;AAG3C,MAAM,YAAa,SAAQ,yBAAW;IAGpC,YACE,IAAa,EACb,GAAkB;QAElB,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QANlB,gBAAW,GAAG,IAAI,CAAA;IAOlB,CAAC;IAGD,IAAI,CAAC,IAAkB,EAAE,IAAa;QACpC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,QAAQ;QACN,OAAO,OAAO,CAAA;IAChB,CAAC;IAGD,OAAO,CAAC,GAA6B,EAAE,IAAW;QAChD,mEAAmE;QACnE,gEAAgE;QAChE,4DAA4D;QAC5D,kBAAkB;QAClB,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,MAAM,GAAG,GAAG,EAAE,GAAG,CAAA;QACvB,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7D,QAAQ,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9C,gEAAgE;gBAChE,iEAAiE;gBACjE,+DAA+D;gBAC/D,gEAAgE;gBAChE,4DAA4D;gBAC5D,QAAQ,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBACnC,MAAM,YAAY,iBAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;wBACzC,SAAS,CAAA;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,IAAI,IAAI,GAAG,CAAC,CAAC;YACX,IAAA,gBAAU,EAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;YACtC,gEAAgE;YAChE,8DAA8D;YAC9D,gEAAgE;YAChE,8CAA8C;YAC9C,IAAA,wBAAc,EAAC,GAAG,EAAE,GAAG,CAAC,CAC3B,CAAA;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAGD,QAAQ;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;QACzB,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,IAAI,6BAAa,CAAC;gBAC3B,GAAG,EAAE,GAAG,CAAC,IAAI;aACd,CAAC,CAAC,CAAC,CAAC;YACL,KAAK,CAAC,QAAQ,EAAE,CAAA;IACpB,CAAC;CACF,CAAC,iCAAiC;QAIjC,YAAY"}
|
package/dist/val/Val.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ type ValSpec = {
|
|
|
10
10
|
peg?: any;
|
|
11
11
|
mark?: Partial<ValMark>;
|
|
12
12
|
kind?: any;
|
|
13
|
+
dup?: boolean;
|
|
13
14
|
row?: number;
|
|
14
15
|
col?: number;
|
|
15
16
|
url?: string;
|
|
@@ -25,6 +26,7 @@ type ValSpec = {
|
|
|
25
26
|
declare const DONE = -1;
|
|
26
27
|
declare const SPREAD: unique symbol;
|
|
27
28
|
declare const EMPTY_ERR: any[];
|
|
29
|
+
export declare function nextValId(): number;
|
|
28
30
|
declare abstract class Val {
|
|
29
31
|
isVal: boolean;
|
|
30
32
|
isTop: boolean;
|
|
@@ -70,6 +72,10 @@ declare abstract class Val {
|
|
|
70
72
|
get site(): Site;
|
|
71
73
|
set site(s: Site);
|
|
72
74
|
mark: ValMark;
|
|
75
|
+
deprecation?: Record<string, string>;
|
|
76
|
+
entity?: string;
|
|
77
|
+
link?: string;
|
|
78
|
+
graph?: any;
|
|
73
79
|
peg: any;
|
|
74
80
|
err: any[];
|
|
75
81
|
explain: any[] | null;
|
|
@@ -95,6 +101,7 @@ declare abstract class Val {
|
|
|
95
101
|
inspect(d?: number): string;
|
|
96
102
|
inspection(_d?: number): string;
|
|
97
103
|
}
|
|
104
|
+
declare function repathInstance(v: any, path: string[]): void;
|
|
98
105
|
declare function empty(o: any): boolean;
|
|
99
106
|
export type { ValMark, ValSpec, };
|
|
100
|
-
export { Val, DONE, SPREAD, EMPTY_ERR, empty };
|
|
107
|
+
export { Val, DONE, SPREAD, EMPTY_ERR, empty, repathInstance, };
|
package/dist/val/Val.js
CHANGED
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
/* Copyright (c) 2022-2025 Richard Rodger, MIT License */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.EMPTY_ERR = exports.SPREAD = exports.DONE = exports.Val = void 0;
|
|
5
|
+
exports.nextValId = nextValId;
|
|
5
6
|
exports.empty = empty;
|
|
7
|
+
exports.repathInstance = repathInstance;
|
|
6
8
|
const node_util_1 = require("node:util");
|
|
7
9
|
const site_1 = require("../site");
|
|
10
|
+
const provenance_1 = require("../provenance");
|
|
8
11
|
const DONE = -1;
|
|
9
12
|
exports.DONE = DONE;
|
|
10
13
|
const SPREAD = Symbol('spread');
|
|
@@ -22,6 +25,15 @@ exports.EMPTY_ERR = EMPTY_ERR;
|
|
|
22
25
|
// that is acceptable — an id is a small number and is never used as a
|
|
23
26
|
// memory key. TODO: switch to the per-run ctx.vc counter (see ctx.ts).
|
|
24
27
|
let ID = 1000;
|
|
28
|
+
// A fresh Val id, for the one carrier that cannot take the one its
|
|
29
|
+
// class fixes: TopVal pins `id = 0` (there is only one top), and the
|
|
30
|
+
// identity mark (G4 phase 1) resolves to a top that must NOT collide
|
|
31
|
+
// with it — the fast path in `unite` returns early on two done Vals
|
|
32
|
+
// with the same id, which would drop an identity before the rider
|
|
33
|
+
// could carry it.
|
|
34
|
+
function nextValId() {
|
|
35
|
+
return ID++;
|
|
36
|
+
}
|
|
25
37
|
class Val {
|
|
26
38
|
get site() {
|
|
27
39
|
return this._site ??= new site_1.Site();
|
|
@@ -98,16 +110,83 @@ class Val {
|
|
|
98
110
|
out.site.row = spec?.row ?? this.site.row;
|
|
99
111
|
out.site.col = spec?.col ?? this.site.col;
|
|
100
112
|
out.site.url = spec?.url ?? this.site.url;
|
|
113
|
+
// THE SPAN TRAVELS WITH THE POSITION. Copying row and col but not
|
|
114
|
+
// the extent would leave a site that names a place and denies it has
|
|
115
|
+
// any width — internally inconsistent, and it made the two ports
|
|
116
|
+
// disagree on every derived value (the shared subsume rows caught
|
|
117
|
+
// it). Safe because the span is VERIFIABLE: a consumer reads the
|
|
118
|
+
// document at (row, col, len) and refuses when it does not match
|
|
119
|
+
// `src`, so a span that has stopped describing its value is
|
|
120
|
+
// detectable rather than believed. See ts/src/site.ts.
|
|
121
|
+
//
|
|
122
|
+
// Read from `this.site`, never from the spec: ValSpec.src is a
|
|
123
|
+
// DIFFERENT field — ScalarVal's literal spelling, kept so `$.a.0x0`
|
|
124
|
+
// addresses the key `0x0` — and reading it here would put a path
|
|
125
|
+
// segment where a source span belongs.
|
|
126
|
+
//
|
|
127
|
+
// UNCONDITIONAL, as the Go twin is (clonePath, go/clone.go). A
|
|
128
|
+
// guard dropping the span when the spec relocates the value was
|
|
129
|
+
// written first and the coverage gate refused it as dead: nothing
|
|
130
|
+
// clones to a new row or column. Should a relocating caller ever
|
|
131
|
+
// appear it must drop both fields — an extent belongs to a place,
|
|
132
|
+
// and the text at a new one is not this value's to claim.
|
|
133
|
+
out.site.len = this.site.len;
|
|
134
|
+
out.site.src = this.site.src;
|
|
101
135
|
out.mark = Object.assign({}, this.mark, fullspec.mark ?? {});
|
|
102
136
|
out.mark.type = this.mark.type && (fullspec.mark?.type ?? true);
|
|
103
137
|
out.mark.hide = this.mark.hide && (fullspec.mark?.hide ?? true);
|
|
138
|
+
// The two IDENTITY riders travel together, under one test: the
|
|
139
|
+
// entity a value IS, and the address a resolved link POINTS AT.
|
|
140
|
+
// One guard rather than two because the pair is what a clone
|
|
141
|
+
// either carries or does not — and because a second test for the
|
|
142
|
+
// link alone would be a branch no document takes, the reference
|
|
143
|
+
// clone catching the pending residual before it ever resolves.
|
|
144
|
+
if (null != this.entity || null != this.link) {
|
|
145
|
+
out.entity = this.entity;
|
|
146
|
+
out.link = this.link;
|
|
147
|
+
}
|
|
148
|
+
if (null != this.deprecation) {
|
|
149
|
+
out.deprecation = this.deprecation;
|
|
150
|
+
}
|
|
151
|
+
// PROVENANCE TRAVELS WITH THE CLONE, exactly as the site does, and
|
|
152
|
+
// for the same reason: a clone of a value the author wrote IS that
|
|
153
|
+
// written value somewhere else, and it carries the author's site,
|
|
154
|
+
// so it can be pointed at. Without this a default reaching a
|
|
155
|
+
// `pack()`-generated child, or a shape carried by a `$ref`, was
|
|
156
|
+
// invisible to `why` -- which answered "nothing met at this path"
|
|
157
|
+
// over a value it had just printed (the review's finding E). See
|
|
158
|
+
// WRITTEN in ts/src/provenance.ts; the mark is only ever set by an
|
|
159
|
+
// instrumented run, so this is one undefined read otherwise.
|
|
160
|
+
if (true === this[provenance_1.WRITTEN]) {
|
|
161
|
+
out[provenance_1.WRITTEN] = true;
|
|
162
|
+
}
|
|
163
|
+
// AND SO DOES BEING PART OF SOMETHING. A clone of a disjunction's
|
|
164
|
+
// member is still that member of that written disjunction, and the
|
|
165
|
+
// whole statement is what the author needs shown -- otherwise a
|
|
166
|
+
// default reaching a generated child reports `*"info"` and
|
|
167
|
+
// `string` as two contributions at two columns, where the author
|
|
168
|
+
// wrote `*info | string` once. A number, deliberately: a Val
|
|
169
|
+
// holding another Val as an own property is a cycle through the
|
|
170
|
+
// tree. See INNER_OF in ts/src/provenance.ts.
|
|
171
|
+
if (null != this[provenance_1.INNER_OF]) {
|
|
172
|
+
out[provenance_1.INNER_OF] = this[provenance_1.INNER_OF];
|
|
173
|
+
}
|
|
104
174
|
return out;
|
|
105
175
|
}
|
|
106
176
|
// Shallow clone for spread constraints: creates a new Val with the
|
|
107
177
|
// correct path context but shares non-path-dependent children.
|
|
108
178
|
// Override in MapVal/ListVal to avoid deep-cloning simple children.
|
|
179
|
+
//
|
|
180
|
+
// A FULL INSTANCE (`dup`, ADR-005): a spread constraint is applied
|
|
181
|
+
// once per destination child, and each application must own its
|
|
182
|
+
// path-dependent innards — a bare clone shared a call's arguments
|
|
183
|
+
// and a preference's inner value across destinations, so a spread
|
|
184
|
+
// like `&: id(key(0)) & $.schema.C` resolved its one shared key()
|
|
185
|
+
// at the first child it met (use-cases/BUGS.md §12's id_name form).
|
|
109
186
|
spreadClone(ctx) {
|
|
110
|
-
|
|
187
|
+
const out = this.clone(ctx, { dup: true });
|
|
188
|
+
repathInstance(out, out.path);
|
|
189
|
+
return out;
|
|
111
190
|
}
|
|
112
191
|
get isPathDependent() {
|
|
113
192
|
if (this._isPathDependent !== undefined)
|
|
@@ -143,10 +222,26 @@ class Val {
|
|
|
143
222
|
this._isPathDependent = dep;
|
|
144
223
|
return dep;
|
|
145
224
|
}
|
|
225
|
+
// PUT A MINTED VALUE WHERE THIS ONE STANDS: the site travels, and so
|
|
226
|
+
// does provenance, because the two answer one question. A narrowed
|
|
227
|
+
// disjunction, a lifted kind, a resolved reference -- each is a
|
|
228
|
+
// value the engine built from a value the author wrote, standing
|
|
229
|
+
// where that one stood. Carrying the site and withholding the mark
|
|
230
|
+
// would let `why` print a value, know the line it came from, and
|
|
231
|
+
// still answer "nothing met at this path" (the review's finding E).
|
|
232
|
+
// See WRITTEN and INNER_OF in ts/src/provenance.ts.
|
|
146
233
|
place(v) {
|
|
147
234
|
v.site.row = this.site.row;
|
|
148
235
|
v.site.col = this.site.col;
|
|
149
236
|
v.site.url = this.site.url;
|
|
237
|
+
v.site.len = this.site.len;
|
|
238
|
+
v.site.src = this.site.src;
|
|
239
|
+
if (true === this[provenance_1.WRITTEN]) {
|
|
240
|
+
v[provenance_1.WRITTEN] = true;
|
|
241
|
+
}
|
|
242
|
+
if (null != this[provenance_1.INNER_OF]) {
|
|
243
|
+
v[provenance_1.INNER_OF] = this[provenance_1.INNER_OF];
|
|
244
|
+
}
|
|
150
245
|
return v;
|
|
151
246
|
}
|
|
152
247
|
// CONTRACT: implementations should treat `this` and `peer` as
|
|
@@ -252,6 +347,60 @@ Object.assign(Val.prototype, {
|
|
|
252
347
|
isUpperFunc: false,
|
|
253
348
|
isGenable: false,
|
|
254
349
|
});
|
|
350
|
+
// THE INSTANCE PATH NORMALISATION (ADR-005), the TS mirror of the Go
|
|
351
|
+
// port's setPaths (go/clone.go): assign every value in a freshly
|
|
352
|
+
// instantiated template the path the PARSER would have given it at the
|
|
353
|
+
// instance's destination. A deep instance clone (`dup`) copies values
|
|
354
|
+
// whose stored parse paths are argument-shaped — a func argument has
|
|
355
|
+
// no key of its own, a spread template lives under a '&' segment — and
|
|
356
|
+
// Val.clone's ctx-cut cannot rebase those: it derives the child path
|
|
357
|
+
// from the driving ctx alone and drops the segments in between, which
|
|
358
|
+
// is how a nested list spread inside a close()d template lost its
|
|
359
|
+
// parent key and every finding under it named the wrong path (the
|
|
360
|
+
// 06-k8s use case's env findings). One canonical walk instead:
|
|
361
|
+
// bag children descend by key (numeric for a list element, as the
|
|
362
|
+
// parser records them), a spread constraint sits under '&' with its
|
|
363
|
+
// content at the bag's own path, and junction members, operator
|
|
364
|
+
// operands, function arguments and a preference's value all sit AT
|
|
365
|
+
// their holder's path — exactly the parse-time shape.
|
|
366
|
+
function repathInstance(v, path) {
|
|
367
|
+
if (true !== v?.isVal) {
|
|
368
|
+
return;
|
|
369
|
+
}
|
|
370
|
+
v.path = path;
|
|
371
|
+
const peg = v.peg;
|
|
372
|
+
if (true === v.isBag) {
|
|
373
|
+
const spread = v.spread?.cj;
|
|
374
|
+
if (null != spread && true === spread.isVal) {
|
|
375
|
+
// The spread's CONTENT is pathed at the bag (its fields land on
|
|
376
|
+
// the bag's children); only its ROOT carries the '&' segment —
|
|
377
|
+
// the same two steps as the Go twin's setPaths.
|
|
378
|
+
repathInstance(spread, path);
|
|
379
|
+
spread.path = [...path, '&'];
|
|
380
|
+
}
|
|
381
|
+
if (true === v.isList) {
|
|
382
|
+
for (let i = 0; i < peg.length; i++) {
|
|
383
|
+
// Numeric, as the parser records list positions: a numeric
|
|
384
|
+
// segment is what tells key() an element is not a keyed
|
|
385
|
+
// position (KeyFuncVal.resolve, `positioned`).
|
|
386
|
+
repathInstance(peg[i], [...path, i]);
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
for (const k of Object.keys(peg)) {
|
|
391
|
+
repathInstance(peg[k], [...path, k]);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
else if (Array.isArray(peg)) {
|
|
396
|
+
for (const t of peg) {
|
|
397
|
+
repathInstance(t, path);
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
else if (true === peg?.isVal) {
|
|
401
|
+
repathInstance(peg, path);
|
|
402
|
+
}
|
|
403
|
+
}
|
|
255
404
|
function inspectpeg(peg, d) {
|
|
256
405
|
const indent = ' '.repeat(d);
|
|
257
406
|
return pretty(Array.isArray(peg) ?
|
package/dist/val/Val.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Val.js","sourceRoot":"","sources":["../../src/val/Val.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Val.js","sourceRoot":"","sources":["../../src/val/Val.ts"],"names":[],"mappings":"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"}
|
package/dist/val/VarVal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VarVal.js","sourceRoot":"","sources":["../../src/val/VarVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AASzD,kCAEgB;AAEhB,gCAIe;AAQf,2CAAuC;
|
|
1
|
+
{"version":3,"file":"VarVal.js","sourceRoot":"","sources":["../../src/val/VarVal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Val } from '../type';
|
|
2
|
+
import { AontuContext } from '../ctx';
|
|
3
|
+
type ArithOp = 'add' | 'sub' | 'mul' | 'div' | 'mod' | 'rem';
|
|
4
|
+
declare function arith(ctx: AontuContext | undefined, op: ArithOp, node: Val, a: Val, b: Val, attempt?: string): Val;
|
|
5
|
+
export type { ArithOp, };
|
|
6
|
+
export { arith, };
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Copyright (c) 2025 Richard Rodger, MIT License */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.arith = arith;
|
|
5
|
+
const err_1 = require("../err");
|
|
6
|
+
const IntegerVal_1 = require("./IntegerVal");
|
|
7
|
+
const NumberVal_1 = require("./NumberVal");
|
|
8
|
+
const BigIntegerVal_1 = require("./BigIntegerVal");
|
|
9
|
+
const BigDecimalVal_1 = require("./BigDecimalVal");
|
|
10
|
+
const Decimal_1 = require("./Decimal");
|
|
11
|
+
const numkind_1 = require("./numkind");
|
|
12
|
+
// The three that divide, and therefore the three that can be handed a
|
|
13
|
+
// zero divisor and cannot answer over the decimal leaf.
|
|
14
|
+
function divides(op) {
|
|
15
|
+
return 'div' === op || 'mod' === op || 'rem' === op;
|
|
16
|
+
}
|
|
17
|
+
const EXACT_RANK = {
|
|
18
|
+
integer: 1,
|
|
19
|
+
biginteger: 2,
|
|
20
|
+
bigdecimal: 3,
|
|
21
|
+
};
|
|
22
|
+
function isBig(k) {
|
|
23
|
+
return 'biginteger' === k || 'bigdecimal' === k;
|
|
24
|
+
}
|
|
25
|
+
// A pref operand contributes its preferred value, and therefore that
|
|
26
|
+
// value's kind too -- the same rule `+` applies.
|
|
27
|
+
function unpref(v) {
|
|
28
|
+
while (v?.isPref) {
|
|
29
|
+
v = v.peg;
|
|
30
|
+
}
|
|
31
|
+
return v;
|
|
32
|
+
}
|
|
33
|
+
function arithKind(v) {
|
|
34
|
+
if (!(v?.isVal && v.isScalar)) {
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
if (v.isBigInteger) {
|
|
38
|
+
return 'biginteger';
|
|
39
|
+
}
|
|
40
|
+
if (v.isBigDecimal) {
|
|
41
|
+
return 'bigdecimal';
|
|
42
|
+
}
|
|
43
|
+
if (v.isInteger) {
|
|
44
|
+
return 'integer';
|
|
45
|
+
}
|
|
46
|
+
return 'number' === typeof v.peg ? 'float' : undefined;
|
|
47
|
+
}
|
|
48
|
+
// An exact-ladder operand as an exact integer. Only reached for the two
|
|
49
|
+
// integral leaves; an `integer` peg is integral by construction.
|
|
50
|
+
function asInteger(v, k) {
|
|
51
|
+
return 'biginteger' === k ? v.peg : BigInt(v.peg);
|
|
52
|
+
}
|
|
53
|
+
function asDecimal(v, k) {
|
|
54
|
+
return 'bigdecimal' === k ? v.peg : new Decimal_1.Decimal(asInteger(v, k), 0);
|
|
55
|
+
}
|
|
56
|
+
// The whole family, in one function, because every rule above is a rule
|
|
57
|
+
// about ARITHMETIC and not about any one operation. `node` is the value
|
|
58
|
+
// the error is located at -- the call, or the `+` op.
|
|
59
|
+
// `attempt` is the name the ERROR reports, which is the operation
|
|
60
|
+
// except when a fold borrows one: `sum` adds, but a bad member is the
|
|
61
|
+
// author's `sum` call and must say so.
|
|
62
|
+
function arith(ctx, op, node, a, b, attempt) {
|
|
63
|
+
const name = attempt ?? op;
|
|
64
|
+
const av = unpref(a);
|
|
65
|
+
const bv = unpref(b);
|
|
66
|
+
const ak = arithKind(av);
|
|
67
|
+
const bk = arithKind(bv);
|
|
68
|
+
// A non-numeric operand is not something to wait for: `resolve` is
|
|
69
|
+
// only reached once every argument has settled, so a kind, a map, a
|
|
70
|
+
// string or a boolean here is the author's mistake and is named as
|
|
71
|
+
// one. (`+` differs, and must: it has answers for strings and
|
|
72
|
+
// booleans.)
|
|
73
|
+
if (undefined === ak || undefined === bk) {
|
|
74
|
+
return (0, err_1.makeNilErr)(ctx, 'invalid-arg', node, undefined, name);
|
|
75
|
+
}
|
|
76
|
+
// A big leaf never silently becomes a binary float, in EITHER operand
|
|
77
|
+
// order. The error names both leaves in operand order.
|
|
78
|
+
if (('float' === ak && isBig(bk)) || (isBig(ak) && 'float' === bk)) {
|
|
79
|
+
return (0, err_1.makeNilErr)(ctx, 'exact_float_mix', node, undefined, name, { left: ak, right: bk });
|
|
80
|
+
}
|
|
81
|
+
if ('float' === ak || 'float' === bk) {
|
|
82
|
+
return floatArith(ctx, op, name, node, av.peg, bv.peg);
|
|
83
|
+
}
|
|
84
|
+
const rank = EXACT_RANK[bk] < EXACT_RANK[ak] ? EXACT_RANK[ak] : EXACT_RANK[bk];
|
|
85
|
+
if (EXACT_RANK.bigdecimal === rank) {
|
|
86
|
+
return decimalArith(ctx, op, name, node, asDecimal(av, ak), asDecimal(bv, bk));
|
|
87
|
+
}
|
|
88
|
+
return integerArith(ctx, op, name, node, asInteger(av, ak), asInteger(bv, bk), EXACT_RANK.biginteger === rank);
|
|
89
|
+
}
|
|
90
|
+
// IEEE-754 binary64, with the JSON-superset constraint still biting: an
|
|
91
|
+
// infinite or NaN result is a located error rather than a value, because
|
|
92
|
+
// there is no way to write one down and no JSON that could carry it.
|
|
93
|
+
function floatArith(ctx, op, name, node, x, y) {
|
|
94
|
+
if (divides(op) && 0 === y) {
|
|
95
|
+
return (0, err_1.makeNilErr)(ctx, 'divide_by_zero', node, undefined, name);
|
|
96
|
+
}
|
|
97
|
+
const out = 'add' === op ? x + y :
|
|
98
|
+
'sub' === op ? x - y :
|
|
99
|
+
'mul' === op ? x * y :
|
|
100
|
+
'div' === op ? x / y :
|
|
101
|
+
// Truncated remainder, sign following the DIVIDEND, which is
|
|
102
|
+
// what JavaScript's `%` and Go's math.Mod both give...
|
|
103
|
+
'rem' === op ? x % y :
|
|
104
|
+
// ...and the floored modulus, sign following the DIVISOR,
|
|
105
|
+
// built from it. Adding the divisor back moves a remainder
|
|
106
|
+
// whose sign disagrees into agreement, and leaves an exact
|
|
107
|
+
// zero alone.
|
|
108
|
+
flooredMod(x % y, y);
|
|
109
|
+
return Number.isFinite(out) ?
|
|
110
|
+
new NumberVal_1.NumberVal({ peg: out }) :
|
|
111
|
+
(0, err_1.makeNilErr)(ctx, 'float_overflow', node, undefined, name);
|
|
112
|
+
}
|
|
113
|
+
function flooredMod(rem, y) {
|
|
114
|
+
return 0 !== rem && (rem < 0) !== (y < 0) ? rem + y : rem;
|
|
115
|
+
}
|
|
116
|
+
// The exact integral leaves. Both compute in bigint, so nothing passes
|
|
117
|
+
// through binary64 and nothing rounds; only the storage test at the end
|
|
118
|
+
// differs, because `biginteger` is unbounded and `integer` is not.
|
|
119
|
+
function integerArith(ctx, op, name, node, x, y, big) {
|
|
120
|
+
if (divides(op) && 0n === y) {
|
|
121
|
+
return (0, err_1.makeNilErr)(ctx, 'divide_by_zero', node, undefined, name);
|
|
122
|
+
}
|
|
123
|
+
const out = 'add' === op ? x + y :
|
|
124
|
+
'sub' === op ? x - y :
|
|
125
|
+
'mul' === op ? x * y :
|
|
126
|
+
// TRUNCATION TOWARD ZERO, stated once here rather than left to
|
|
127
|
+
// whichever host `/` each port happens to call: div(-7, 2) is
|
|
128
|
+
// -3, not -4. BigInt division truncates, and so does Go's
|
|
129
|
+
// big.Int.Quo (its Div floors, which is why the Go twin must
|
|
130
|
+
// not use it).
|
|
131
|
+
'div' === op ? x / y :
|
|
132
|
+
'rem' === op ? x % y :
|
|
133
|
+
flooredModBig(x % y, y);
|
|
134
|
+
if (big) {
|
|
135
|
+
// Unbounded and exact: nothing to check, and no demotion to
|
|
136
|
+
// `integer` however small the result.
|
|
137
|
+
return new BigIntegerVal_1.BigIntegerVal({ peg: out });
|
|
138
|
+
}
|
|
139
|
+
// The result faces the SAME storage contract R1 puts on a literal --
|
|
140
|
+
// integral, inside the int64 window, and exactly representable in
|
|
141
|
+
// binary64 -- because Go's int64 holds results TypeScript's double
|
|
142
|
+
// cannot, and without a shared test a document would resolve in one
|
|
143
|
+
// port and round in the other.
|
|
144
|
+
return (0, numkind_1.isIntegerStorable)(out) ?
|
|
145
|
+
new IntegerVal_1.IntegerVal({ peg: Number(out) }) :
|
|
146
|
+
(0, err_1.makeNilErr)(ctx, 'inexact_integer_sum', node, undefined, name, { sum: out.toString() });
|
|
147
|
+
}
|
|
148
|
+
function flooredModBig(rem, y) {
|
|
149
|
+
return 0n !== rem && (rem < 0n) !== (y < 0n) ? rem + y : rem;
|
|
150
|
+
}
|
|
151
|
+
// The decimal leaf. Addition, subtraction and multiplication are exact
|
|
152
|
+
// coefficient arithmetic and land here; division does not, and says so.
|
|
153
|
+
function decimalArith(ctx, op, name, node, x, y) {
|
|
154
|
+
if (divides(op)) {
|
|
155
|
+
// EXACT DECIMAL DIVISION IS NOT CLOSED: one third has no finite
|
|
156
|
+
// decimal form, so a `div` over this leaf either rounds -- the one
|
|
157
|
+
// thing the leaf exists to refuse -- or refuses. It refuses, and the
|
|
158
|
+
// hint names both ways out.
|
|
159
|
+
return (0, err_1.makeNilErr)(ctx, 'inexact_divide', node, undefined, name);
|
|
160
|
+
}
|
|
161
|
+
const out = 'add' === op ? x.add(y) :
|
|
162
|
+
'sub' === op ? x.add(y.negate()) :
|
|
163
|
+
x.multiply(y);
|
|
164
|
+
// The budget applies to RESULTS as well as literals: an exact answer
|
|
165
|
+
// too wide to hold is refused, never rounded to fit.
|
|
166
|
+
return (0, Decimal_1.decimalOverBudget)(out) ?
|
|
167
|
+
(0, err_1.makeNilErr)(ctx, 'decimal_budget', node, undefined, name) :
|
|
168
|
+
new BigDecimalVal_1.BigDecimalVal({ peg: out });
|
|
169
|
+
} /* node:coverage ignore next 9 */
|
|
170
|
+
//# sourceMappingURL=arith.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arith.js","sourceRoot":"","sources":["../../src/val/arith.ts"],"names":[],"mappings":"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"}
|
package/dist/vet.d.ts
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { TrustOptions, Val } from './type';
|
|
2
|
+
export type VetVerdict = 'valid' | 'invalid' | 'incomplete' | 'error';
|
|
3
|
+
export type VetRole = 'data' | 'schema';
|
|
4
|
+
export type VetSite = {
|
|
5
|
+
file: string;
|
|
6
|
+
row: number;
|
|
7
|
+
col: number;
|
|
8
|
+
len: number;
|
|
9
|
+
role: VetRole;
|
|
10
|
+
src?: string;
|
|
11
|
+
value?: string;
|
|
12
|
+
};
|
|
13
|
+
export type VetFinding = {
|
|
14
|
+
code: string;
|
|
15
|
+
class: string;
|
|
16
|
+
severity: 'error' | 'warning' | 'info';
|
|
17
|
+
path: string;
|
|
18
|
+
message: string;
|
|
19
|
+
hint?: string;
|
|
20
|
+
sites: VetSite[];
|
|
21
|
+
expected?: string;
|
|
22
|
+
actual?: string;
|
|
23
|
+
note?: string;
|
|
24
|
+
};
|
|
25
|
+
export type VetReport = {
|
|
26
|
+
verdict: VetVerdict;
|
|
27
|
+
truncated: boolean;
|
|
28
|
+
findings: VetFinding[];
|
|
29
|
+
};
|
|
30
|
+
export type VetOptions = {
|
|
31
|
+
at?: string;
|
|
32
|
+
closed?: boolean;
|
|
33
|
+
partial?: boolean;
|
|
34
|
+
maxErrors?: number;
|
|
35
|
+
schemaUrl?: string;
|
|
36
|
+
dataUrl?: string;
|
|
37
|
+
schemaPath?: string;
|
|
38
|
+
dataPath?: string;
|
|
39
|
+
trust?: TrustOptions;
|
|
40
|
+
};
|
|
41
|
+
export declare const VET_MAX_ERRORS = 20;
|
|
42
|
+
export declare function displayFile(url: string, label: string, path?: string): string;
|
|
43
|
+
export declare function failureFinding(ctx: any, url?: string, failed?: any): VetFinding;
|
|
44
|
+
export declare function anchorAt(root: any, at: string): Val | undefined;
|
|
45
|
+
export declare function vet(schemaSrc: string, dataSrc: string, opts?: VetOptions): VetReport;
|