aontu 0.62.0 → 0.63.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 +1 -1
- package/dist/agentsmd.js +0 -27
- package/dist/agentsmd.js.map +1 -1
- package/dist/alias.js.map +1 -1
- package/dist/allow.js +0 -92
- package/dist/allow.js.map +1 -1
- package/dist/aontu.d.ts +1 -1
- package/dist/aontu.js +1 -79
- package/dist/aontu.js.map +1 -1
- package/dist/aontumodel.d.ts +4 -0
- package/dist/aontumodel.js +33 -0
- package/dist/aontumodel.js.map +1 -0
- package/dist/cli.js +101 -620
- package/dist/cli.js.map +1 -1
- package/dist/ctx.js +0 -48
- package/dist/ctx.js.map +1 -1
- package/dist/diff.js +0 -32
- package/dist/diff.js.map +1 -1
- package/dist/err.js +0 -40
- package/dist/err.js.map +1 -1
- package/dist/escape.js +0 -45
- package/dist/escape.js.map +1 -1
- package/dist/exactjson.d.ts +0 -35
- package/dist/exactjson.js +0 -131
- package/dist/exactjson.js.map +1 -1
- package/dist/format.js +13 -203
- package/dist/format.js.map +1 -1
- package/dist/grammar.d.ts +9 -0
- package/dist/grammar.js +54 -0
- package/dist/grammar.js.map +1 -0
- package/dist/graph.js +0 -26
- package/dist/graph.js.map +1 -1
- package/dist/hcanon.js +0 -82
- package/dist/hcanon.js.map +1 -1
- package/dist/helpdoc.js +1 -1
- package/dist/helpdoc.js.map +1 -1
- package/dist/hints.d.ts +0 -6
- package/dist/hints.js +54 -55
- package/dist/hints.js.map +1 -1
- package/dist/jsonschema.js +0 -114
- package/dist/jsonschema.js.map +1 -1
- package/dist/keyorder.d.ts +0 -7
- package/dist/keyorder.js +0 -41
- package/dist/keyorder.js.map +1 -1
- package/dist/lang.js +17 -915
- package/dist/lang.js.map +1 -1
- package/dist/lower.js +11 -61
- package/dist/lower.js.map +1 -1
- package/dist/lsp-server.js +0 -16
- package/dist/lsp-server.js.map +1 -1
- package/dist/lsp.d.ts +1 -1
- package/dist/lsp.js +12 -159
- package/dist/lsp.js.map +1 -1
- package/dist/mcp-server.js +0 -26
- package/dist/mcp-server.js.map +1 -1
- package/dist/mcp.js +0 -113
- package/dist/mcp.js.map +1 -1
- package/dist/mod-tool.js +0 -130
- package/dist/mod-tool.js.map +1 -1
- package/dist/mod.js +0 -162
- package/dist/mod.js.map +1 -1
- package/dist/patch.js +0 -217
- package/dist/patch.js.map +1 -1
- package/dist/provenance.js +0 -140
- package/dist/provenance.js.map +1 -1
- package/dist/query.js +0 -75
- package/dist/query.js.map +1 -1
- package/dist/reach.js +0 -43
- package/dist/reach.js.map +1 -1
- package/dist/relation.js +0 -61
- package/dist/relation.js.map +1 -1
- package/dist/render.js +20 -135
- package/dist/render.js.map +1 -1
- package/dist/report-sarif.d.ts +0 -11
- package/dist/report-sarif.js +0 -28
- package/dist/report-sarif.js.map +1 -1
- package/dist/sig.js +0 -35
- package/dist/sig.js.map +1 -1
- package/dist/sigdecl.js +1 -1
- package/dist/sigdecl.js.map +1 -1
- package/dist/siggate.js +0 -4
- package/dist/siggate.js.map +1 -1
- package/dist/site.js +3 -29
- package/dist/site.js.map +1 -1
- package/dist/subsume.d.ts +0 -10
- package/dist/subsume.js +0 -137
- package/dist/subsume.js.map +1 -1
- package/dist/template.d.ts +2 -1
- package/dist/template.js +58 -138
- package/dist/template.js.map +1 -1
- package/dist/trim.js +0 -41
- package/dist/trim.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/type.js.map +1 -1
- package/dist/unify.js +12 -242
- package/dist/unify.js.map +1 -1
- package/dist/utility.js +0 -22
- package/dist/utility.js.map +1 -1
- package/dist/val/AbnfFuncVal.d.ts +18 -0
- package/dist/val/AbnfFuncVal.js +132 -0
- package/dist/val/AbnfFuncVal.js.map +1 -0
- package/dist/val/AbsentVal.d.ts +11 -0
- package/dist/val/AbsentVal.js +30 -0
- package/dist/val/AbsentVal.js.map +1 -0
- package/dist/val/AggFuncVal.d.ts +10 -1
- package/dist/val/AggFuncVal.js +104 -116
- package/dist/val/AggFuncVal.js.map +1 -1
- package/dist/val/ArithFuncVal.js +0 -12
- package/dist/val/ArithFuncVal.js.map +1 -1
- package/dist/val/BagVal.js +1 -78
- package/dist/val/BagVal.js.map +1 -1
- package/dist/val/BigDecimalVal.js +0 -16
- package/dist/val/BigDecimalVal.js.map +1 -1
- package/dist/val/BigIntegerVal.js +0 -16
- package/dist/val/BigIntegerVal.js.map +1 -1
- package/dist/val/CloseFuncVal.js +0 -9
- package/dist/val/CloseFuncVal.js.map +1 -1
- package/dist/val/CmpFuncVal.js +2 -59
- package/dist/val/CmpFuncVal.js.map +1 -1
- package/dist/val/ConjunctVal.js +0 -29
- package/dist/val/ConjunctVal.js.map +1 -1
- package/dist/val/ConstraintVal.js +0 -500
- package/dist/val/ConstraintVal.js.map +1 -1
- package/dist/val/ContainerKindVal.js +0 -2
- package/dist/val/ContainerKindVal.js.map +1 -1
- package/dist/val/CopyFuncVal.js +0 -3
- package/dist/val/CopyFuncVal.js.map +1 -1
- package/dist/val/Decimal.js +0 -179
- package/dist/val/Decimal.js.map +1 -1
- package/dist/val/DeprecateFuncVal.js.map +1 -1
- package/dist/val/DisjunctVal.js +0 -152
- package/dist/val/DisjunctVal.js.map +1 -1
- package/dist/val/EachFuncVal.js +0 -3
- package/dist/val/EachFuncVal.js.map +1 -1
- package/dist/val/EmitFuncVal.d.ts +1 -1
- package/dist/val/EmitFuncVal.js +6 -119
- package/dist/val/EmitFuncVal.js.map +1 -1
- package/dist/val/ExpectVal.js +0 -62
- package/dist/val/ExpectVal.js.map +1 -1
- package/dist/val/FilterFuncVal.js +0 -25
- package/dist/val/FilterFuncVal.js.map +1 -1
- package/dist/val/FuncBaseVal.d.ts +1 -0
- package/dist/val/FuncBaseVal.js +7 -127
- package/dist/val/FuncBaseVal.js.map +1 -1
- package/dist/val/GraphAtomVal.js +0 -15
- package/dist/val/GraphAtomVal.js.map +1 -1
- package/dist/val/HideFuncVal.js +0 -13
- package/dist/val/HideFuncVal.js.map +1 -1
- package/dist/val/IntegerVal.js +0 -61
- package/dist/val/IntegerVal.js.map +1 -1
- package/dist/val/JunctionVal.js +0 -20
- package/dist/val/JunctionVal.js.map +1 -1
- package/dist/val/KeyFuncVal.js +0 -46
- package/dist/val/KeyFuncVal.js.map +1 -1
- package/dist/val/ListVal.js +0 -57
- package/dist/val/ListVal.js.map +1 -1
- package/dist/val/LowerFuncVal.js +0 -11
- package/dist/val/LowerFuncVal.js.map +1 -1
- package/dist/val/MapVal.js +0 -151
- package/dist/val/MapVal.js.map +1 -1
- package/dist/val/MatchFuncVal.js +0 -27
- package/dist/val/MatchFuncVal.js.map +1 -1
- package/dist/val/{FormFuncVal.d.ts → MaybeFuncVal.d.ts} +5 -5
- package/dist/val/MaybeFuncVal.js +50 -0
- package/dist/val/MaybeFuncVal.js.map +1 -0
- package/dist/val/MoveFuncVal.js +0 -18
- package/dist/val/MoveFuncVal.js.map +1 -1
- package/dist/val/NilVal.js +0 -60
- package/dist/val/NilVal.js.map +1 -1
- package/dist/val/NomFuncVal.js +8 -42
- package/dist/val/NomFuncVal.js.map +1 -1
- package/dist/val/NumberVal.js +0 -15
- package/dist/val/NumberVal.js.map +1 -1
- package/dist/val/OpBaseVal.d.ts +1 -0
- package/dist/val/OpBaseVal.js +3 -15
- package/dist/val/OpBaseVal.js.map +1 -1
- package/dist/val/PackFuncVal.js +0 -34
- package/dist/val/PackFuncVal.js.map +1 -1
- package/dist/val/PathFuncVal.js +0 -6
- package/dist/val/PathFuncVal.js.map +1 -1
- package/dist/val/PathVal.js +0 -41
- package/dist/val/PathVal.js.map +1 -1
- package/dist/val/PlaceVal.js +0 -25
- package/dist/val/PlaceVal.js.map +1 -1
- package/dist/val/PlusOpVal.d.ts +1 -7
- package/dist/val/PlusOpVal.js +13 -74
- package/dist/val/PlusOpVal.js.map +1 -1
- package/dist/val/PrefFuncVal.js +0 -1
- package/dist/val/PrefFuncVal.js.map +1 -1
- package/dist/val/PrefVal.js +0 -167
- package/dist/val/PrefVal.js.map +1 -1
- package/dist/val/RecurseVal.js +0 -55
- package/dist/val/RecurseVal.js.map +1 -1
- package/dist/val/RefVal.js +0 -282
- package/dist/val/RefVal.js.map +1 -1
- package/dist/val/ReferFuncVal.js +0 -232
- package/dist/val/ReferFuncVal.js.map +1 -1
- package/dist/val/ScalarKindVal.js +0 -49
- package/dist/val/ScalarKindVal.js.map +1 -1
- package/dist/val/ScalarVal.js +0 -11
- package/dist/val/ScalarVal.js.map +1 -1
- package/dist/val/StrFuncVal.js +0 -18
- package/dist/val/StrFuncVal.js.map +1 -1
- package/dist/val/SuperFuncVal.js +0 -32
- package/dist/val/SuperFuncVal.js.map +1 -1
- package/dist/val/TopVal.js +0 -1
- package/dist/val/TopVal.js.map +1 -1
- package/dist/val/TranslateFuncVal.js +1 -3
- package/dist/val/TranslateFuncVal.js.map +1 -1
- package/dist/val/UpperFuncVal.js +0 -11
- package/dist/val/UpperFuncVal.js.map +1 -1
- package/dist/val/Val.d.ts +1 -0
- package/dist/val/Val.js +2 -133
- package/dist/val/Val.js.map +1 -1
- package/dist/val/VarVal.js +0 -12
- package/dist/val/VarVal.js.map +1 -1
- package/dist/val/arith.js +0 -37
- package/dist/val/arith.js.map +1 -1
- package/dist/val/caserange.js +0 -61
- package/dist/val/caserange.js.map +1 -1
- package/dist/val/members.js +0 -6
- package/dist/val/members.js.map +1 -1
- package/dist/val/numcmp.js +0 -11
- package/dist/val/numcmp.js.map +1 -1
- package/dist/val/numkind.js +0 -145
- package/dist/val/numkind.js.map +1 -1
- package/dist/val/valutil.js +0 -16
- package/dist/val/valutil.js.map +1 -1
- package/dist/vet.js +0 -461
- package/dist/vet.js.map +1 -1
- package/dist/view.js +0 -414
- package/dist/view.js.map +1 -1
- package/dist/walk.js +0 -41
- package/dist/walk.js.map +1 -1
- package/grammar/aontu.abnf +8 -6
- package/grammar/aontu.gbnf +4 -4
- package/grammar/aontu.lark +4 -4
- package/grammar/aontu.tmLanguage.json +1 -1
- package/package.json +4 -2
- package/src/agentsmd.ts +0 -35
- package/src/alias.ts +0 -39
- package/src/allow.ts +1 -96
- package/src/aontu.ts +3 -110
- package/src/aontumodel.ts +32 -0
- package/src/cli.ts +113 -682
- package/src/ctx.ts +0 -103
- package/src/diff.ts +0 -40
- package/src/err.ts +0 -40
- package/src/escape.ts +0 -46
- package/src/exactjson.ts +0 -131
- package/src/format.ts +14 -257
- package/src/grammar.ts +72 -0
- package/src/graph.ts +0 -61
- package/src/hcanon.ts +0 -82
- package/src/helpdoc.ts +1 -1
- package/src/hints.ts +66 -57
- package/src/jsonschema.ts +0 -123
- package/src/keyorder.ts +0 -42
- package/src/lang.ts +19 -931
- package/src/lower.ts +12 -62
- package/src/lsp-server.ts +0 -16
- package/src/lsp.ts +12 -180
- package/src/mcp-server.ts +0 -31
- package/src/mcp.ts +0 -130
- package/src/mod-tool.ts +0 -158
- package/src/mod.ts +0 -178
- package/src/patch.ts +0 -232
- package/src/provenance.ts +0 -183
- package/src/query.ts +0 -84
- package/src/reach.ts +0 -53
- package/src/relation.ts +0 -84
- package/src/render.ts +20 -172
- package/src/report-sarif.ts +0 -48
- package/src/sig.ts +0 -35
- package/src/sigdecl.ts +1 -1
- package/src/siggate.ts +0 -30
- package/src/site.ts +3 -29
- package/src/subsume.ts +1 -161
- package/src/template.ts +69 -140
- package/src/trim.ts +0 -53
- package/src/type.ts +2 -45
- package/src/unify.ts +13 -251
- package/src/utility.ts +0 -31
- package/src/val/AbnfFuncVal.ts +181 -0
- package/src/val/AbsentVal.ts +54 -0
- package/src/val/AggFuncVal.ts +152 -188
- package/src/val/ArithFuncVal.ts +0 -20
- package/src/val/BagVal.ts +1 -78
- package/src/val/BigDecimalVal.ts +0 -16
- package/src/val/BigIntegerVal.ts +0 -16
- package/src/val/CloseFuncVal.ts +0 -9
- package/src/val/CmpFuncVal.ts +4 -166
- package/src/val/ConjunctVal.ts +0 -33
- package/src/val/ConstraintVal.ts +2 -537
- package/src/val/ContainerKindVal.ts +0 -18
- package/src/val/CopyFuncVal.ts +0 -5
- package/src/val/Decimal.ts +1 -185
- package/src/val/DeprecateFuncVal.ts +0 -10
- package/src/val/DisjunctVal.ts +0 -157
- package/src/val/EachFuncVal.ts +0 -40
- package/src/val/EmitFuncVal.ts +8 -208
- package/src/val/ExpectVal.ts +0 -62
- package/src/val/FilterFuncVal.ts +0 -55
- package/src/val/FuncBaseVal.ts +9 -130
- package/src/val/GraphAtomVal.ts +0 -42
- package/src/val/HideFuncVal.ts +0 -15
- package/src/val/IntegerVal.ts +0 -61
- package/src/val/JunctionVal.ts +0 -20
- package/src/val/KeyFuncVal.ts +0 -48
- package/src/val/ListVal.ts +0 -59
- package/src/val/LowerFuncVal.ts +0 -12
- package/src/val/MapVal.ts +0 -151
- package/src/val/MatchFuncVal.ts +0 -59
- package/src/val/MaybeFuncVal.ts +86 -0
- package/src/val/MoveFuncVal.ts +0 -20
- package/src/val/NilVal.ts +0 -60
- package/src/val/NomFuncVal.ts +8 -95
- package/src/val/NumberVal.ts +0 -16
- package/src/val/OpBaseVal.ts +4 -17
- package/src/val/PackFuncVal.ts +0 -63
- package/src/val/PathFuncVal.ts +0 -32
- package/src/val/PathVal.ts +0 -66
- package/src/val/PlaceVal.ts +0 -45
- package/src/val/PlusOpVal.ts +18 -75
- package/src/val/PrefFuncVal.ts +0 -1
- package/src/val/PrefVal.ts +0 -179
- package/src/val/RecurseVal.ts +0 -81
- package/src/val/RefVal.ts +1 -285
- package/src/val/ReferFuncVal.ts +0 -255
- package/src/val/ScalarKindVal.ts +0 -50
- package/src/val/ScalarVal.ts +0 -12
- package/src/val/StrFuncVal.ts +0 -44
- package/src/val/SuperFuncVal.ts +0 -42
- package/src/val/TopVal.ts +0 -1
- package/src/val/TranslateFuncVal.ts +1 -51
- package/src/val/UpperFuncVal.ts +0 -12
- package/src/val/Val.ts +3 -192
- package/src/val/VarVal.ts +0 -15
- package/src/val/arith.ts +0 -92
- package/src/val/caserange.ts +0 -62
- package/src/val/members.ts +0 -23
- package/src/val/numcmp.ts +1 -27
- package/src/val/numkind.ts +0 -149
- package/src/val/valutil.ts +0 -16
- package/src/vet.ts +1 -582
- package/src/view.ts +0 -507
- package/src/walk.ts +0 -41
- package/dist/std.d.ts +0 -3
- package/dist/std.js +0 -672
- package/dist/std.js.map +0 -1
- package/dist/val/FormFuncVal.js +0 -55
- package/dist/val/FormFuncVal.js.map +0 -1
- package/dist/val/NamerFuncVal.d.ts +0 -12
- package/dist/val/NamerFuncVal.js +0 -176
- package/dist/val/NamerFuncVal.js.map +0 -1
- package/src/std.ts +0 -683
package/dist/std.js
DELETED
|
@@ -1,672 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* Copyright (c) 2025 Richard Rodger, MIT License */
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.AONTU_MODELS = exports.AONTU_SCHEME = exports.STD_SOURCES = void 0;
|
|
5
|
-
// THE LANGUAGE-SUPPLIED MODELS (G4 phase 4,
|
|
6
|
-
// docs/capability-review/g4-identity-relations.md): `@"aontu:system"`
|
|
7
|
-
// is served from the engine itself — no filesystem, no package
|
|
8
|
-
// resolution — so a document may use it under every include capability
|
|
9
|
-
// except `none`, and the hermeticity posture is not widened by a source
|
|
10
|
-
// that never leaves the process.
|
|
11
|
-
//
|
|
12
|
-
// EVERY name here carries the `aontu:` prefix (ADR-028): a
|
|
13
|
-
// language-supplied schema is spelled one way, and the scheme is what
|
|
14
|
-
// makes it unshadowable. There is no second, bare-name spelling.
|
|
15
|
-
//
|
|
16
|
-
// The TEXT is the shared artifact: go/std.go carries the same bytes,
|
|
17
|
-
// and test/spec/aontu-system.tsv pins its canon and its canon-hash in
|
|
18
|
-
// both engines, so the two copies cannot drift without a red suite.
|
|
19
|
-
// It carries no backtick for that reason: one string literal per port,
|
|
20
|
-
// and Go's raw string has no escape.
|
|
21
|
-
const STD_SYSTEM = `# aontu:system --- the SYSTEM VOCABULARY (G4 phase 4). Ports, components
|
|
22
|
-
# and relations need no syntax: they are schemas. Everything here is
|
|
23
|
-
# ordinary unification --- conjunction, spreads, marks, defaults ---
|
|
24
|
-
# so the vocabulary costs the language nothing, and an author who wants
|
|
25
|
-
# a different one writes it the same way.
|
|
26
|
-
#
|
|
27
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
28
|
-
# canon-hash. Entity ids deliberately do NOT embed versions: fusing
|
|
29
|
-
# identity and version makes "v1 and v2 describe the same entity"
|
|
30
|
-
# inexpressible.
|
|
31
|
-
|
|
32
|
-
aontu: System: {
|
|
33
|
-
# One end of a connection.
|
|
34
|
-
Port: type({ direction:*in | out | inout protocol?:string })
|
|
35
|
-
|
|
36
|
-
# A node with ports. Where a Component sits in the tree is what it
|
|
37
|
-
# is a component OF -- containment is the document's own structure
|
|
38
|
-
# and needs no mark of its own.
|
|
39
|
-
Component: type({ ports?:{ &: $.aontu.System.Port } })
|
|
40
|
-
|
|
41
|
-
# A component that is a service. Written out rather than as
|
|
42
|
-
# $.aontu.System.Component & {kind: service}: a reference from one member of
|
|
43
|
-
# this file to another does not survive being INCLUDED into a
|
|
44
|
-
# document (the marks the include carries make the referring member
|
|
45
|
-
# unusable), so the vocabulary states each schema on its own.
|
|
46
|
-
Service: type({ kind:service ports?:{ &: $.aontu.System.Port } })
|
|
47
|
-
|
|
48
|
-
# A semantic version (semver.org 2.0.0) as an ORDERED TUPLE: major,
|
|
49
|
-
# minor, patch, pre-release. A list and not a dotted string, because a
|
|
50
|
-
# version is COMPARED and the comparison runs component by component
|
|
51
|
-
# from the left: "1.10.0" sorts below "1.9.0" as text. A list and not
|
|
52
|
-
# a map, because a map has no order of its own to compare along.
|
|
53
|
-
#
|
|
54
|
-
# THE TAIL DEFAULTS, so [1] is [1 0 0 ""] and [1 2] is [1 2 0 ""].
|
|
55
|
-
# A major-only version is the common case and should cost one token.
|
|
56
|
-
#
|
|
57
|
-
# LEADING ZEROES ARE IMPOSSIBLE HERE rather than merely forbidden:
|
|
58
|
-
# the numeric parts are integers, and 01 is not a distinct integer
|
|
59
|
-
# literal. The spec's "MUST NOT contain leading zeroes" needs no rule.
|
|
60
|
-
#
|
|
61
|
-
# THE PRE-RELEASE CHECK IS PARTIAL, and deliberately says so. The
|
|
62
|
-
# spec's grammar is dot-separated identifiers, each non-empty, each
|
|
63
|
-
# [0-9A-Za-z-], numeric ones without leading zeroes -- which as a
|
|
64
|
-
# regex is a quantified group containing a quantifier, and re()
|
|
65
|
-
# refuses that shape outright (constraint_pattern) because it
|
|
66
|
-
# backtracks exponentially. So the alphabet is checked and the
|
|
67
|
-
# STRUCTURE is not: "beta_1" is refused, "alpha..1" and "01" are not.
|
|
68
|
-
# Carrying the pre-release as a LIST of identifiers would check it in
|
|
69
|
-
# full, one identifier per element, and is the change to make if that
|
|
70
|
-
# matters more than [1 0 0 ""] does.
|
|
71
|
-
#
|
|
72
|
-
# BUILD METADATA IS NOT CARRIED. The spec has it, and the spec also
|
|
73
|
-
# says it MUST be ignored when determining precedence -- so a type
|
|
74
|
-
# whose purpose is comparison is the wrong place for it.
|
|
75
|
-
Semver: type(
|
|
76
|
-
[
|
|
77
|
-
integer & min(0)
|
|
78
|
-
*0 | (integer & min(0))
|
|
79
|
-
*0 | (integer & min(0))
|
|
80
|
-
*"" | (string & re("^[0-9A-Za-z.-]+$"))
|
|
81
|
-
] & length(4)
|
|
82
|
-
)
|
|
83
|
-
# (The Relation schema that used to sit here is retired with the
|
|
84
|
-
# relations: magic key, RELATIONS.0.md P2: a relation is declared
|
|
85
|
-
# by the graph atoms at its field -- rel(t) & acyclic() &
|
|
86
|
-
# inverse(name) -- and the target half is rel(t)'s flow.)
|
|
87
|
-
}
|
|
88
|
-
`;
|
|
89
|
-
const STD_VIEW = `# aontu:view --- the FIGURE VOCABULARY (VIEWS.0.md, "6. The view
|
|
90
|
-
# document"). A view document declares its figures as data, and a
|
|
91
|
-
# declaration is just a map: this is the schema for one, so a typo is
|
|
92
|
-
# refused where every other mistake in an aontu document is refused --
|
|
93
|
-
# at evaluation, by unification -- rather than by the verb that reads
|
|
94
|
-
# it afterwards.
|
|
95
|
-
#
|
|
96
|
-
# @"aontu:view"
|
|
97
|
-
# @"./system.aon"
|
|
98
|
-
#
|
|
99
|
-
# views: {&: $.aontu.View.Figure} & {
|
|
100
|
-
# arch: {kind: matrix, order: partition, out: "docs/arch.dsm.txt"}
|
|
101
|
-
# }
|
|
102
|
-
#
|
|
103
|
-
# The keys ARE the view options: the command-line flags without the
|
|
104
|
-
# dashes, one vocabulary for the CLI, the library and the file. The
|
|
105
|
-
# poset is not among the kinds, because a view document declares
|
|
106
|
-
# figures of the ONE document it includes and the poset compares
|
|
107
|
-
# several.
|
|
108
|
-
#
|
|
109
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
110
|
-
# canon-hash. This file carries no backtick: it is one string literal
|
|
111
|
-
# per port, and Go raw strings have no escape.
|
|
112
|
-
|
|
113
|
-
aontu: View: {
|
|
114
|
-
# One declared figure. The kind says what to draw and out says where
|
|
115
|
-
# it belongs; everything else narrows the drawing, and each option
|
|
116
|
-
# belongs to the kinds that read it.
|
|
117
|
-
Figure: type({
|
|
118
|
-
kind: doc | lattice | tree | matrix | graph | layer | sets | layers
|
|
119
|
-
| ladder
|
|
120
|
-
out: string
|
|
121
|
-
|
|
122
|
-
# Every kind.
|
|
123
|
-
as?: text | mermaid | dot | er | svg
|
|
124
|
-
at?: string
|
|
125
|
-
maxRows?: integer & min(0)
|
|
126
|
-
|
|
127
|
-
# doc: how many levels of key to draw.
|
|
128
|
-
depth?: integer & min(0)
|
|
129
|
-
|
|
130
|
-
# tree, matrix, layer: the relation drawn. graph: the predicates
|
|
131
|
-
# kept. tree: the subtrees drawn.
|
|
132
|
-
relation?: string
|
|
133
|
-
relations?: [&: string]
|
|
134
|
-
roots?: [&: string]
|
|
135
|
-
|
|
136
|
-
# matrix.
|
|
137
|
-
order?: canon | partition
|
|
138
|
-
closure?: boolean
|
|
139
|
-
|
|
140
|
-
# graph, layer.
|
|
141
|
-
groupBy?: string
|
|
142
|
-
label?: string
|
|
143
|
-
layers?: [&: string]
|
|
144
|
-
edges?: upward | all | none
|
|
145
|
-
|
|
146
|
-
# sets, layers.
|
|
147
|
-
sets?: string
|
|
148
|
-
member?: string
|
|
149
|
-
universe?: string
|
|
150
|
-
minDegree?: integer & min(0)
|
|
151
|
-
maxCols?: integer & min(0)
|
|
152
|
-
minSize?: integer & min(0)
|
|
153
|
-
})
|
|
154
|
-
}
|
|
155
|
-
`;
|
|
156
|
-
// THE LANGUAGE-SUPPLIED MODELS (docs/design/MODELS.0.md D1;
|
|
157
|
-
// docs/design/RENDER.0.md P0 and P1). `aontu:NAME` is Node's device --
|
|
158
|
-
// a prefix no relative path, package name or module path can spell --
|
|
159
|
-
// so the resolver routes on it before any other leg and never touches
|
|
160
|
-
// the filesystem for it. Held in String.raw so the backslashes of the
|
|
161
|
-
// regexes reach the parser as written; no backtick, as above.
|
|
162
|
-
//
|
|
163
|
-
// aontu:code is the OUTPUT VOCABULARY: an instance of it is what a
|
|
164
|
-
// transform evaluates to and what `aontu render` folds to bytes.
|
|
165
|
-
// aontu:profile is the schema of a render profile, the data a unit of
|
|
166
|
-
// one language is rendered under. Both are pinned by canon and hash
|
|
167
|
-
// rows (test/spec/aontu-code.tsv, test/spec/aontu-profile.tsv).
|
|
168
|
-
const STD_CODE = String.raw `# aontu:code --- THE OUTPUT VOCABULARY. An aontu transform evaluates to
|
|
169
|
-
# an instance of this schema, and 'aontu render' turns the instance
|
|
170
|
-
# into bytes. Because it is an ordinary schema, a transform's result is
|
|
171
|
-
# checked by unification before anything is rendered.
|
|
172
|
-
#
|
|
173
|
-
# @"aontu:code"
|
|
174
|
-
# code: { units: [ { path: "out.py", lang: "python", decls: [
|
|
175
|
-
# { k: "frag", of: emit($.model, %rules) } ] } ] }
|
|
176
|
-
#
|
|
177
|
-
# TWO ESCAPES, both counted by the render report: {k: "text", lang,
|
|
178
|
-
# text} carries verbatim target syntax, and 'x' is an open per-backend
|
|
179
|
-
# rider. CONTAINER TYPES TAKE LEAVES ONLY: anything deeper is a named
|
|
180
|
-
# alias declaration plus a {k: "ref"}, which keeps this schema's meet
|
|
181
|
-
# linear. A FRAGMENT IS FLAT: each piece carries its own depth ('at'),
|
|
182
|
-
# so the renderer owns every prefix and no piece nests another; a bare
|
|
183
|
-
# string piece is a line at depth 0, and no inline text may hold a line
|
|
184
|
-
# terminator -- that is checked here, before any renderer runs.
|
|
185
|
-
#
|
|
186
|
-
# THE ROOT IS NOT type()-MARKED, on purpose: 'aontu render' reads the
|
|
187
|
-
# instance through generate(), and a type()-marked subtree does not
|
|
188
|
-
# generate. A document that includes this vocabulary and writes no
|
|
189
|
-
# units generates 'code: {units: []}', which is what it said.
|
|
190
|
-
#
|
|
191
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
192
|
-
# canon-hash.
|
|
193
|
-
|
|
194
|
-
%name = string & re("^[A-Za-z_][A-Za-z0-9_]*$") & length(min(1) & max(255))
|
|
195
|
-
|
|
196
|
-
%text = close({ k:"text" lang:string & length(min(1)) text:string })
|
|
197
|
-
|
|
198
|
-
%doc = close({
|
|
199
|
-
text: string
|
|
200
|
-
deprecated?: close({ msg?:string use?:string since?:string })
|
|
201
|
-
})
|
|
202
|
-
|
|
203
|
-
%check = close({ c:"min" n:number exclusive:*false | boolean })
|
|
204
|
-
| close({ c:"max" n:number exclusive:*false | boolean })
|
|
205
|
-
| close({ c:"re" p:string })
|
|
206
|
-
| close({ c:"len" min?:integer & min(0) max?:integer & min(0) })
|
|
207
|
-
| close({ c:"unique" key?:%name })
|
|
208
|
-
| close({ c:"ne" of:[&: string | number | boolean] })
|
|
209
|
-
| close({ c:"must" note:string })
|
|
210
|
-
|
|
211
|
-
%prim = close({
|
|
212
|
-
k: "prim"
|
|
213
|
-
prim: "string" | "int" | "bigint" | "float" | "decimal" | "bool" | "null" | "any"
|
|
214
|
-
})
|
|
215
|
-
|
|
216
|
-
%ref = close({ k:"ref" name:%name unit?:string })
|
|
217
|
-
%leaf = %prim | %ref | %text
|
|
218
|
-
|
|
219
|
-
%type = %leaf
|
|
220
|
-
| close({ k:"list" of:%leaf })
|
|
221
|
-
| close({ k:"map" key:%leaf of:%leaf })
|
|
222
|
-
| close({ k:"opt" of:%leaf })
|
|
223
|
-
| close({ k:"union" of:[&: %leaf] })
|
|
224
|
-
| close({ k:"lit" of:[&: string | number | boolean | null] })
|
|
225
|
-
|
|
226
|
-
%field = close({
|
|
227
|
-
name: %name
|
|
228
|
-
type: %type
|
|
229
|
-
optional: *false | boolean
|
|
230
|
-
doc?: %doc
|
|
231
|
-
default?: string | number | boolean | null
|
|
232
|
-
check?: [&: %check]
|
|
233
|
-
rel?: close({ to:string name?:string })
|
|
234
|
-
x?: {}
|
|
235
|
-
})
|
|
236
|
-
|
|
237
|
-
%member = close({ name:%name value?:string | number doc?:%doc x?:{} })
|
|
238
|
-
|
|
239
|
-
%param = close({
|
|
240
|
-
name: %name
|
|
241
|
-
type: %type
|
|
242
|
-
default?: string | number | boolean | null
|
|
243
|
-
x?: {}
|
|
244
|
-
})
|
|
245
|
-
|
|
246
|
-
# THE FRAGMENT ALGEBRA. A line's inline pieces hold no terminator; a
|
|
247
|
-
# blank is its terminators alone; a raw is the one piece that may carry
|
|
248
|
-
# terminators, re-indented to its depth unless it says not to.
|
|
249
|
-
%inline = string & re("^[^\n\r]*$") | %ref
|
|
250
|
-
%line = close({ k:"line" at:*0 | integer & min(0) & max(64) of:[&: %inline] })
|
|
251
|
-
%blank = close({ k:"blank" n:*1 | integer & min(1) & max(16) })
|
|
252
|
-
|
|
253
|
-
%raw = close({
|
|
254
|
-
k: "raw"
|
|
255
|
-
at: *0 | integer & min(0) & max(64)
|
|
256
|
-
text: string
|
|
257
|
-
reindent: *true | boolean
|
|
258
|
-
})
|
|
259
|
-
|
|
260
|
-
%piece = %line | %blank | %raw | string & re("^[^\n\r]*$")
|
|
261
|
-
%frag = close({ k:"frag" of:[&: %piece] })
|
|
262
|
-
%body = %frag | close({ k:"abstract" })
|
|
263
|
-
|
|
264
|
-
%record = close({
|
|
265
|
-
k: "record"
|
|
266
|
-
name: %name
|
|
267
|
-
doc?: %doc
|
|
268
|
-
open: *false | boolean
|
|
269
|
-
fields: [&: %field]
|
|
270
|
-
entity?: string
|
|
271
|
-
check?: [&: %check]
|
|
272
|
-
x?: {}
|
|
273
|
-
})
|
|
274
|
-
|
|
275
|
-
%enum = close({ k:"enum" name:%name doc?:%doc members:[&: %member] x?:{} })
|
|
276
|
-
|
|
277
|
-
%alias = close({
|
|
278
|
-
k: "alias"
|
|
279
|
-
name: %name
|
|
280
|
-
doc?: %doc
|
|
281
|
-
type: %type
|
|
282
|
-
check?: [&: %check]
|
|
283
|
-
x?: {}
|
|
284
|
-
})
|
|
285
|
-
|
|
286
|
-
%const = close({
|
|
287
|
-
k: "const"
|
|
288
|
-
name: %name
|
|
289
|
-
doc?: %doc
|
|
290
|
-
type?: %type
|
|
291
|
-
value: string | number | boolean | null
|
|
292
|
-
x?: {}
|
|
293
|
-
})
|
|
294
|
-
|
|
295
|
-
%func = close({
|
|
296
|
-
k: "func"
|
|
297
|
-
name: %name
|
|
298
|
-
doc?: %doc
|
|
299
|
-
params: [&: %param]
|
|
300
|
-
returns?: %type
|
|
301
|
-
body: %body
|
|
302
|
-
x?: {}
|
|
303
|
-
})
|
|
304
|
-
|
|
305
|
-
%decl = %record | %enum | %alias | %const | %func | %text | %frag
|
|
306
|
-
|
|
307
|
-
%import = close({
|
|
308
|
-
from: string & length(min(1))
|
|
309
|
-
names?: [&: %name]
|
|
310
|
-
alias?: %name
|
|
311
|
-
x?: {}
|
|
312
|
-
})
|
|
313
|
-
|
|
314
|
-
%unit = close({
|
|
315
|
-
path: string & length(min(1))
|
|
316
|
-
lang: string & length(min(1))
|
|
317
|
-
pkg?: string
|
|
318
|
-
doc?: %doc
|
|
319
|
-
imports?: [&: %import]
|
|
320
|
-
decls: [&: %decl]
|
|
321
|
-
profile?: {}
|
|
322
|
-
x?: {}
|
|
323
|
-
})
|
|
324
|
-
|
|
325
|
-
%source = close({ path?:string hash?:string & re("^aon1-[A-Za-z0-9_-]+$") })
|
|
326
|
-
|
|
327
|
-
aontu: Code: close({ source?:%source units:[&: %unit] })
|
|
328
|
-
`;
|
|
329
|
-
const STD_PROFILE = String.raw `# aontu:profile --- THE PROFILE VOCABULARY. A profile is the data
|
|
330
|
-
# 'aontu render' applies to a unit of one language, and it is DATA and
|
|
331
|
-
# only data: a field belongs here only if the renderer applies it
|
|
332
|
-
# without looking at the shape of any node. Anything else is a lowering
|
|
333
|
-
# and lives in the transform.
|
|
334
|
-
#
|
|
335
|
-
# @"aontu:profile"
|
|
336
|
-
# profile: { lang: "python", indent: { unit: " ", width: 4 } }
|
|
337
|
-
#
|
|
338
|
-
# Three profiles are bundled with the engine -- aontu:lang/typescript,
|
|
339
|
-
# aontu:lang/go and aontu:lang/text -- and a unit is matched to one by
|
|
340
|
-
# its 'lang'. A fragment-only unit needs nothing beyond 'indent'.
|
|
341
|
-
#
|
|
342
|
-
# THE ROOT IS NOT type()-MARKED, for the reason aontu:code's is not:
|
|
343
|
-
# 'aontu render' reads a profile through generate().
|
|
344
|
-
#
|
|
345
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
346
|
-
# canon-hash.
|
|
347
|
-
|
|
348
|
-
%name = string & re("^[A-Za-z_][A-Za-z0-9_]*$")
|
|
349
|
-
|
|
350
|
-
%case = "as-is" | "camel" | "pascal" | "snake" | "screaming" | "kebab"
|
|
351
|
-
|
|
352
|
-
%comment = close({ open?:string prefix?:string close?:string })
|
|
353
|
-
|
|
354
|
-
%form = close({
|
|
355
|
-
open: *"" | string
|
|
356
|
-
close: *"" | string
|
|
357
|
-
prec: *9 | integer & min(0) & max(9)
|
|
358
|
-
childPrec: *0 | integer & min(0) & max(9)
|
|
359
|
-
})
|
|
360
|
-
|
|
361
|
-
%profile = close({
|
|
362
|
-
lang: string & length(min(1))
|
|
363
|
-
lowering?: "typescript" | "go"
|
|
364
|
-
indent: close({
|
|
365
|
-
unit: *" " | string & length(min(1))
|
|
366
|
-
width: *2 | integer & min(0) & max(16)
|
|
367
|
-
})
|
|
368
|
-
comment?: close({ line?:%comment block?:%comment doc?:%comment })
|
|
369
|
-
str?: close({
|
|
370
|
-
quote: *"\"" | string & length(min(1) & max(1))
|
|
371
|
-
escape: { &: string }
|
|
372
|
-
})
|
|
373
|
-
ident?: close({
|
|
374
|
-
chars: *"ascii-word" | "ascii-word"
|
|
375
|
-
reserved?: [&: string]
|
|
376
|
-
case?: close({
|
|
377
|
-
record?: %case
|
|
378
|
-
field?: %case
|
|
379
|
-
enum?: %case
|
|
380
|
-
member?: %case
|
|
381
|
-
const?: %case
|
|
382
|
-
func?: %case
|
|
383
|
-
param?: %case
|
|
384
|
-
alias?: %case
|
|
385
|
-
})
|
|
386
|
-
acronyms?: [&: %name]
|
|
387
|
-
})
|
|
388
|
-
types?: close({
|
|
389
|
-
prim?: { &: string }
|
|
390
|
-
list?: %form
|
|
391
|
-
map?: %form
|
|
392
|
-
opt?: %form
|
|
393
|
-
union?: %form
|
|
394
|
-
lit?: %form
|
|
395
|
-
})
|
|
396
|
-
banner?: string
|
|
397
|
-
})
|
|
398
|
-
|
|
399
|
-
aontu: Profile: %profile
|
|
400
|
-
`;
|
|
401
|
-
// The text profile (RENDER.0.md D5): the profile of a fragment-only
|
|
402
|
-
// unit, and the fallback of every language without a lowering.
|
|
403
|
-
const STD_LANG_TEXT = String.raw `# aontu:lang/text --- THE TEXT PROFILE. The profile of a unit whose
|
|
404
|
-
# declarations are fragments and text escapes only: indentation, and
|
|
405
|
-
# nothing else, since a fold over fragments applies nothing else. Every
|
|
406
|
-
# language without a lowering renders under it (docs/design/RENDER.0.md
|
|
407
|
-
# D5), and a reference inline renders as its name, verbatim.
|
|
408
|
-
#
|
|
409
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
410
|
-
# canon-hash.
|
|
411
|
-
|
|
412
|
-
@"aontu:profile"
|
|
413
|
-
|
|
414
|
-
aontu: Profile: { lang:"text" indent:{ unit:" " width:2 } }
|
|
415
|
-
`;
|
|
416
|
-
// THE TYPESCRIPT PROFILE (docs/design/RENDER.0.md D5, P5): the data the
|
|
417
|
-
// typescript lowering renders under -- two spaces, the JSDoc forms, the
|
|
418
|
-
// JavaScript string escapes by decimal code point, the reserved words,
|
|
419
|
-
// camel and pascal by role, no acronyms (TypeScript's `ledgerId` keeps
|
|
420
|
-
// its `Id`), and the type forms whose precedences put the parens in
|
|
421
|
-
// `(string | null)[]`. Byte-identical in both ports, pinned by hash.
|
|
422
|
-
const STD_LANG_TYPESCRIPT = String.raw `# aontu:lang/typescript --- THE TYPESCRIPT PROFILE. The data a unit of
|
|
423
|
-
# TypeScript renders under: indentation, the comment forms, the string
|
|
424
|
-
# quote and its escape table, the identifier rules and the type forms.
|
|
425
|
-
# The lowering of a declaration to an exported interface is code
|
|
426
|
-
# (docs/design/RENDER.0.md D5); everything the lowering reads without
|
|
427
|
-
# looking at the shape of a node is here.
|
|
428
|
-
#
|
|
429
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
430
|
-
# canon-hash.
|
|
431
|
-
|
|
432
|
-
@"aontu:profile"
|
|
433
|
-
|
|
434
|
-
aontu: Profile: {
|
|
435
|
-
lang: "typescript"
|
|
436
|
-
lowering: "typescript"
|
|
437
|
-
indent: { unit:" " width:2 }
|
|
438
|
-
comment: line: prefix: "// "
|
|
439
|
-
comment: block: { open:"/*" prefix:" * " close:" */" }
|
|
440
|
-
comment: doc: { open:"/**" prefix:" * " close:" */" }
|
|
441
|
-
str: quote: "\""
|
|
442
|
-
str: escape: {
|
|
443
|
-
"8": "\\b"
|
|
444
|
-
"9": "\\t"
|
|
445
|
-
"10": "\\n"
|
|
446
|
-
"12": "\\f"
|
|
447
|
-
"13": "\\r"
|
|
448
|
-
"34": "\\\""
|
|
449
|
-
"92": "\\\\"
|
|
450
|
-
}
|
|
451
|
-
ident: {
|
|
452
|
-
chars: "ascii-word"
|
|
453
|
-
reserved: [
|
|
454
|
-
"await"
|
|
455
|
-
"break"
|
|
456
|
-
"case"
|
|
457
|
-
"catch"
|
|
458
|
-
"class"
|
|
459
|
-
"const"
|
|
460
|
-
"continue"
|
|
461
|
-
"debugger"
|
|
462
|
-
"default"
|
|
463
|
-
"delete"
|
|
464
|
-
"do"
|
|
465
|
-
"else"
|
|
466
|
-
"enum"
|
|
467
|
-
"export"
|
|
468
|
-
"extends"
|
|
469
|
-
"false"
|
|
470
|
-
"finally"
|
|
471
|
-
"for"
|
|
472
|
-
"function"
|
|
473
|
-
"if"
|
|
474
|
-
"implements"
|
|
475
|
-
"import"
|
|
476
|
-
"in"
|
|
477
|
-
"instanceof"
|
|
478
|
-
"interface"
|
|
479
|
-
"let"
|
|
480
|
-
"new"
|
|
481
|
-
"null"
|
|
482
|
-
"package"
|
|
483
|
-
"private"
|
|
484
|
-
"protected"
|
|
485
|
-
"public"
|
|
486
|
-
"return"
|
|
487
|
-
"static"
|
|
488
|
-
"super"
|
|
489
|
-
"switch"
|
|
490
|
-
"this"
|
|
491
|
-
"throw"
|
|
492
|
-
"true"
|
|
493
|
-
"try"
|
|
494
|
-
"typeof"
|
|
495
|
-
"var"
|
|
496
|
-
"void"
|
|
497
|
-
"while"
|
|
498
|
-
"with"
|
|
499
|
-
"yield"
|
|
500
|
-
]
|
|
501
|
-
case: record: "pascal"
|
|
502
|
-
case: field: "camel"
|
|
503
|
-
case: enum: "pascal"
|
|
504
|
-
case: member: "pascal"
|
|
505
|
-
case: const: "camel"
|
|
506
|
-
case: func: "camel"
|
|
507
|
-
case: param: "camel"
|
|
508
|
-
case: alias: "pascal"
|
|
509
|
-
acronyms: []
|
|
510
|
-
}
|
|
511
|
-
types: prim: {
|
|
512
|
-
string: "string"
|
|
513
|
-
int: "number"
|
|
514
|
-
bigint: "bigint"
|
|
515
|
-
float: "number"
|
|
516
|
-
decimal: "string"
|
|
517
|
-
bool: "boolean"
|
|
518
|
-
null: "null"
|
|
519
|
-
any: "unknown"
|
|
520
|
-
}
|
|
521
|
-
types: list: { close:"[]" childPrec:2 }
|
|
522
|
-
types: map: { open:"Record<" close:">" }
|
|
523
|
-
types: opt: { close:" | null" prec:1 childPrec:2 }
|
|
524
|
-
types: union: { prec:1 childPrec:2 }
|
|
525
|
-
types: lit: prec: 1
|
|
526
|
-
banner: "Code generated by aontu from {path}. DO NOT EDIT."
|
|
527
|
-
}
|
|
528
|
-
`;
|
|
529
|
-
// THE GO PROFILE (docs/design/RENDER.0.md D5, P5): a tab, the line-comment
|
|
530
|
-
// doc form, the Go string escapes, the 25 keywords, pascal by role with
|
|
531
|
-
// the acronym set that makes `ledgerId` `LedgerID`, and the type forms
|
|
532
|
-
// -- `[]T`, `map[K]V`, `*T` -- none of which needs a paren.
|
|
533
|
-
// Byte-identical in both ports, pinned by hash.
|
|
534
|
-
const STD_LANG_GO = String.raw `# aontu:lang/go --- THE GO PROFILE. The data a unit of Go renders
|
|
535
|
-
# under: a tab of indentation, the comment forms, the string quote and
|
|
536
|
-
# its escape table, the identifier rules -- pascal by role, and the
|
|
537
|
-
# acronym set that spells ID and URL -- and the type forms. The lowering
|
|
538
|
-
# of a declaration to a struct type is code (docs/design/RENDER.0.md D5);
|
|
539
|
-
# everything the lowering reads without looking at the shape of a node
|
|
540
|
-
# is here.
|
|
541
|
-
#
|
|
542
|
-
# EXPERIMENTAL until the distribution layer can version it by
|
|
543
|
-
# canon-hash.
|
|
544
|
-
|
|
545
|
-
@"aontu:profile"
|
|
546
|
-
|
|
547
|
-
aontu: Profile: {
|
|
548
|
-
lang: "go"
|
|
549
|
-
lowering: "go"
|
|
550
|
-
indent: { unit:"\t" width:1 }
|
|
551
|
-
comment: { line:prefix:"// " block:{ open:"/*" close:"*/" } doc:prefix:"// " }
|
|
552
|
-
str: quote: "\""
|
|
553
|
-
str: escape: {
|
|
554
|
-
"7": "\\a"
|
|
555
|
-
"8": "\\b"
|
|
556
|
-
"9": "\\t"
|
|
557
|
-
"10": "\\n"
|
|
558
|
-
"11": "\\v"
|
|
559
|
-
"12": "\\f"
|
|
560
|
-
"13": "\\r"
|
|
561
|
-
"34": "\\\""
|
|
562
|
-
"92": "\\\\"
|
|
563
|
-
}
|
|
564
|
-
ident: {
|
|
565
|
-
chars: "ascii-word"
|
|
566
|
-
reserved: [
|
|
567
|
-
"break"
|
|
568
|
-
"case"
|
|
569
|
-
"chan"
|
|
570
|
-
"const"
|
|
571
|
-
"continue"
|
|
572
|
-
"default"
|
|
573
|
-
"defer"
|
|
574
|
-
"else"
|
|
575
|
-
"fallthrough"
|
|
576
|
-
"for"
|
|
577
|
-
"func"
|
|
578
|
-
"go"
|
|
579
|
-
"goto"
|
|
580
|
-
"if"
|
|
581
|
-
"import"
|
|
582
|
-
"interface"
|
|
583
|
-
"map"
|
|
584
|
-
"package"
|
|
585
|
-
"range"
|
|
586
|
-
"return"
|
|
587
|
-
"select"
|
|
588
|
-
"struct"
|
|
589
|
-
"switch"
|
|
590
|
-
"type"
|
|
591
|
-
"var"
|
|
592
|
-
]
|
|
593
|
-
case: record: "pascal"
|
|
594
|
-
case: field: "pascal"
|
|
595
|
-
case: enum: "pascal"
|
|
596
|
-
case: member: "pascal"
|
|
597
|
-
case: const: "pascal"
|
|
598
|
-
case: func: "pascal"
|
|
599
|
-
case: param: "camel"
|
|
600
|
-
case: alias: "pascal"
|
|
601
|
-
acronyms: [
|
|
602
|
-
"ACL"
|
|
603
|
-
"API"
|
|
604
|
-
"ASCII"
|
|
605
|
-
"CPU"
|
|
606
|
-
"CSS"
|
|
607
|
-
"DNS"
|
|
608
|
-
"EOF"
|
|
609
|
-
"GUID"
|
|
610
|
-
"HTML"
|
|
611
|
-
"HTTP"
|
|
612
|
-
"HTTPS"
|
|
613
|
-
"ID"
|
|
614
|
-
"IP"
|
|
615
|
-
"JSON"
|
|
616
|
-
"LHS"
|
|
617
|
-
"QPS"
|
|
618
|
-
"RAM"
|
|
619
|
-
"RHS"
|
|
620
|
-
"RPC"
|
|
621
|
-
"SLA"
|
|
622
|
-
"SMTP"
|
|
623
|
-
"SQL"
|
|
624
|
-
"SSH"
|
|
625
|
-
"TCP"
|
|
626
|
-
"TLS"
|
|
627
|
-
"TTL"
|
|
628
|
-
"UDP"
|
|
629
|
-
"UI"
|
|
630
|
-
"UID"
|
|
631
|
-
"UUID"
|
|
632
|
-
"URI"
|
|
633
|
-
"URL"
|
|
634
|
-
"UTF8"
|
|
635
|
-
"VM"
|
|
636
|
-
"XML"
|
|
637
|
-
"XMPP"
|
|
638
|
-
"XSRF"
|
|
639
|
-
"XSS"
|
|
640
|
-
]
|
|
641
|
-
}
|
|
642
|
-
types: prim: {
|
|
643
|
-
string: "string"
|
|
644
|
-
int: "int64"
|
|
645
|
-
bigint: "string"
|
|
646
|
-
float: "float64"
|
|
647
|
-
decimal: "string"
|
|
648
|
-
bool: "bool"
|
|
649
|
-
null: "any"
|
|
650
|
-
any: "any"
|
|
651
|
-
}
|
|
652
|
-
types: list: open: "[]"
|
|
653
|
-
types: map: open: "map["
|
|
654
|
-
types: opt: open: "*"
|
|
655
|
-
banner: "Code generated by aontu from {path}. DO NOT EDIT."
|
|
656
|
-
}
|
|
657
|
-
`;
|
|
658
|
-
exports.STD_SOURCES = {
|
|
659
|
-
'aontu:system': STD_SYSTEM,
|
|
660
|
-
'aontu:view': STD_VIEW,
|
|
661
|
-
'aontu:code': STD_CODE,
|
|
662
|
-
'aontu:lang/go': STD_LANG_GO,
|
|
663
|
-
'aontu:lang/text': STD_LANG_TEXT,
|
|
664
|
-
'aontu:lang/typescript': STD_LANG_TYPESCRIPT,
|
|
665
|
-
'aontu:profile': STD_PROFILE,
|
|
666
|
-
};
|
|
667
|
-
// The scheme of a language-supplied model, and the names it serves --
|
|
668
|
-
// the set the not-found message names, so a typo does not go looking
|
|
669
|
-
// on disk.
|
|
670
|
-
exports.AONTU_SCHEME = 'aontu:';
|
|
671
|
-
exports.AONTU_MODELS = Object.keys(exports.STD_SOURCES).filter((k) => k.startsWith(exports.AONTU_SCHEME)).sort();
|
|
672
|
-
//# sourceMappingURL=std.js.map
|
package/dist/std.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"std.js","sourceRoot":"","sources":["../src/std.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,4CAA4C;AAC5C,sEAAsE;AACtE,+DAA+D;AAC/D,uEAAuE;AACvE,wEAAwE;AACxE,iCAAiC;AACjC,EAAE;AACF,2DAA2D;AAC3D,sEAAsE;AACtE,iEAAiE;AACjE,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,oEAAoE;AACpE,uEAAuE;AACvE,qCAAqC;AAErC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmElB,CAAA;AAGD,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEhB,CAAA;AAGD,4DAA4D;AAC5D,uEAAuE;AACvE,sEAAsE;AACtE,sEAAsE;AACtE,sEAAsE;AACtE,8DAA8D;AAC9D,EAAE;AACF,mEAAmE;AACnE,iEAAiE;AACjE,sEAAsE;AACtE,oEAAoE;AACpE,gEAAgE;AAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgK1B,CAAA;AAGD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuE7B,CAAA;AAGD,oEAAoE;AACpE,+DAA+D;AAC/D,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;CAY/B,CAAA;AAED,wEAAwE;AACxE,wEAAwE;AACxE,uEAAuE;AACvE,uEAAuE;AACvE,oEAAoE;AACpE,qEAAqE;AACrE,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0GrC,CAAA;AAED,2EAA2E;AAC3E,wEAAwE;AACxE,uEAAuE;AACvE,4DAA4D;AAC5D,gDAAgD;AAChD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2H7B,CAAA;AAEY,QAAA,WAAW,GAA2B;IACjD,cAAc,EAAE,UAAU;IAC1B,YAAY,EAAE,QAAQ;IACtB,YAAY,EAAE,QAAQ;IACtB,eAAe,EAAE,WAAW;IAC5B,iBAAiB,EAAE,aAAa;IAChC,uBAAuB,EAAE,mBAAmB;IAC5C,eAAe,EAAE,WAAW;CAC7B,CAAA;AAED,sEAAsE;AACtE,qEAAqE;AACrE,WAAW;AACE,QAAA,YAAY,GAAG,QAAQ,CAAA;AACvB,QAAA,YAAY,GACvB,MAAM,CAAC,IAAI,CAAC,QAAA,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAA,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA"}
|