aontu 0.56.0 → 0.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/README.md +2 -2
  2. package/dist/agentsmd.js +1 -1
  3. package/dist/alias.d.ts +3 -0
  4. package/dist/alias.js +59 -0
  5. package/dist/alias.js.map +1 -0
  6. package/dist/aontu.d.ts +5 -2
  7. package/dist/aontu.js +11 -3
  8. package/dist/aontu.js.map +1 -1
  9. package/dist/cli.d.ts +8 -2
  10. package/dist/cli.js +564 -21
  11. package/dist/cli.js.map +1 -1
  12. package/dist/ctx.d.ts +2 -0
  13. package/dist/ctx.js +1 -0
  14. package/dist/ctx.js.map +1 -1
  15. package/dist/escape.d.ts +5 -0
  16. package/dist/escape.js +455 -0
  17. package/dist/escape.js.map +1 -0
  18. package/dist/format.d.ts +9 -0
  19. package/dist/format.js +550 -55
  20. package/dist/format.js.map +1 -1
  21. package/dist/hints.js +74 -9
  22. package/dist/hints.js.map +1 -1
  23. package/dist/lang.js +374 -58
  24. package/dist/lang.js.map +1 -1
  25. package/dist/lower.d.ts +20 -0
  26. package/dist/lower.js +575 -0
  27. package/dist/lower.js.map +1 -0
  28. package/dist/lsp.d.ts +1 -1
  29. package/dist/lsp.js +4 -4
  30. package/dist/lsp.js.map +1 -1
  31. package/dist/mcp-server.js +2 -2
  32. package/dist/mcp-server.js.map +1 -1
  33. package/dist/mcp.d.ts +1 -0
  34. package/dist/mcp.js +40 -3
  35. package/dist/mcp.js.map +1 -1
  36. package/dist/mod-tool.js +8 -7
  37. package/dist/mod-tool.js.map +1 -1
  38. package/dist/mod.js +6 -6
  39. package/dist/mod.js.map +1 -1
  40. package/dist/render.d.ts +53 -0
  41. package/dist/render.js +542 -0
  42. package/dist/render.js.map +1 -0
  43. package/dist/sigdecl.js +1 -1
  44. package/dist/sigdecl.js.map +1 -1
  45. package/dist/std.d.ts +2 -0
  46. package/dist/std.js +498 -2
  47. package/dist/std.js.map +1 -1
  48. package/dist/template.d.ts +5 -0
  49. package/dist/template.js +257 -0
  50. package/dist/template.js.map +1 -0
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/dist/unify.js +43 -0
  53. package/dist/unify.js.map +1 -1
  54. package/dist/val/AggFuncVal.d.ts +1 -1
  55. package/dist/val/AggFuncVal.js +10 -21
  56. package/dist/val/AggFuncVal.js.map +1 -1
  57. package/dist/val/BagVal.js +1 -1
  58. package/dist/val/BagVal.js.map +1 -1
  59. package/dist/val/ConstraintVal.js +1 -1
  60. package/dist/val/EachFuncVal.d.ts +1 -1
  61. package/dist/val/EachFuncVal.js +9 -15
  62. package/dist/val/EachFuncVal.js.map +1 -1
  63. package/dist/val/EmitFuncVal.d.ts +42 -0
  64. package/dist/val/EmitFuncVal.js +531 -0
  65. package/dist/val/EmitFuncVal.js.map +1 -0
  66. package/dist/val/FilterFuncVal.js +9 -6
  67. package/dist/val/FilterFuncVal.js.map +1 -1
  68. package/dist/val/FormFuncVal.d.ts +14 -0
  69. package/dist/val/FormFuncVal.js +55 -0
  70. package/dist/val/FormFuncVal.js.map +1 -0
  71. package/dist/val/FuncBaseVal.d.ts +1 -0
  72. package/dist/val/FuncBaseVal.js +16 -0
  73. package/dist/val/FuncBaseVal.js.map +1 -1
  74. package/dist/val/MapVal.d.ts +2 -1
  75. package/dist/val/MapVal.js +2 -1
  76. package/dist/val/MapVal.js.map +1 -1
  77. package/dist/val/PackFuncVal.d.ts +1 -1
  78. package/dist/val/PackFuncVal.js +23 -20
  79. package/dist/val/PackFuncVal.js.map +1 -1
  80. package/dist/val/PlaceVal.d.ts +3 -1
  81. package/dist/val/PlaceVal.js +9 -6
  82. package/dist/val/PlaceVal.js.map +1 -1
  83. package/dist/val/RefVal.d.ts +3 -0
  84. package/dist/val/RefVal.js +156 -17
  85. package/dist/val/RefVal.js.map +1 -1
  86. package/dist/val/StrFuncVal.d.ts +32 -0
  87. package/dist/val/StrFuncVal.js +292 -0
  88. package/dist/val/StrFuncVal.js.map +1 -0
  89. package/dist/val/Val.d.ts +7 -1
  90. package/dist/val/Val.js +12 -1
  91. package/dist/val/Val.js.map +1 -1
  92. package/dist/val/members.d.ts +9 -0
  93. package/dist/val/members.js +52 -0
  94. package/dist/val/members.js.map +1 -0
  95. package/grammar/aontu.abnf +4 -3
  96. package/grammar/aontu.gbnf +4 -3
  97. package/grammar/aontu.lark +4 -3
  98. package/grammar/aontu.tmLanguage.json +1 -1
  99. package/package.json +1 -1
  100. package/skill/SKILL.md +4 -4
  101. package/skill/error-codes.md +1 -1
  102. package/skill/examples.md +1 -1
  103. package/skill/grammar-card.md +1 -1
  104. package/src/agentsmd.ts +1 -1
  105. package/src/alias.ts +112 -0
  106. package/src/aontu.ts +20 -2
  107. package/src/cli.ts +630 -23
  108. package/src/ctx.ts +13 -0
  109. package/src/escape.ts +371 -0
  110. package/src/format.ts +648 -56
  111. package/src/hints.ts +94 -9
  112. package/src/lang.ts +430 -63
  113. package/src/lower.ts +636 -0
  114. package/src/lsp.ts +4 -4
  115. package/src/mcp-server.ts +3 -2
  116. package/src/mcp.ts +43 -4
  117. package/src/mod-tool.ts +9 -8
  118. package/src/mod.ts +6 -6
  119. package/src/render.ts +727 -0
  120. package/src/sigdecl.ts +1 -1
  121. package/src/std.ts +506 -1
  122. package/src/template.ts +291 -0
  123. package/src/unify.ts +47 -0
  124. package/src/val/AggFuncVal.ts +10 -21
  125. package/src/val/BagVal.ts +1 -1
  126. package/src/val/ConstraintVal.ts +1 -1
  127. package/src/val/EachFuncVal.ts +9 -19
  128. package/src/val/EmitFuncVal.ts +738 -0
  129. package/src/val/FilterFuncVal.ts +12 -7
  130. package/src/val/FormFuncVal.ts +119 -0
  131. package/src/val/FuncBaseVal.ts +18 -0
  132. package/src/val/MapVal.ts +3 -2
  133. package/src/val/PackFuncVal.ts +24 -22
  134. package/src/val/PlaceVal.ts +9 -6
  135. package/src/val/RefVal.ts +167 -18
  136. package/src/val/StrFuncVal.ts +334 -0
  137. package/src/val/Val.ts +42 -1
  138. package/src/val/members.ts +86 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/dist/sigdecl.js CHANGED
@@ -6,6 +6,6 @@ exports.SIGDECL = void 0;
6
6
  // test/spec/signature.tsv — DO NOT EDIT. The declaration is the
7
7
  // source (docs/design/SIGNATURES.0.md); ts/test/sig.test.ts asserts
8
8
  // this copy is identical with the shared file.
9
- const SIGDECL = "# The call surface: one declaration line per built-in function\n# (docs/design/SIGNATURES.0.md). THIS FILE IS THE SOURCE — both ports\n# carry a build-time-inlined copy (ts/src/sigdecl.ts, go/sigdecl.txt;\n# `make sig` regenerates both, and each port's suite asserts its copy\n# is byte-identical with this file) and parse it at initialisation\n# with the signature grammar, a tabnas grammar (ts/src/sig.ts,\n# go/sig.go). The suites also round-trip every line:\n# render(parse(line)) must be the line exactly, in both ports.\n#\n# The syntax (rendered TypeScript-ish, honest about argument MODES):\n# line = name '(' [ arg {',' arg} ] ')' ':' type\n# arg = [mode] name ['?'] ':' type\n# | '...' name ':' '(' [mode] type {',' [mode] type} ')'\n# type = word {'|' word}\n# mode = 'capture' | 'template' | 'trial' | 'projector' | 'text'\n# `value` mode is unmarked. `constraint` is the result word for\n# residuals whose meet depends on the peer; `any` is the honest type\n# where a function is a wrapper.\nupper(s: string|number) : string\nlower(s: string|number) : string\ncopy(v: any) : any\npref(v: any) : any\nsuper(t: any) : any\ntype(t: any) : any\nhide(v: any) : any\nclose(m: any) : any\nopen(m: any) : any\nmove(v: any) : any\npath(capture p?: path) : path\nmap() : map\nlist() : list\nmin(n: number|string) : constraint\nmax(n: number|string) : constraint\nabove(n: number|string) : constraint\nbelow(n: number|string) : constraint\nre(text p: string) : constraint\nlength(n: number|constraint) : constraint\nkey(up?: integer|biginteger) : string\nunique(projector k?: string) : constraint\nneq(...vals: number|string) : constraint\nmust(trial c: any, text msg: string) : constraint\ndeprecate(v: any, r?: map) : any\nacyclic() : constraint\ninverse(projector k: string) : constraint\nrefer(template t?: any) : constraint\nrel(template t?: any) : constraint\npack(d: map|list, template t: any) : map\neach(d: map|list, template t?: any) : list\nfilter(d: map|list, trial c: any) : map|list\nmatch(s: any, ...pr: (trial any, any), dflt?: any) : any\nadd(a: number, b: number) : number\nsub(a: number, b: number) : number\nmul(a: number, b: number) : number\ndiv(a: number, b: number) : number\nmod(a: number, b: number) : number\nrem(a: number, b: number) : number\nsum(d: map|list) : number\nleast(d: map|list) : number\ngreatest(d: map|list) : number\npick(d: map|list, projector k: string|integer) : any\njoin(d: map|list, sep?: string) : string\n";
9
+ const SIGDECL = "# The call surface: one declaration line per built-in function\n# (docs/design/SIGNATURES.0.md). THIS FILE IS THE SOURCE — both ports\n# carry a build-time-inlined copy (ts/src/sigdecl.ts, go/sigdecl.txt;\n# `make sig` regenerates both, and each port's suite asserts its copy\n# is byte-identical with this file) and parse it at initialisation\n# with the signature grammar, a tabnas grammar (ts/src/sig.ts,\n# go/sig.go). The suites also round-trip every line:\n# render(parse(line)) must be the line exactly, in both ports.\n#\n# The syntax (rendered TypeScript-ish, honest about argument MODES):\n# line = name '(' [ arg {',' arg} ] ')' ':' type\n# arg = [mode] name ['?'] ':' type\n# | '...' name ':' '(' [mode] type {',' [mode] type} ')'\n# type = word {'|' word}\n# mode = 'capture' | 'template' | 'trial' | 'projector' | 'text'\n# `value` mode is unmarked. `constraint` is the result word for\n# residuals whose meet depends on the peer; `any` is the honest type\n# where a function is a wrapper.\nupper(s: string|number) : string\nlower(s: string|number) : string\ncopy(v: any) : any\npref(v: any) : any\nsuper(t: any) : any\ntype(t: any) : any\nhide(v: any) : any\nclose(m: any) : any\nopen(m: any) : any\nmove(v: any) : any\npath(capture p?: path) : path\nmap() : map\nlist() : list\nmin(n: number|string) : constraint\nmax(n: number|string) : constraint\nabove(n: number|string) : constraint\nbelow(n: number|string) : constraint\nre(text p: string) : constraint\nlength(n: number|constraint) : constraint\nkey(up?: integer|biginteger) : string\nunique(projector k?: string) : constraint\nneq(...vals: number|string) : constraint\nmust(trial c: any, text msg: string) : constraint\ndeprecate(v: any, r?: map) : any\nacyclic() : constraint\ninverse(projector k: string) : constraint\nrefer(template t?: any) : constraint\nrel(template t?: any) : constraint\npack(d: map|list, template t: any) : map\neach(d: map|list, template t?: any) : list\nform(d: map|list, template t: any) : list\nfilter(d: map|list, trial c: any) : map|list\nmatch(s: any, ...pr: (trial any, any), dflt?: any) : any\nadd(a: number, b: number) : number\nsub(a: number, b: number) : number\nmul(a: number, b: number) : number\ndiv(a: number, b: number) : number\nmod(a: number, b: number) : number\nrem(a: number, b: number) : number\nsum(d: map|list) : number\nleast(d: map|list) : number\ngreatest(d: map|list) : number\npick(d: map|list, projector k: string|integer) : any\njoin(d: map|list, sep?: string) : string\nesc(s: string, variant?: string) : string\nusc(s: string, variant?: string) : string\nrep(s: string, text p: string, text sub: string) : string\nsplit(s: string, sep: string|constraint) : list\nemit(s: map|list, template t: map|list) : list\n";
10
10
  exports.SIGDECL = SIGDECL;
11
11
  //# sourceMappingURL=sigdecl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sigdecl.js","sourceRoot":"","sources":["../src/sigdecl.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAEzD,wDAAwD;AACxD,gEAAgE;AAChE,oEAAoE;AACpE,+CAA+C;AAE/C,MAAM,OAAO,GACb,46EAA46E,CAAA;QAEn6E,OAAO"}
1
+ {"version":3,"file":"sigdecl.js","sourceRoot":"","sources":["../src/sigdecl.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAEzD,wDAAwD;AACxD,gEAAgE;AAChE,oEAAoE;AACpE,+CAA+C;AAE/C,MAAM,OAAO,GACb,ysFAAysF,CAAA;QAEhsF,OAAO"}
package/dist/std.d.ts CHANGED
@@ -1 +1,3 @@
1
1
  export declare const STD_SOURCES: Record<string, string>;
2
+ export declare const AONTU_SCHEME = "aontu:";
3
+ export declare const AONTU_MODELS: string[];
package/dist/std.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* Copyright (c) 2025 Richard Rodger, MIT License */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.STD_SOURCES = void 0;
4
+ exports.AONTU_MODELS = exports.AONTU_SCHEME = exports.STD_SOURCES = void 0;
5
5
  // THE BUNDLED VOCABULARY (G4 phase 4,
6
6
  // docs/capability-review/g4-identity-relations.md): `@"std/system"` is
7
7
  // served from the engine itself — no filesystem, no package resolution
@@ -59,7 +59,7 @@ std: {
59
59
  const STD_VIEW = `# std/view --- the FIGURE VOCABULARY (VIEWS.0.md, "6. The view
60
60
  # document"). A view document declares its figures as data, and a
61
61
  # declaration is just a map: this is the schema for one, so a typo is
62
- # refused where every other mistake in an Aontu document is refused --
62
+ # refused where every other mistake in an aontu document is refused --
63
63
  # at evaluation, by unification -- rather than by the verb that reads
64
64
  # it afterwards.
65
65
  #
@@ -124,10 +124,506 @@ view: {
124
124
  })
125
125
  }
126
126
  `;
127
+ // THE LANGUAGE-SUPPLIED MODELS (docs/design/MODELS.0.md D1;
128
+ // docs/design/RENDER.0.md P0 and P1). `aontu:NAME` is Node's device --
129
+ // a prefix no relative path, package name or module path can spell --
130
+ // so the resolver routes on it before any other leg and never touches
131
+ // the filesystem for it. Held in String.raw so the backslashes of the
132
+ // regexes reach the parser as written; no backtick, as above.
133
+ //
134
+ // aontu:code is the OUTPUT VOCABULARY: an instance of it is what a
135
+ // transform evaluates to and what `aontu render` folds to bytes.
136
+ // aontu:profile is the schema of a render profile, the data a unit of
137
+ // one language is rendered under. Both are pinned by canon and hash
138
+ // rows (test/spec/aontu-code.tsv, test/spec/aontu-profile.tsv).
139
+ const STD_CODE = String.raw `# aontu:code --- THE OUTPUT VOCABULARY. An aontu transform evaluates to
140
+ # an instance of this schema, and 'aontu render' turns the instance
141
+ # into bytes. Because it is an ordinary schema, a transform's result is
142
+ # checked by unification before anything is rendered.
143
+ #
144
+ # @"aontu:code"
145
+ # code: { units: [ { path: "out.py", lang: "python", decls: [
146
+ # { k: "frag", of: emit($.model, %rules) } ] } ] }
147
+ #
148
+ # TWO ESCAPES, both counted by the render report: {k: "text", lang,
149
+ # text} carries verbatim target syntax, and 'x' is an open per-backend
150
+ # rider. CONTAINER TYPES TAKE LEAVES ONLY: anything deeper is a named
151
+ # alias declaration plus a {k: "ref"}, which keeps this schema's meet
152
+ # linear. A FRAGMENT IS FLAT: each piece carries its own depth ('at'),
153
+ # so the renderer owns every prefix and no piece nests another; a bare
154
+ # string piece is a line at depth 0, and no inline text may hold a line
155
+ # terminator -- that is checked here, before any renderer runs.
156
+ #
157
+ # THE ROOT IS NOT type()-MARKED, on purpose: 'aontu render' reads the
158
+ # instance through generate(), and a type()-marked subtree does not
159
+ # generate. A document that includes this vocabulary and writes no
160
+ # units generates 'code: {units: []}', which is what it said.
161
+ #
162
+ # EXPERIMENTAL until the distribution layer can version it by
163
+ # canon-hash.
164
+
165
+ %name = string & re("^[A-Za-z_][A-Za-z0-9_]*$") & length(min(1) & max(255))
166
+
167
+ %text = close({ k:"text" lang:string & length(min(1)) text:string })
168
+
169
+ %doc = close({
170
+ text: string
171
+ deprecated?: close({ msg?:string use?:string since?:string })
172
+ })
173
+
174
+ %check = close({ c:"min" n:number exclusive:*false | boolean })
175
+ | close({ c:"max" n:number exclusive:*false | boolean })
176
+ | close({ c:"re" p:string })
177
+ | close({ c:"len" min?:integer & min(0) max?:integer & min(0) })
178
+ | close({ c:"unique" key?:%name })
179
+ | close({ c:"ne" of:[&: string | number | boolean] })
180
+ | close({ c:"must" note:string })
181
+
182
+ %prim = close({
183
+ k: "prim"
184
+ prim: "string" | "int" | "bigint" | "float" | "decimal" | "bool" | "null" | "any"
185
+ })
186
+ %ref = close({ k:"ref" name:%name unit?:string })
187
+ %leaf = %prim | %ref | %text
188
+
189
+ %type = %leaf
190
+ | close({ k:"list" of:%leaf })
191
+ | close({ k:"map" key:%leaf of:%leaf })
192
+ | close({ k:"opt" of:%leaf })
193
+ | close({ k:"union" of:[&: %leaf] })
194
+ | close({ k:"lit" of:[&: string | number | boolean | null] })
195
+
196
+ %field = close({
197
+ name: %name
198
+ type: %type
199
+ optional: *false | boolean
200
+ doc?: %doc
201
+ default?: string | number | boolean | null
202
+ check?: [&: %check]
203
+ rel?: close({ to:string name?:string })
204
+ x?: {}
205
+ })
206
+
207
+ %member = close({ name:%name value?:string | number doc?:%doc x?:{} })
208
+ %param = close({
209
+ name: %name
210
+ type: %type
211
+ default?: string | number | boolean | null
212
+ x?: {}
213
+ })
214
+
215
+ # THE FRAGMENT ALGEBRA. A line's inline pieces hold no terminator; a
216
+ # blank is its terminators alone; a raw is the one piece that may carry
217
+ # terminators, re-indented to its depth unless it says not to.
218
+ %inline = string & re("^[^\n\r]*$") | %ref
219
+ %line = close({ k:"line" at:*0 | integer & min(0) & max(64) of:[&: %inline] })
220
+ %blank = close({ k:"blank" n:*1 | integer & min(1) & max(16) })
221
+ %raw = close({
222
+ k: "raw"
223
+ at: *0 | integer & min(0) & max(64)
224
+ text: string
225
+ reindent: *true | boolean
226
+ })
227
+ %piece = %line | %blank | %raw | string & re("^[^\n\r]*$")
228
+ %frag = close({ k:"frag" of:[&: %piece] })
229
+ %body = %frag | close({ k:"abstract" })
230
+
231
+ %record = close({
232
+ k: "record"
233
+ name: %name
234
+ doc?: %doc
235
+ open: *false | boolean
236
+ fields: [&: %field]
237
+ entity?: string
238
+ check?: [&: %check]
239
+ x?: {}
240
+ })
241
+ %enum = close({ k:"enum" name:%name doc?:%doc members:[&: %member] x?:{} })
242
+ %alias = close({
243
+ k: "alias"
244
+ name: %name
245
+ doc?: %doc
246
+ type: %type
247
+ check?: [&: %check]
248
+ x?: {}
249
+ })
250
+ %const = close({
251
+ k: "const"
252
+ name: %name
253
+ doc?: %doc
254
+ type?: %type
255
+ value: string | number | boolean | null
256
+ x?: {}
257
+ })
258
+ %func = close({
259
+ k: "func"
260
+ name: %name
261
+ doc?: %doc
262
+ params: [&: %param]
263
+ returns?: %type
264
+ body: %body
265
+ x?: {}
266
+ })
267
+
268
+ %decl = %record | %enum | %alias | %const | %func | %text | %frag
269
+
270
+ %import = close({
271
+ from: string & length(min(1))
272
+ names?: [&: %name]
273
+ alias?: %name
274
+ x?: {}
275
+ })
276
+
277
+ %unit = close({
278
+ path: string & length(min(1))
279
+ lang: string & length(min(1))
280
+ pkg?: string
281
+ doc?: %doc
282
+ imports?: [&: %import]
283
+ decls: [&: %decl]
284
+ profile?: {}
285
+ x?: {}
286
+ })
287
+
288
+ %source = close({ path?:string hash?:string & re("^aon1-[A-Za-z0-9_-]+$") })
289
+
290
+ code: close({ source?:%source units:[&: %unit] })
291
+ `;
292
+ const STD_PROFILE = String.raw `# aontu:profile --- THE PROFILE VOCABULARY. A profile is the data
293
+ # 'aontu render' applies to a unit of one language, and it is DATA and
294
+ # only data: a field belongs here only if the renderer applies it
295
+ # without looking at the shape of any node. Anything else is a lowering
296
+ # and lives in the transform.
297
+ #
298
+ # @"aontu:profile"
299
+ # profile: { lang: "python", indent: { unit: " ", width: 4 } }
300
+ #
301
+ # Three profiles are bundled with the engine -- aontu:lang/typescript,
302
+ # aontu:lang/go and aontu:lang/text -- and a unit is matched to one by
303
+ # its 'lang'. A fragment-only unit needs nothing beyond 'indent'.
304
+ #
305
+ # THE ROOT IS NOT type()-MARKED, for the reason aontu:code's is not:
306
+ # 'aontu render' reads a profile through generate().
307
+ #
308
+ # EXPERIMENTAL until the distribution layer can version it by
309
+ # canon-hash.
310
+
311
+ %name = string & re("^[A-Za-z_][A-Za-z0-9_]*$")
312
+
313
+ %case = "as-is" | "camel" | "pascal" | "snake" | "screaming" | "kebab"
314
+
315
+ %comment = close({ open?:string prefix?:string close?:string })
316
+
317
+ %form = close({
318
+ open: *"" | string
319
+ close: *"" | string
320
+ prec: *9 | integer & min(0) & max(9)
321
+ childPrec: *0 | integer & min(0) & max(9)
322
+ })
323
+
324
+ %profile = close({
325
+ lang: string & length(min(1))
326
+ lowering?: "typescript" | "go"
327
+ indent: close({
328
+ unit: *" " | string & length(min(1))
329
+ width: *2 | integer & min(0) & max(16)
330
+ })
331
+ comment?: close({ line?:%comment block?:%comment doc?:%comment })
332
+ str?: close({
333
+ quote: *"\"" | string & length(min(1) & max(1))
334
+ escape: { &: string }
335
+ })
336
+ ident?: close({
337
+ chars: *"ascii-word" | "ascii-word"
338
+ reserved?: [&: string]
339
+ case?: close({
340
+ record?: %case
341
+ field?: %case
342
+ enum?: %case
343
+ member?: %case
344
+ const?: %case
345
+ func?: %case
346
+ param?: %case
347
+ alias?: %case
348
+ })
349
+ acronyms?: [&: %name]
350
+ })
351
+ types?: close({
352
+ prim?: { &: string }
353
+ list?: %form
354
+ map?: %form
355
+ opt?: %form
356
+ union?: %form
357
+ lit?: %form
358
+ })
359
+ banner?: string
360
+ })
361
+
362
+ profile: %profile
363
+ `;
364
+ // The text profile (RENDER.0.md D5): the profile of a fragment-only
365
+ // unit, and the fallback of every language without a lowering.
366
+ const STD_LANG_TEXT = String.raw `# aontu:lang/text --- THE TEXT PROFILE. The profile of a unit whose
367
+ # declarations are fragments and text escapes only: indentation, and
368
+ # nothing else, since a fold over fragments applies nothing else. Every
369
+ # language without a lowering renders under it (docs/design/RENDER.0.md
370
+ # D5), and a reference inline renders as its name, verbatim.
371
+ #
372
+ # EXPERIMENTAL until the distribution layer can version it by
373
+ # canon-hash.
374
+
375
+ @"aontu:profile"
376
+
377
+ profile: { lang:"text" indent:{ unit:" " width:2 } }
378
+ `;
379
+ // THE TYPESCRIPT PROFILE (docs/design/RENDER.0.md D5, P5): the data the
380
+ // typescript lowering renders under -- two spaces, the JSDoc forms, the
381
+ // JavaScript string escapes by decimal code point, the reserved words,
382
+ // camel and pascal by role, no acronyms (TypeScript's `ledgerId` keeps
383
+ // its `Id`), and the type forms whose precedences put the parens in
384
+ // `(string | null)[]`. Byte-identical in both ports, pinned by hash.
385
+ const STD_LANG_TYPESCRIPT = String.raw `# aontu:lang/typescript --- THE TYPESCRIPT PROFILE. The data a unit of
386
+ # TypeScript renders under: indentation, the comment forms, the string
387
+ # quote and its escape table, the identifier rules and the type forms.
388
+ # The lowering of a declaration to an exported interface is code
389
+ # (docs/design/RENDER.0.md D5); everything the lowering reads without
390
+ # looking at the shape of a node is here.
391
+ #
392
+ # EXPERIMENTAL until the distribution layer can version it by
393
+ # canon-hash.
394
+
395
+ @"aontu:profile"
396
+
397
+ profile: {
398
+ lang: "typescript"
399
+ lowering: "typescript"
400
+ indent: { unit:" " width:2 }
401
+ comment: line: prefix: "// "
402
+ comment: block: { open:"/*" prefix:" * " close:" */" }
403
+ comment: doc: { open:"/**" prefix:" * " close:" */" }
404
+ str: quote: "\""
405
+ str: escape: "8": "\\b"
406
+ str: escape: "9": "\\t"
407
+ str: escape: "10": "\\n"
408
+ str: escape: "12": "\\f"
409
+ str: escape: "13": "\\r"
410
+ str: escape: "34": "\\\""
411
+ str: escape: "92": "\\\\"
412
+ ident: {
413
+ chars: "ascii-word"
414
+ reserved: [
415
+ "await"
416
+ "break"
417
+ "case"
418
+ "catch"
419
+ "class"
420
+ "const"
421
+ "continue"
422
+ "debugger"
423
+ "default"
424
+ "delete"
425
+ "do"
426
+ "else"
427
+ "enum"
428
+ "export"
429
+ "extends"
430
+ "false"
431
+ "finally"
432
+ "for"
433
+ "function"
434
+ "if"
435
+ "implements"
436
+ "import"
437
+ "in"
438
+ "instanceof"
439
+ "interface"
440
+ "let"
441
+ "new"
442
+ "null"
443
+ "package"
444
+ "private"
445
+ "protected"
446
+ "public"
447
+ "return"
448
+ "static"
449
+ "super"
450
+ "switch"
451
+ "this"
452
+ "throw"
453
+ "true"
454
+ "try"
455
+ "typeof"
456
+ "var"
457
+ "void"
458
+ "while"
459
+ "with"
460
+ "yield"
461
+ ]
462
+ case: record: "pascal"
463
+ case: field: "camel"
464
+ case: enum: "pascal"
465
+ case: member: "pascal"
466
+ case: const: "camel"
467
+ case: func: "camel"
468
+ case: param: "camel"
469
+ case: alias: "pascal"
470
+ acronyms: []
471
+ }
472
+ types: prim: string: "string"
473
+ types: prim: int: "number"
474
+ types: prim: bigint: "bigint"
475
+ types: prim: float: "number"
476
+ types: prim: decimal: "string"
477
+ types: prim: bool: "boolean"
478
+ types: prim: null: "null"
479
+ types: prim: any: "unknown"
480
+ types: list: { close:"[]" childPrec:2 }
481
+ types: map: { open:"Record<" close:">" }
482
+ types: opt: { close:" | null" prec:1 childPrec:2 }
483
+ types: union: { prec:1 childPrec:2 }
484
+ types: lit: prec: 1
485
+ banner: "Code generated by aontu from {path}. DO NOT EDIT."
486
+ }
487
+ `;
488
+ // THE GO PROFILE (docs/design/RENDER.0.md D5, P5): a tab, the line-comment
489
+ // doc form, the Go string escapes, the 25 keywords, pascal by role with
490
+ // the acronym set that makes `ledgerId` `LedgerID`, and the type forms
491
+ // -- `[]T`, `map[K]V`, `*T` -- none of which needs a paren.
492
+ // Byte-identical in both ports, pinned by hash.
493
+ const STD_LANG_GO = String.raw `# aontu:lang/go --- THE GO PROFILE. The data a unit of Go renders
494
+ # under: a tab of indentation, the comment forms, the string quote and
495
+ # its escape table, the identifier rules -- pascal by role, and the
496
+ # acronym set that spells ID and URL -- and the type forms. The lowering
497
+ # of a declaration to a struct type is code (docs/design/RENDER.0.md D5);
498
+ # everything the lowering reads without looking at the shape of a node
499
+ # is here.
500
+ #
501
+ # EXPERIMENTAL until the distribution layer can version it by
502
+ # canon-hash.
503
+
504
+ @"aontu:profile"
505
+
506
+ profile: {
507
+ lang: "go"
508
+ lowering: "go"
509
+ indent: { unit:"\t" width:1 }
510
+ comment: { line:prefix:"// " block:{ open:"/*" close:"*/" } doc:prefix:"// " }
511
+ str: quote: "\""
512
+ str: escape: "7": "\\a"
513
+ str: escape: "8": "\\b"
514
+ str: escape: "9": "\\t"
515
+ str: escape: "10": "\\n"
516
+ str: escape: "11": "\\v"
517
+ str: escape: "12": "\\f"
518
+ str: escape: "13": "\\r"
519
+ str: escape: "34": "\\\""
520
+ str: escape: "92": "\\\\"
521
+ ident: {
522
+ chars: "ascii-word"
523
+ reserved: [
524
+ "break"
525
+ "case"
526
+ "chan"
527
+ "const"
528
+ "continue"
529
+ "default"
530
+ "defer"
531
+ "else"
532
+ "fallthrough"
533
+ "for"
534
+ "func"
535
+ "go"
536
+ "goto"
537
+ "if"
538
+ "import"
539
+ "interface"
540
+ "map"
541
+ "package"
542
+ "range"
543
+ "return"
544
+ "select"
545
+ "struct"
546
+ "switch"
547
+ "type"
548
+ "var"
549
+ ]
550
+ case: record: "pascal"
551
+ case: field: "pascal"
552
+ case: enum: "pascal"
553
+ case: member: "pascal"
554
+ case: const: "pascal"
555
+ case: func: "pascal"
556
+ case: param: "camel"
557
+ case: alias: "pascal"
558
+ acronyms: [
559
+ "ACL"
560
+ "API"
561
+ "ASCII"
562
+ "CPU"
563
+ "CSS"
564
+ "DNS"
565
+ "EOF"
566
+ "GUID"
567
+ "HTML"
568
+ "HTTP"
569
+ "HTTPS"
570
+ "ID"
571
+ "IP"
572
+ "JSON"
573
+ "LHS"
574
+ "QPS"
575
+ "RAM"
576
+ "RHS"
577
+ "RPC"
578
+ "SLA"
579
+ "SMTP"
580
+ "SQL"
581
+ "SSH"
582
+ "TCP"
583
+ "TLS"
584
+ "TTL"
585
+ "UDP"
586
+ "UI"
587
+ "UID"
588
+ "UUID"
589
+ "URI"
590
+ "URL"
591
+ "UTF8"
592
+ "VM"
593
+ "XML"
594
+ "XMPP"
595
+ "XSRF"
596
+ "XSS"
597
+ ]
598
+ }
599
+ types: prim: string: "string"
600
+ types: prim: int: "int64"
601
+ types: prim: bigint: "string"
602
+ types: prim: float: "float64"
603
+ types: prim: decimal: "string"
604
+ types: prim: bool: "bool"
605
+ types: prim: null: "any"
606
+ types: prim: any: "any"
607
+ types: list: open: "[]"
608
+ types: map: open: "map["
609
+ types: opt: open: "*"
610
+ banner: "Code generated by aontu from {path}. DO NOT EDIT."
611
+ }
612
+ `;
127
613
  exports.STD_SOURCES = {
128
614
  'std/system': STD_SYSTEM,
129
615
  'std/system.aon': STD_SYSTEM,
130
616
  'std/view': STD_VIEW,
131
617
  'std/view.aon': STD_VIEW,
618
+ 'aontu:code': STD_CODE,
619
+ 'aontu:lang/go': STD_LANG_GO,
620
+ 'aontu:lang/text': STD_LANG_TEXT,
621
+ 'aontu:lang/typescript': STD_LANG_TYPESCRIPT,
622
+ 'aontu:profile': STD_PROFILE,
132
623
  };
624
+ // The scheme of a language-supplied model, and the names it serves --
625
+ // the set the not-found message names, so a typo does not go looking
626
+ // on disk.
627
+ exports.AONTU_SCHEME = 'aontu:';
628
+ exports.AONTU_MODELS = Object.keys(exports.STD_SOURCES).filter((k) => k.startsWith(exports.AONTU_SCHEME)).sort();
133
629
  //# sourceMappingURL=std.js.map
package/dist/std.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"std.js","sourceRoot":"","sources":["../src/std.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,sCAAsC;AACtC,uEAAuE;AACvE,uEAAuE;AACvE,mEAAmE;AACnE,sEAAsE;AACtE,4BAA4B;AAC5B,EAAE;AACF,qEAAqE;AACrE,oEAAoE;AACpE,oEAAoE;AACpE,uEAAuE;AACvE,qCAAqC;AAErC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyClB,CAAA;AAGD,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEhB,CAAA;AAGY,QAAA,WAAW,GAA2B;IACjD,YAAY,EAAE,UAAU;IACxB,gBAAgB,EAAE,UAAU;IAC5B,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,QAAQ;CACzB,CAAA"}
1
+ {"version":3,"file":"std.js","sourceRoot":"","sources":["../src/std.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,sCAAsC;AACtC,uEAAuE;AACvE,uEAAuE;AACvE,mEAAmE;AACnE,sEAAsE;AACtE,4BAA4B;AAC5B,EAAE;AACF,qEAAqE;AACrE,oEAAoE;AACpE,oEAAoE;AACpE,uEAAuE;AACvE,qCAAqC;AAErC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyClB,CAAA;AAGD,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEhB,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwJ1B,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsGrC,CAAA;AAED,2EAA2E;AAC3E,wEAAwE;AACxE,uEAAuE;AACvE,4DAA4D;AAC5D,gDAAgD;AAChD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuH7B,CAAA;AAEY,QAAA,WAAW,GAA2B;IACjD,YAAY,EAAE,UAAU;IACxB,gBAAgB,EAAE,UAAU;IAC5B,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,QAAQ;IACxB,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"}
@@ -0,0 +1,5 @@
1
+ declare const DEFAULT_MARKER = "//-";
2
+ declare function markerFor(path: string): string;
3
+ declare function desugarTemplate(src: string, marker?: string): string;
4
+ declare function resugarTemplate(src: string, marker?: string): string;
5
+ export { desugarTemplate, resugarTemplate, markerFor, DEFAULT_MARKER, };