@manifesto-ai/compiler 1.6.2 → 1.8.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 (201) hide show
  1. package/README.md +67 -18
  2. package/dist/chunk-BH25NHMN.js +74 -0
  3. package/dist/chunk-BH25NHMN.js.map +1 -0
  4. package/dist/chunk-D62NIFP4.js +33 -0
  5. package/dist/chunk-D62NIFP4.js.map +1 -0
  6. package/dist/chunk-MKLDAZ2Z.js +6920 -0
  7. package/dist/chunk-MKLDAZ2Z.js.map +1 -0
  8. package/dist/esbuild.d.ts +8 -0
  9. package/dist/esbuild.js +14 -0
  10. package/dist/esbuild.js.map +1 -0
  11. package/dist/index.d.ts +2810 -11
  12. package/dist/index.js +2425 -43
  13. package/dist/index.js.map +1 -1
  14. package/dist/node-loader.d.ts +18 -0
  15. package/dist/node-loader.js +47 -0
  16. package/dist/node-loader.js.map +1 -0
  17. package/dist/rollup.d.ts +8 -0
  18. package/dist/rollup.js +14 -0
  19. package/dist/rollup.js.map +1 -0
  20. package/dist/rspack.d.ts +7 -0
  21. package/dist/rspack.js +14 -0
  22. package/dist/rspack.js.map +1 -0
  23. package/dist/unplugin-6wnvFiEo.d.ts +17 -0
  24. package/dist/vite.d.ts +8 -17
  25. package/dist/vite.js +13 -33
  26. package/dist/vite.js.map +1 -1
  27. package/dist/webpack.d.ts +8 -0
  28. package/dist/webpack.js +14 -0
  29. package/dist/webpack.js.map +1 -0
  30. package/package.json +40 -22
  31. package/dist/analyzer/index.d.ts +0 -6
  32. package/dist/analyzer/index.d.ts.map +0 -1
  33. package/dist/analyzer/index.js +0 -6
  34. package/dist/analyzer/index.js.map +0 -1
  35. package/dist/analyzer/scope.d.ts +0 -77
  36. package/dist/analyzer/scope.d.ts.map +0 -1
  37. package/dist/analyzer/scope.js +0 -296
  38. package/dist/analyzer/scope.js.map +0 -1
  39. package/dist/analyzer/validator.d.ts +0 -60
  40. package/dist/analyzer/validator.d.ts.map +0 -1
  41. package/dist/analyzer/validator.js +0 -439
  42. package/dist/analyzer/validator.js.map +0 -1
  43. package/dist/api/compile-mel-patch-collector.d.ts +0 -32
  44. package/dist/api/compile-mel-patch-collector.d.ts.map +0 -1
  45. package/dist/api/compile-mel-patch-collector.js +0 -425
  46. package/dist/api/compile-mel-patch-collector.js.map +0 -1
  47. package/dist/api/compile-mel-patch-expr.d.ts +0 -9
  48. package/dist/api/compile-mel-patch-expr.d.ts.map +0 -1
  49. package/dist/api/compile-mel-patch-expr.js +0 -179
  50. package/dist/api/compile-mel-patch-expr.js.map +0 -1
  51. package/dist/api/compile-mel-patch-location.d.ts +0 -10
  52. package/dist/api/compile-mel-patch-location.d.ts.map +0 -1
  53. package/dist/api/compile-mel-patch-location.js +0 -48
  54. package/dist/api/compile-mel-patch-location.js.map +0 -1
  55. package/dist/api/compile-mel-patch.d.ts +0 -6
  56. package/dist/api/compile-mel-patch.d.ts.map +0 -1
  57. package/dist/api/compile-mel-patch.js +0 -244
  58. package/dist/api/compile-mel-patch.js.map +0 -1
  59. package/dist/api/compile-mel.d.ts +0 -126
  60. package/dist/api/compile-mel.d.ts.map +0 -1
  61. package/dist/api/compile-mel.js +0 -114
  62. package/dist/api/compile-mel.js.map +0 -1
  63. package/dist/api/index.d.ts +0 -10
  64. package/dist/api/index.d.ts.map +0 -1
  65. package/dist/api/index.js +0 -9
  66. package/dist/api/index.js.map +0 -1
  67. package/dist/diagnostics/codes.d.ts +0 -25
  68. package/dist/diagnostics/codes.d.ts.map +0 -1
  69. package/dist/diagnostics/codes.js +0 -154
  70. package/dist/diagnostics/codes.js.map +0 -1
  71. package/dist/diagnostics/index.d.ts +0 -6
  72. package/dist/diagnostics/index.d.ts.map +0 -1
  73. package/dist/diagnostics/index.js +0 -6
  74. package/dist/diagnostics/index.js.map +0 -1
  75. package/dist/diagnostics/types.d.ts +0 -67
  76. package/dist/diagnostics/types.d.ts.map +0 -1
  77. package/dist/diagnostics/types.js +0 -58
  78. package/dist/diagnostics/types.js.map +0 -1
  79. package/dist/evaluation/context.d.ts +0 -91
  80. package/dist/evaluation/context.d.ts.map +0 -1
  81. package/dist/evaluation/context.js +0 -53
  82. package/dist/evaluation/context.js.map +0 -1
  83. package/dist/evaluation/evaluate-expr.d.ts +0 -24
  84. package/dist/evaluation/evaluate-expr.d.ts.map +0 -1
  85. package/dist/evaluation/evaluate-expr.js +0 -577
  86. package/dist/evaluation/evaluate-expr.js.map +0 -1
  87. package/dist/evaluation/evaluate-patch.d.ts +0 -123
  88. package/dist/evaluation/evaluate-patch.d.ts.map +0 -1
  89. package/dist/evaluation/evaluate-patch.js +0 -202
  90. package/dist/evaluation/evaluate-patch.js.map +0 -1
  91. package/dist/evaluation/evaluate-runtime-patch.d.ts +0 -86
  92. package/dist/evaluation/evaluate-runtime-patch.d.ts.map +0 -1
  93. package/dist/evaluation/evaluate-runtime-patch.js +0 -185
  94. package/dist/evaluation/evaluate-runtime-patch.js.map +0 -1
  95. package/dist/evaluation/index.d.ts +0 -15
  96. package/dist/evaluation/index.d.ts.map +0 -1
  97. package/dist/evaluation/index.js +0 -13
  98. package/dist/evaluation/index.js.map +0 -1
  99. package/dist/generator/index.d.ts +0 -7
  100. package/dist/generator/index.d.ts.map +0 -1
  101. package/dist/generator/index.js +0 -7
  102. package/dist/generator/index.js.map +0 -1
  103. package/dist/generator/ir.d.ts +0 -348
  104. package/dist/generator/ir.d.ts.map +0 -1
  105. package/dist/generator/ir.js +0 -715
  106. package/dist/generator/ir.js.map +0 -1
  107. package/dist/generator/lowering.d.ts +0 -11
  108. package/dist/generator/lowering.d.ts.map +0 -1
  109. package/dist/generator/lowering.js +0 -369
  110. package/dist/generator/lowering.js.map +0 -1
  111. package/dist/generator/normalizer.d.ts +0 -16
  112. package/dist/generator/normalizer.d.ts.map +0 -1
  113. package/dist/generator/normalizer.js +0 -181
  114. package/dist/generator/normalizer.js.map +0 -1
  115. package/dist/index.d.ts.map +0 -1
  116. package/dist/lexer/index.d.ts +0 -7
  117. package/dist/lexer/index.d.ts.map +0 -1
  118. package/dist/lexer/index.js +0 -7
  119. package/dist/lexer/index.js.map +0 -1
  120. package/dist/lexer/lexer.d.ts +0 -59
  121. package/dist/lexer/lexer.d.ts.map +0 -1
  122. package/dist/lexer/lexer.js +0 -433
  123. package/dist/lexer/lexer.js.map +0 -1
  124. package/dist/lexer/source-location.d.ts +0 -41
  125. package/dist/lexer/source-location.d.ts.map +0 -1
  126. package/dist/lexer/source-location.js +0 -33
  127. package/dist/lexer/source-location.js.map +0 -1
  128. package/dist/lexer/tokens.d.ts +0 -47
  129. package/dist/lexer/tokens.d.ts.map +0 -1
  130. package/dist/lexer/tokens.js +0 -73
  131. package/dist/lexer/tokens.js.map +0 -1
  132. package/dist/loader.d.ts +0 -23
  133. package/dist/loader.d.ts.map +0 -1
  134. package/dist/loader.js +0 -62
  135. package/dist/loader.js.map +0 -1
  136. package/dist/lowering/context.d.ts +0 -96
  137. package/dist/lowering/context.d.ts.map +0 -1
  138. package/dist/lowering/context.js +0 -42
  139. package/dist/lowering/context.js.map +0 -1
  140. package/dist/lowering/errors.d.ts +0 -84
  141. package/dist/lowering/errors.d.ts.map +0 -1
  142. package/dist/lowering/errors.js +0 -81
  143. package/dist/lowering/errors.js.map +0 -1
  144. package/dist/lowering/index.d.ts +0 -20
  145. package/dist/lowering/index.d.ts.map +0 -1
  146. package/dist/lowering/index.js +0 -13
  147. package/dist/lowering/index.js.map +0 -1
  148. package/dist/lowering/lower-expr.d.ts +0 -76
  149. package/dist/lowering/lower-expr.d.ts.map +0 -1
  150. package/dist/lowering/lower-expr.js +0 -366
  151. package/dist/lowering/lower-expr.js.map +0 -1
  152. package/dist/lowering/lower-patch.d.ts +0 -231
  153. package/dist/lowering/lower-patch.d.ts.map +0 -1
  154. package/dist/lowering/lower-patch.js +0 -146
  155. package/dist/lowering/lower-patch.js.map +0 -1
  156. package/dist/lowering/lower-runtime-patch.d.ts +0 -100
  157. package/dist/lowering/lower-runtime-patch.d.ts.map +0 -1
  158. package/dist/lowering/lower-runtime-patch.js +0 -49
  159. package/dist/lowering/lower-runtime-patch.js.map +0 -1
  160. package/dist/mel-module.d.ts +0 -13
  161. package/dist/mel-module.d.ts.map +0 -1
  162. package/dist/mel-module.js +0 -33
  163. package/dist/mel-module.js.map +0 -1
  164. package/dist/parser/ast.d.ts +0 -344
  165. package/dist/parser/ast.d.ts.map +0 -1
  166. package/dist/parser/ast.js +0 -24
  167. package/dist/parser/ast.js.map +0 -1
  168. package/dist/parser/index.d.ts +0 -7
  169. package/dist/parser/index.d.ts.map +0 -1
  170. package/dist/parser/index.js +0 -7
  171. package/dist/parser/index.js.map +0 -1
  172. package/dist/parser/parser.d.ts +0 -92
  173. package/dist/parser/parser.d.ts.map +0 -1
  174. package/dist/parser/parser.js +0 -892
  175. package/dist/parser/parser.js.map +0 -1
  176. package/dist/parser/precedence.d.ts +0 -44
  177. package/dist/parser/precedence.d.ts.map +0 -1
  178. package/dist/parser/precedence.js +0 -69
  179. package/dist/parser/precedence.js.map +0 -1
  180. package/dist/renderer/expr-node.d.ts +0 -172
  181. package/dist/renderer/expr-node.d.ts.map +0 -1
  182. package/dist/renderer/expr-node.js +0 -218
  183. package/dist/renderer/expr-node.js.map +0 -1
  184. package/dist/renderer/fragment.d.ts +0 -84
  185. package/dist/renderer/fragment.d.ts.map +0 -1
  186. package/dist/renderer/fragment.js +0 -172
  187. package/dist/renderer/fragment.js.map +0 -1
  188. package/dist/renderer/index.d.ts +0 -23
  189. package/dist/renderer/index.d.ts.map +0 -1
  190. package/dist/renderer/index.js +0 -27
  191. package/dist/renderer/index.js.map +0 -1
  192. package/dist/renderer/patch-op.d.ts +0 -82
  193. package/dist/renderer/patch-op.d.ts.map +0 -1
  194. package/dist/renderer/patch-op.js +0 -204
  195. package/dist/renderer/patch-op.js.map +0 -1
  196. package/dist/renderer/type-expr.d.ts +0 -61
  197. package/dist/renderer/type-expr.d.ts.map +0 -1
  198. package/dist/renderer/type-expr.js +0 -131
  199. package/dist/renderer/type-expr.js.map +0 -1
  200. package/dist/vite.d.ts.map +0 -1
  201. package/loader.cjs +0 -22
@@ -1,47 +0,0 @@
1
- /**
2
- * Token Types for MEL Lexer
3
- * Based on MEL SPEC v0.3.3 Section 3
4
- */
5
- import type { SourceLocation } from "./source-location.js";
6
- /**
7
- * All token kinds in MEL
8
- */
9
- export type TokenKind = "DOMAIN" | "STATE" | "COMPUTED" | "ACTION" | "EFFECT" | "WHEN" | "ONCE" | "PATCH" | "UNSET" | "MERGE" | "TRUE" | "FALSE" | "NULL" | "AS" | "AVAILABLE" | "FAIL" | "STOP" | "WITH" | "TYPE" | "IMPORT" | "FROM" | "EXPORT" | "PLUS" | "MINUS" | "STAR" | "SLASH" | "PERCENT" | "EQ_EQ" | "BANG_EQ" | "LT" | "LT_EQ" | "GT" | "GT_EQ" | "AMP_AMP" | "PIPE_PIPE" | "BANG" | "QUESTION_QUESTION" | "QUESTION" | "COLON" | "EQ" | "LPAREN" | "RPAREN" | "LBRACE" | "RBRACE" | "LBRACKET" | "RBRACKET" | "COMMA" | "SEMICOLON" | "DOT" | "PIPE" | "NUMBER" | "STRING" | "IDENTIFIER" | "SYSTEM_IDENT" | "ITEM" | "EOF" | "ERROR";
10
- /**
11
- * A token produced by the lexer
12
- */
13
- export interface Token {
14
- kind: TokenKind;
15
- /** The raw text of the token */
16
- lexeme: string;
17
- /** Parsed value for literals */
18
- value?: unknown;
19
- /** Location in source */
20
- location: SourceLocation;
21
- }
22
- /**
23
- * Keywords lookup table
24
- */
25
- export declare const KEYWORDS: Record<string, TokenKind>;
26
- /**
27
- * Reserved keywords (JS keywords that are forbidden in MEL)
28
- */
29
- export declare const RESERVED_KEYWORDS: Set<string>;
30
- /**
31
- * Check if a token is a keyword
32
- */
33
- export declare function isKeyword(lexeme: string): boolean;
34
- /**
35
- * Check if a token is a reserved word
36
- */
37
- export declare function isReserved(lexeme: string): boolean;
38
- /**
39
- * Get keyword token kind, or undefined if not a keyword
40
- * Note: Uses Object.hasOwn to avoid prototype pollution (e.g., "toString")
41
- */
42
- export declare function getKeywordKind(lexeme: string): TokenKind | undefined;
43
- /**
44
- * Create a token
45
- */
46
- export declare function createToken(kind: TokenKind, lexeme: string, location: SourceLocation, value?: unknown): Token;
47
- //# sourceMappingURL=tokens.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/lexer/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,SAAS,GAEjB,QAAQ,GACR,OAAO,GACP,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,OAAO,GACP,OAAO,GACP,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,IAAI,GACJ,WAAW,GACX,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,MAAM,GACN,QAAQ,GAER,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,SAAS,GACT,OAAO,GACP,SAAS,GACT,IAAI,GACJ,OAAO,GACP,IAAI,GACJ,OAAO,GACP,SAAS,GACT,WAAW,GACX,MAAM,GACN,mBAAmB,GACnB,UAAU,GACV,OAAO,GACP,IAAI,GAEJ,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,UAAU,GACV,OAAO,GACP,WAAW,GACX,KAAK,GACL,MAAM,GAEN,QAAQ,GACR,QAAQ,GACR,YAAY,GAEZ,cAAc,GACd,MAAM,GAGN,KAAK,GACL,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,yBAAyB;IACzB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAuB9C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,aAY5B,CAAC;AAEH;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEpE;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,cAAc,EACxB,KAAK,CAAC,EAAE,OAAO,GACd,KAAK,CAEP"}
@@ -1,73 +0,0 @@
1
- /**
2
- * Token Types for MEL Lexer
3
- * Based on MEL SPEC v0.3.3 Section 3
4
- */
5
- /**
6
- * Keywords lookup table
7
- */
8
- export const KEYWORDS = {
9
- domain: "DOMAIN",
10
- state: "STATE",
11
- computed: "COMPUTED",
12
- action: "ACTION",
13
- effect: "EFFECT",
14
- when: "WHEN",
15
- once: "ONCE",
16
- patch: "PATCH",
17
- unset: "UNSET",
18
- merge: "MERGE",
19
- true: "TRUE",
20
- false: "FALSE",
21
- null: "NULL",
22
- as: "AS",
23
- available: "AVAILABLE", // v0.3.2
24
- fail: "FAIL", // v0.3.2
25
- stop: "STOP", // v0.3.2
26
- with: "WITH", // v0.3.2
27
- type: "TYPE", // v0.3.3
28
- import: "IMPORT",
29
- from: "FROM",
30
- export: "EXPORT",
31
- };
32
- /**
33
- * Reserved keywords (JS keywords that are forbidden in MEL)
34
- */
35
- export const RESERVED_KEYWORDS = new Set([
36
- // Control flow (forbidden)
37
- "function", "var", "let", "const", "if", "else",
38
- "for", "while", "do", "switch", "case", "break",
39
- "continue", "return", "throw", "try", "catch", "finally",
40
- "new", "delete", "typeof", "instanceof", "void",
41
- // NOTE: "with" removed - now a MEL keyword in v0.3.2
42
- "debugger", "this", "super", "arguments", "eval",
43
- // Reserved for future
44
- "async", "await", "yield", "class", "extends",
45
- "interface", "enum", "namespace", "module",
46
- // NOTE: "type" removed - now a MEL keyword in v0.3.3
47
- ]);
48
- /**
49
- * Check if a token is a keyword
50
- */
51
- export function isKeyword(lexeme) {
52
- return lexeme in KEYWORDS;
53
- }
54
- /**
55
- * Check if a token is a reserved word
56
- */
57
- export function isReserved(lexeme) {
58
- return RESERVED_KEYWORDS.has(lexeme);
59
- }
60
- /**
61
- * Get keyword token kind, or undefined if not a keyword
62
- * Note: Uses Object.hasOwn to avoid prototype pollution (e.g., "toString")
63
- */
64
- export function getKeywordKind(lexeme) {
65
- return Object.hasOwn(KEYWORDS, lexeme) ? KEYWORDS[lexeme] : undefined;
66
- }
67
- /**
68
- * Create a token
69
- */
70
- export function createToken(kind, lexeme, location, value) {
71
- return { kind, lexeme, location, value };
72
- }
73
- //# sourceMappingURL=tokens.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/lexer/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsFH;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAA8B;IACjD,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,IAAI;IACR,SAAS,EAAE,WAAW,EAAG,SAAS;IAClC,IAAI,EAAE,MAAM,EAAa,SAAS;IAClC,IAAI,EAAE,MAAM,EAAa,SAAS;IAClC,IAAI,EAAE,MAAM,EAAa,SAAS;IAClC,IAAI,EAAE,MAAM,EAAa,SAAS;IAClC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACvC,2BAA2B;IAC3B,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM;IAC/C,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO;IAC/C,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS;IACxD,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM;IAC/C,qDAAqD;IACrD,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM;IAChD,sBAAsB;IACtB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS;IAC7C,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ;IAC1C,qDAAqD;CACtD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,OAAO,MAAM,IAAI,QAAQ,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,OAAO,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,IAAe,EACf,MAAc,EACd,QAAwB,EACxB,KAAe;IAEf,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC"}
package/dist/loader.d.ts DELETED
@@ -1,23 +0,0 @@
1
- /**
2
- * MEL Loader
3
- *
4
- * This module intentionally supports two environments:
5
- * 1) Node ESM loader hooks (`resolve`, `load`) for `node --loader` / `tsx --loader`
6
- * 2) Webpack loader default export (`use: "@manifesto-ai/compiler/loader"`)
7
- */
8
- import type { LoadHook, ResolveHook } from "node:module";
9
- import type { LoaderContext } from "webpack";
10
- /**
11
- * Node loader resolve hook.
12
- */
13
- export declare const resolve: ResolveHook;
14
- /**
15
- * Node loader load hook.
16
- */
17
- export declare const load: LoadHook;
18
- /**
19
- * Webpack loader default export.
20
- */
21
- export default function melWebpackLoader(this: LoaderContext<unknown>, source: string | Buffer): string;
22
- export declare const raw = false;
23
- //# sourceMappingURL=loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAqB7C;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,WAOrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,QAalB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACtC,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAC5B,MAAM,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CAKR;AAED,eAAO,MAAM,GAAG,QAAQ,CAAC"}
package/dist/loader.js DELETED
@@ -1,62 +0,0 @@
1
- /**
2
- * MEL Loader
3
- *
4
- * This module intentionally supports two environments:
5
- * 1) Node ESM loader hooks (`resolve`, `load`) for `node --loader` / `tsx --loader`
6
- * 2) Webpack loader default export (`use: "@manifesto-ai/compiler/loader"`)
7
- */
8
- import { readFile } from "node:fs/promises";
9
- import { fileURLToPath } from "node:url";
10
- import { compileMelToModuleCode } from "./mel-module.js";
11
- function stripSearchAndHash(value) {
12
- const [withoutSearch] = value.split("?", 1);
13
- const [withoutHash] = withoutSearch.split("#", 1);
14
- return withoutHash;
15
- }
16
- function isMelReference(value) {
17
- return stripSearchAndHash(value).endsWith(".mel");
18
- }
19
- function toSourceId(urlOrPath) {
20
- try {
21
- return fileURLToPath(urlOrPath);
22
- }
23
- catch {
24
- return urlOrPath;
25
- }
26
- }
27
- /**
28
- * Node loader resolve hook.
29
- */
30
- export const resolve = async (specifier, context, nextResolve) => {
31
- if (!isMelReference(specifier)) {
32
- return nextResolve(specifier, context);
33
- }
34
- const resolved = await nextResolve(specifier, context);
35
- return { ...resolved, shortCircuit: true };
36
- };
37
- /**
38
- * Node loader load hook.
39
- */
40
- export const load = async (url, context, nextLoad) => {
41
- if (!isMelReference(url)) {
42
- return nextLoad(url, context);
43
- }
44
- const melSource = await readFile(new URL(url), "utf8");
45
- const source = compileMelToModuleCode(melSource, toSourceId(url));
46
- return {
47
- format: "module",
48
- source,
49
- shortCircuit: true,
50
- };
51
- };
52
- /**
53
- * Webpack loader default export.
54
- */
55
- export default function melWebpackLoader(source) {
56
- this.cacheable?.(true);
57
- const melSource = typeof source === "string" ? source : source.toString("utf8");
58
- const sourceId = this.resourcePath ?? "<mel>";
59
- return compileMelToModuleCode(melSource, sourceId);
60
- }
61
- export const raw = false;
62
- //# sourceMappingURL=loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAClD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,UAAU,CAAC,SAAiB;IACnC,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAgB,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;IAC5E,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAa,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;IAC7D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAElE,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,MAAM;QACN,YAAY,EAAE,IAAI;KACnB,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAEtC,MAAuB;IAEvB,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC;IAC9C,OAAO,sBAAsB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC"}
@@ -1,96 +0,0 @@
1
- /**
2
- * Lowering Context Types
3
- *
4
- * Defines contexts for expression and patch lowering.
5
- *
6
- * @see SPEC v0.4.0 §17.2
7
- */
8
- /**
9
- * Allowed system path prefixes.
10
- *
11
- * In Translator path, only 'meta' and 'input' are allowed.
12
- * 'system' is forbidden (requires Flow execution).
13
- *
14
- * @see FDR-MEL-071
15
- */
16
- export type AllowedSysPrefix = "meta" | "input";
17
- /**
18
- * Context for single expression lowering.
19
- *
20
- * @see SPEC v0.4.0 §17.2
21
- */
22
- export interface ExprLoweringContext {
23
- /**
24
- * Expression context mode.
25
- * - 'schema': for addComputed, addConstraint, etc.
26
- * - 'action': for guards, patches, effects
27
- */
28
- mode: "schema" | "action";
29
- /**
30
- * Allowed system path prefixes.
31
- * In Translator path: only ["meta", "input"]
32
- *
33
- * @see FDR-MEL-071
34
- */
35
- allowSysPaths?: {
36
- prefixes: AllowedSysPrefix[];
37
- };
38
- /**
39
- * Function table version for call lowering.
40
- */
41
- fnTableVersion: string;
42
- /**
43
- * Action name (for action context).
44
- */
45
- actionName?: string;
46
- /**
47
- * Whether $item is allowed in this context.
48
- * Only true for effect.args fields.
49
- *
50
- * @see FDR-MEL-068
51
- */
52
- allowItem?: boolean;
53
- }
54
- /**
55
- * Context for patch lowering.
56
- *
57
- * NO mode field - Compiler determines context per op-field.
58
- *
59
- * @see SPEC v0.4.0 §17.2, AD-COMP-LOW-002
60
- */
61
- export interface PatchLoweringContext {
62
- /**
63
- * Allowed system path prefixes.
64
- * In Translator path: only ["meta", "input"]
65
- *
66
- * @see FDR-MEL-071
67
- */
68
- allowSysPaths?: {
69
- prefixes: AllowedSysPrefix[];
70
- };
71
- /**
72
- * Function table version for call lowering.
73
- */
74
- fnTableVersion: string;
75
- /**
76
- * Action name (for action-related ops).
77
- */
78
- actionName?: string;
79
- }
80
- /**
81
- * Default expression lowering context for schema mode.
82
- */
83
- export declare const DEFAULT_SCHEMA_CONTEXT: ExprLoweringContext;
84
- /**
85
- * Default expression lowering context for action mode.
86
- */
87
- export declare const DEFAULT_ACTION_CONTEXT: ExprLoweringContext;
88
- /**
89
- * Context for effect.args (allows $item).
90
- */
91
- export declare const EFFECT_ARGS_CONTEXT: ExprLoweringContext;
92
- /**
93
- * Default patch lowering context.
94
- */
95
- export declare const DEFAULT_PATCH_CONTEXT: PatchLoweringContext;
96
- //# sourceMappingURL=context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/lowering/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEhD;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAE1B;;;;;OAKG;IACH,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAA;KAAE,CAAC;IAEjD;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAA;KAAE,CAAC;IAEjD;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,mBAKpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,mBAKpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,mBAKjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,oBAGnC,CAAC"}
@@ -1,42 +0,0 @@
1
- /**
2
- * Lowering Context Types
3
- *
4
- * Defines contexts for expression and patch lowering.
5
- *
6
- * @see SPEC v0.4.0 §17.2
7
- */
8
- /**
9
- * Default expression lowering context for schema mode.
10
- */
11
- export const DEFAULT_SCHEMA_CONTEXT = {
12
- mode: "schema",
13
- allowSysPaths: { prefixes: ["meta", "input"] },
14
- fnTableVersion: "1.0",
15
- allowItem: false,
16
- };
17
- /**
18
- * Default expression lowering context for action mode.
19
- */
20
- export const DEFAULT_ACTION_CONTEXT = {
21
- mode: "action",
22
- allowSysPaths: { prefixes: ["meta", "input"] },
23
- fnTableVersion: "1.0",
24
- allowItem: false,
25
- };
26
- /**
27
- * Context for effect.args (allows $item).
28
- */
29
- export const EFFECT_ARGS_CONTEXT = {
30
- mode: "action",
31
- allowSysPaths: { prefixes: ["meta", "input"] },
32
- fnTableVersion: "1.0",
33
- allowItem: true,
34
- };
35
- /**
36
- * Default patch lowering context.
37
- */
38
- export const DEFAULT_PATCH_CONTEXT = {
39
- allowSysPaths: { prefixes: ["meta", "input"] },
40
- fnTableVersion: "1.0",
41
- };
42
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/lowering/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA+EH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAwB;IACzD,IAAI,EAAE,QAAQ;IACd,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAC9C,cAAc,EAAE,KAAK;IACrB,SAAS,EAAE,KAAK;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAwB;IACzD,IAAI,EAAE,QAAQ;IACd,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAC9C,cAAc,EAAE,KAAK;IACrB,SAAS,EAAE,KAAK;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,IAAI,EAAE,QAAQ;IACd,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAC9C,cAAc,EAAE,KAAK;IACrB,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAyB;IACzD,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAC9C,cAAc,EAAE,KAAK;CACtB,CAAC"}
@@ -1,84 +0,0 @@
1
- /**
2
- * Lowering Error Types
3
- *
4
- * Defines error types for MEL IR → Core IR lowering.
5
- *
6
- * @see SPEC v0.4.0 §17.6
7
- */
8
- /**
9
- * Lowering error codes.
10
- *
11
- * @see SPEC v0.4.0 §17.6
12
- */
13
- export type LoweringErrorCode =
14
- /** var in non-effect context, sys in schema */
15
- "INVALID_KIND_FOR_CONTEXT"
16
- /** Unknown function name in call node */
17
- | "UNKNOWN_CALL_FN"
18
- /** sys.system in Translator path */
19
- | "INVALID_SYS_PATH"
20
- /** get.base is not var(item) */
21
- | "UNSUPPORTED_BASE"
22
- /** Malformed node structure */
23
- | "INVALID_SHAPE"
24
- /** Unknown node kind */
25
- | "UNKNOWN_NODE_KIND";
26
- /**
27
- * Lowering error class.
28
- *
29
- * Thrown when MEL IR cannot be lowered to Core IR.
30
- *
31
- * @see SPEC v0.4.0 §17.6
32
- */
33
- export declare class LoweringError extends Error {
34
- readonly code: LoweringErrorCode;
35
- readonly path?: string[];
36
- readonly details?: Record<string, unknown>;
37
- constructor(code: LoweringErrorCode, message: string, options?: {
38
- path?: string[];
39
- details?: Record<string, unknown>;
40
- });
41
- }
42
- /**
43
- * Create a lowering error for invalid kind in context.
44
- *
45
- * @example
46
- * throw invalidKindForContext("var", "schema");
47
- */
48
- export declare function invalidKindForContext(kind: string, context: string, path?: string[]): LoweringError;
49
- /**
50
- * Create a lowering error for unknown call function.
51
- *
52
- * @example
53
- * throw unknownCallFn("unknownFunc");
54
- */
55
- export declare function unknownCallFn(fn: string, path?: string[]): LoweringError;
56
- /**
57
- * Create a lowering error for invalid sys path.
58
- *
59
- * @example
60
- * throw invalidSysPath(["system", "uuid"]);
61
- */
62
- export declare function invalidSysPath(sysPath: string[], path?: string[]): LoweringError;
63
- /**
64
- * Create a lowering error for unsupported base expression.
65
- *
66
- * @example
67
- * throw unsupportedBase("call");
68
- */
69
- export declare function unsupportedBase(baseKind: string, path?: string[]): LoweringError;
70
- /**
71
- * Create a lowering error for invalid shape.
72
- *
73
- * @example
74
- * throw invalidShape("missing 'value' field");
75
- */
76
- export declare function invalidShape(description: string, path?: string[]): LoweringError;
77
- /**
78
- * Create a lowering error for unknown node kind.
79
- *
80
- * @example
81
- * throw unknownNodeKind("foo");
82
- */
83
- export declare function unknownNodeKind(kind: string, path?: string[]): LoweringError;
84
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lowering/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,MAAM,MAAM,iBAAiB;AAC3B,+CAA+C;AAC7C,0BAA0B;AAC5B,yCAAyC;GACvC,iBAAiB;AACnB,oCAAoC;GAClC,kBAAkB;AACpB,gCAAgC;GAC9B,kBAAkB;AACpB,+BAA+B;GAC7B,eAAe;AACjB,wBAAwB;GACtB,mBAAmB,CAAC;AAExB;;;;;;GAMG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAGzC,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC;CAQJ;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,aAAa,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAMxE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,aAAa,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,aAAa,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,aAAa,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,aAAa,CAMf"}
@@ -1,81 +0,0 @@
1
- /**
2
- * Lowering Error Types
3
- *
4
- * Defines error types for MEL IR → Core IR lowering.
5
- *
6
- * @see SPEC v0.4.0 §17.6
7
- */
8
- /**
9
- * Lowering error class.
10
- *
11
- * Thrown when MEL IR cannot be lowered to Core IR.
12
- *
13
- * @see SPEC v0.4.0 §17.6
14
- */
15
- export class LoweringError extends Error {
16
- code;
17
- path;
18
- details;
19
- constructor(code, message, options) {
20
- super(message);
21
- this.name = "LoweringError";
22
- this.code = code;
23
- this.path = options?.path;
24
- this.details = options?.details;
25
- }
26
- }
27
- /**
28
- * Create a lowering error for invalid kind in context.
29
- *
30
- * @example
31
- * throw invalidKindForContext("var", "schema");
32
- */
33
- export function invalidKindForContext(kind, context, path) {
34
- return new LoweringError("INVALID_KIND_FOR_CONTEXT", `Node kind '${kind}' is not allowed in ${context} context`, { path, details: { kind, context } });
35
- }
36
- /**
37
- * Create a lowering error for unknown call function.
38
- *
39
- * @example
40
- * throw unknownCallFn("unknownFunc");
41
- */
42
- export function unknownCallFn(fn, path) {
43
- return new LoweringError("UNKNOWN_CALL_FN", `Unknown function '${fn}' in call expression`, { path, details: { fn } });
44
- }
45
- /**
46
- * Create a lowering error for invalid sys path.
47
- *
48
- * @example
49
- * throw invalidSysPath(["system", "uuid"]);
50
- */
51
- export function invalidSysPath(sysPath, path) {
52
- return new LoweringError("INVALID_SYS_PATH", `System path '${sysPath.join(".")}' is not allowed in Translator path`, { path, details: { sysPath } });
53
- }
54
- /**
55
- * Create a lowering error for unsupported base expression.
56
- *
57
- * @example
58
- * throw unsupportedBase("call");
59
- */
60
- export function unsupportedBase(baseKind, path) {
61
- return new LoweringError("UNSUPPORTED_BASE", `Unsupported base expression kind '${baseKind}'. Only var(item) is supported.`, { path, details: { baseKind } });
62
- }
63
- /**
64
- * Create a lowering error for invalid shape.
65
- *
66
- * @example
67
- * throw invalidShape("missing 'value' field");
68
- */
69
- export function invalidShape(description, path) {
70
- return new LoweringError("INVALID_SHAPE", `Invalid node shape: ${description}`, { path, details: { description } });
71
- }
72
- /**
73
- * Create a lowering error for unknown node kind.
74
- *
75
- * @example
76
- * throw unknownNodeKind("foo");
77
- */
78
- export function unknownNodeKind(kind, path) {
79
- return new LoweringError("UNKNOWN_NODE_KIND", `Unknown expression node kind '${kind}'`, { path, details: { kind } });
80
- }
81
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lowering/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqBH;;;;;;GAMG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,IAAI,CAAoB;IACxB,IAAI,CAAY;IAChB,OAAO,CAA2B;IAE3C,YACE,IAAuB,EACvB,OAAe,EACf,OAGC;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;IAClC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,OAAe,EACf,IAAe;IAEf,OAAO,IAAI,aAAa,CACtB,0BAA0B,EAC1B,cAAc,IAAI,uBAAuB,OAAO,UAAU,EAC1D,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CACrC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,IAAe;IACvD,OAAO,IAAI,aAAa,CACtB,iBAAiB,EACjB,qBAAqB,EAAE,sBAAsB,EAC7C,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAC1B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAiB,EACjB,IAAe;IAEf,OAAO,IAAI,aAAa,CACtB,kBAAkB,EAClB,gBAAgB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,qCAAqC,EACtE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,IAAe;IAEf,OAAO,IAAI,aAAa,CACtB,kBAAkB,EAClB,qCAAqC,QAAQ,iCAAiC,EAC9E,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,CAChC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,WAAmB,EACnB,IAAe;IAEf,OAAO,IAAI,aAAa,CACtB,eAAe,EACf,uBAAuB,WAAW,EAAE,EACpC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,EAAE,CACnC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAY,EACZ,IAAe;IAEf,OAAO,IAAI,aAAa,CACtB,mBAAmB,EACnB,iCAAiC,IAAI,GAAG,EACxC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;AACJ,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Lowering Module
3
- *
4
- * Transforms MEL IR to Core IR.
5
- *
6
- * @see SPEC v0.4.0 §17
7
- */
8
- export type { AllowedSysPrefix, ExprLoweringContext, PatchLoweringContext, } from "./context.js";
9
- export { DEFAULT_SCHEMA_CONTEXT, DEFAULT_ACTION_CONTEXT, EFFECT_ARGS_CONTEXT, DEFAULT_PATCH_CONTEXT, } from "./context.js";
10
- export type { LoweringErrorCode } from "./errors.js";
11
- export { LoweringError, invalidKindForContext, unknownCallFn, invalidSysPath, unsupportedBase, invalidShape, unknownNodeKind, } from "./errors.js";
12
- export type { MelPrimitive, MelPathSegment, MelPathNode, MelSystemPath, MelObjField, MelExprNode, } from "./lower-expr.js";
13
- export { lowerExprNode } from "./lower-expr.js";
14
- export type { MelTypeExpr, MelTypeField, MelPatchOp, MelPatchFragment, LoweredTypeExpr, LoweredTypeField, LoweredPatchOp, SchemaConditionalPatchOp,
15
- /** @deprecated Use SchemaConditionalPatchOp */
16
- ConditionalPatchOp, } from "./lower-patch.js";
17
- export { lowerPatchFragments } from "./lower-patch.js";
18
- export type { MelRuntimePatchOp, MelRuntimePatch, RuntimeConditionalPatchOp, } from "./lower-runtime-patch.js";
19
- export { lowerRuntimePatches, lowerRuntimePatch } from "./lower-runtime-patch.js";
20
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lowering/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,YAAY,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,wBAAwB;AACxB,+CAA+C;AAC/C,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Lowering Module
3
- *
4
- * Transforms MEL IR to Core IR.
5
- *
6
- * @see SPEC v0.4.0 §17
7
- */
8
- export { DEFAULT_SCHEMA_CONTEXT, DEFAULT_ACTION_CONTEXT, EFFECT_ARGS_CONTEXT, DEFAULT_PATCH_CONTEXT, } from "./context.js";
9
- export { LoweringError, invalidKindForContext, unknownCallFn, invalidSysPath, unsupportedBase, invalidShape, unknownNodeKind, } from "./errors.js";
10
- export { lowerExprNode } from "./lower-expr.js";
11
- export { lowerPatchFragments } from "./lower-patch.js";
12
- export { lowerRuntimePatches, lowerRuntimePatch } from "./lower-runtime-patch.js";
13
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lowering/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AAKtB,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,GAChB,MAAM,aAAa,CAAC;AAYrB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAgBhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AASvD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}