@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.
- package/README.md +67 -18
- package/dist/chunk-BH25NHMN.js +74 -0
- package/dist/chunk-BH25NHMN.js.map +1 -0
- package/dist/chunk-D62NIFP4.js +33 -0
- package/dist/chunk-D62NIFP4.js.map +1 -0
- package/dist/chunk-MKLDAZ2Z.js +6920 -0
- package/dist/chunk-MKLDAZ2Z.js.map +1 -0
- package/dist/esbuild.d.ts +8 -0
- package/dist/esbuild.js +14 -0
- package/dist/esbuild.js.map +1 -0
- package/dist/index.d.ts +2810 -11
- package/dist/index.js +2425 -43
- package/dist/index.js.map +1 -1
- package/dist/node-loader.d.ts +18 -0
- package/dist/node-loader.js +47 -0
- package/dist/node-loader.js.map +1 -0
- package/dist/rollup.d.ts +8 -0
- package/dist/rollup.js +14 -0
- package/dist/rollup.js.map +1 -0
- package/dist/rspack.d.ts +7 -0
- package/dist/rspack.js +14 -0
- package/dist/rspack.js.map +1 -0
- package/dist/unplugin-6wnvFiEo.d.ts +17 -0
- package/dist/vite.d.ts +8 -17
- package/dist/vite.js +13 -33
- package/dist/vite.js.map +1 -1
- package/dist/webpack.d.ts +8 -0
- package/dist/webpack.js +14 -0
- package/dist/webpack.js.map +1 -0
- package/package.json +40 -22
- package/dist/analyzer/index.d.ts +0 -6
- package/dist/analyzer/index.d.ts.map +0 -1
- package/dist/analyzer/index.js +0 -6
- package/dist/analyzer/index.js.map +0 -1
- package/dist/analyzer/scope.d.ts +0 -77
- package/dist/analyzer/scope.d.ts.map +0 -1
- package/dist/analyzer/scope.js +0 -296
- package/dist/analyzer/scope.js.map +0 -1
- package/dist/analyzer/validator.d.ts +0 -60
- package/dist/analyzer/validator.d.ts.map +0 -1
- package/dist/analyzer/validator.js +0 -439
- package/dist/analyzer/validator.js.map +0 -1
- package/dist/api/compile-mel-patch-collector.d.ts +0 -32
- package/dist/api/compile-mel-patch-collector.d.ts.map +0 -1
- package/dist/api/compile-mel-patch-collector.js +0 -425
- package/dist/api/compile-mel-patch-collector.js.map +0 -1
- package/dist/api/compile-mel-patch-expr.d.ts +0 -9
- package/dist/api/compile-mel-patch-expr.d.ts.map +0 -1
- package/dist/api/compile-mel-patch-expr.js +0 -179
- package/dist/api/compile-mel-patch-expr.js.map +0 -1
- package/dist/api/compile-mel-patch-location.d.ts +0 -10
- package/dist/api/compile-mel-patch-location.d.ts.map +0 -1
- package/dist/api/compile-mel-patch-location.js +0 -48
- package/dist/api/compile-mel-patch-location.js.map +0 -1
- package/dist/api/compile-mel-patch.d.ts +0 -6
- package/dist/api/compile-mel-patch.d.ts.map +0 -1
- package/dist/api/compile-mel-patch.js +0 -244
- package/dist/api/compile-mel-patch.js.map +0 -1
- package/dist/api/compile-mel.d.ts +0 -126
- package/dist/api/compile-mel.d.ts.map +0 -1
- package/dist/api/compile-mel.js +0 -114
- package/dist/api/compile-mel.js.map +0 -1
- package/dist/api/index.d.ts +0 -10
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js +0 -9
- package/dist/api/index.js.map +0 -1
- package/dist/diagnostics/codes.d.ts +0 -25
- package/dist/diagnostics/codes.d.ts.map +0 -1
- package/dist/diagnostics/codes.js +0 -154
- package/dist/diagnostics/codes.js.map +0 -1
- package/dist/diagnostics/index.d.ts +0 -6
- package/dist/diagnostics/index.d.ts.map +0 -1
- package/dist/diagnostics/index.js +0 -6
- package/dist/diagnostics/index.js.map +0 -1
- package/dist/diagnostics/types.d.ts +0 -67
- package/dist/diagnostics/types.d.ts.map +0 -1
- package/dist/diagnostics/types.js +0 -58
- package/dist/diagnostics/types.js.map +0 -1
- package/dist/evaluation/context.d.ts +0 -91
- package/dist/evaluation/context.d.ts.map +0 -1
- package/dist/evaluation/context.js +0 -53
- package/dist/evaluation/context.js.map +0 -1
- package/dist/evaluation/evaluate-expr.d.ts +0 -24
- package/dist/evaluation/evaluate-expr.d.ts.map +0 -1
- package/dist/evaluation/evaluate-expr.js +0 -577
- package/dist/evaluation/evaluate-expr.js.map +0 -1
- package/dist/evaluation/evaluate-patch.d.ts +0 -123
- package/dist/evaluation/evaluate-patch.d.ts.map +0 -1
- package/dist/evaluation/evaluate-patch.js +0 -202
- package/dist/evaluation/evaluate-patch.js.map +0 -1
- package/dist/evaluation/evaluate-runtime-patch.d.ts +0 -86
- package/dist/evaluation/evaluate-runtime-patch.d.ts.map +0 -1
- package/dist/evaluation/evaluate-runtime-patch.js +0 -185
- package/dist/evaluation/evaluate-runtime-patch.js.map +0 -1
- package/dist/evaluation/index.d.ts +0 -15
- package/dist/evaluation/index.d.ts.map +0 -1
- package/dist/evaluation/index.js +0 -13
- package/dist/evaluation/index.js.map +0 -1
- package/dist/generator/index.d.ts +0 -7
- package/dist/generator/index.d.ts.map +0 -1
- package/dist/generator/index.js +0 -7
- package/dist/generator/index.js.map +0 -1
- package/dist/generator/ir.d.ts +0 -348
- package/dist/generator/ir.d.ts.map +0 -1
- package/dist/generator/ir.js +0 -715
- package/dist/generator/ir.js.map +0 -1
- package/dist/generator/lowering.d.ts +0 -11
- package/dist/generator/lowering.d.ts.map +0 -1
- package/dist/generator/lowering.js +0 -369
- package/dist/generator/lowering.js.map +0 -1
- package/dist/generator/normalizer.d.ts +0 -16
- package/dist/generator/normalizer.d.ts.map +0 -1
- package/dist/generator/normalizer.js +0 -181
- package/dist/generator/normalizer.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/lexer/index.d.ts +0 -7
- package/dist/lexer/index.d.ts.map +0 -1
- package/dist/lexer/index.js +0 -7
- package/dist/lexer/index.js.map +0 -1
- package/dist/lexer/lexer.d.ts +0 -59
- package/dist/lexer/lexer.d.ts.map +0 -1
- package/dist/lexer/lexer.js +0 -433
- package/dist/lexer/lexer.js.map +0 -1
- package/dist/lexer/source-location.d.ts +0 -41
- package/dist/lexer/source-location.d.ts.map +0 -1
- package/dist/lexer/source-location.js +0 -33
- package/dist/lexer/source-location.js.map +0 -1
- package/dist/lexer/tokens.d.ts +0 -47
- package/dist/lexer/tokens.d.ts.map +0 -1
- package/dist/lexer/tokens.js +0 -73
- package/dist/lexer/tokens.js.map +0 -1
- package/dist/loader.d.ts +0 -23
- package/dist/loader.d.ts.map +0 -1
- package/dist/loader.js +0 -62
- package/dist/loader.js.map +0 -1
- package/dist/lowering/context.d.ts +0 -96
- package/dist/lowering/context.d.ts.map +0 -1
- package/dist/lowering/context.js +0 -42
- package/dist/lowering/context.js.map +0 -1
- package/dist/lowering/errors.d.ts +0 -84
- package/dist/lowering/errors.d.ts.map +0 -1
- package/dist/lowering/errors.js +0 -81
- package/dist/lowering/errors.js.map +0 -1
- package/dist/lowering/index.d.ts +0 -20
- package/dist/lowering/index.d.ts.map +0 -1
- package/dist/lowering/index.js +0 -13
- package/dist/lowering/index.js.map +0 -1
- package/dist/lowering/lower-expr.d.ts +0 -76
- package/dist/lowering/lower-expr.d.ts.map +0 -1
- package/dist/lowering/lower-expr.js +0 -366
- package/dist/lowering/lower-expr.js.map +0 -1
- package/dist/lowering/lower-patch.d.ts +0 -231
- package/dist/lowering/lower-patch.d.ts.map +0 -1
- package/dist/lowering/lower-patch.js +0 -146
- package/dist/lowering/lower-patch.js.map +0 -1
- package/dist/lowering/lower-runtime-patch.d.ts +0 -100
- package/dist/lowering/lower-runtime-patch.d.ts.map +0 -1
- package/dist/lowering/lower-runtime-patch.js +0 -49
- package/dist/lowering/lower-runtime-patch.js.map +0 -1
- package/dist/mel-module.d.ts +0 -13
- package/dist/mel-module.d.ts.map +0 -1
- package/dist/mel-module.js +0 -33
- package/dist/mel-module.js.map +0 -1
- package/dist/parser/ast.d.ts +0 -344
- package/dist/parser/ast.d.ts.map +0 -1
- package/dist/parser/ast.js +0 -24
- package/dist/parser/ast.js.map +0 -1
- package/dist/parser/index.d.ts +0 -7
- package/dist/parser/index.d.ts.map +0 -1
- package/dist/parser/index.js +0 -7
- package/dist/parser/index.js.map +0 -1
- package/dist/parser/parser.d.ts +0 -92
- package/dist/parser/parser.d.ts.map +0 -1
- package/dist/parser/parser.js +0 -892
- package/dist/parser/parser.js.map +0 -1
- package/dist/parser/precedence.d.ts +0 -44
- package/dist/parser/precedence.d.ts.map +0 -1
- package/dist/parser/precedence.js +0 -69
- package/dist/parser/precedence.js.map +0 -1
- package/dist/renderer/expr-node.d.ts +0 -172
- package/dist/renderer/expr-node.d.ts.map +0 -1
- package/dist/renderer/expr-node.js +0 -218
- package/dist/renderer/expr-node.js.map +0 -1
- package/dist/renderer/fragment.d.ts +0 -84
- package/dist/renderer/fragment.d.ts.map +0 -1
- package/dist/renderer/fragment.js +0 -172
- package/dist/renderer/fragment.js.map +0 -1
- package/dist/renderer/index.d.ts +0 -23
- package/dist/renderer/index.d.ts.map +0 -1
- package/dist/renderer/index.js +0 -27
- package/dist/renderer/index.js.map +0 -1
- package/dist/renderer/patch-op.d.ts +0 -82
- package/dist/renderer/patch-op.d.ts.map +0 -1
- package/dist/renderer/patch-op.js +0 -204
- package/dist/renderer/patch-op.js.map +0 -1
- package/dist/renderer/type-expr.d.ts +0 -61
- package/dist/renderer/type-expr.d.ts.map +0 -1
- package/dist/renderer/type-expr.js +0 -131
- package/dist/renderer/type-expr.js.map +0 -1
- package/dist/vite.d.ts.map +0 -1
- package/loader.cjs +0 -22
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Location mapping helpers for compile-mel-patch synthetic wrapper diagnostics.
|
|
3
|
-
*/
|
|
4
|
-
export const SYNTHETIC_PATCH_PREFIX_LINES = 3;
|
|
5
|
-
export const SYNTHETIC_PATCH_PREFIX_COLUMNS = 6;
|
|
6
|
-
export function computeLineStartOffsets(lines) {
|
|
7
|
-
const offsets = [];
|
|
8
|
-
let offset = 0;
|
|
9
|
-
for (const line of lines) {
|
|
10
|
-
offsets.push(offset);
|
|
11
|
-
offset += line.length + 1;
|
|
12
|
-
}
|
|
13
|
-
return offsets;
|
|
14
|
-
}
|
|
15
|
-
export function makePatchLocationMapper(patchLines, patchLineStarts) {
|
|
16
|
-
return (location) => remapLocationToPatchSource(location, patchLines, patchLineStarts);
|
|
17
|
-
}
|
|
18
|
-
export function remapDiagnosticsToPatchSource(diagnostics, patchLines, patchLineStarts) {
|
|
19
|
-
return diagnostics.map((diagnostic) => remapDiagnosticToPatchSource(diagnostic, patchLines, patchLineStarts));
|
|
20
|
-
}
|
|
21
|
-
function remapDiagnosticToPatchSource(diagnostic, patchLines, patchLineStarts) {
|
|
22
|
-
return {
|
|
23
|
-
...diagnostic,
|
|
24
|
-
location: remapLocationToPatchSource(diagnostic.location, patchLines, patchLineStarts),
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
function remapLocationToPatchSource(location, patchLines, patchLineStarts) {
|
|
28
|
-
return {
|
|
29
|
-
...location,
|
|
30
|
-
start: remapPositionToPatchSource(location.start, patchLines, patchLineStarts),
|
|
31
|
-
end: remapPositionToPatchSource(location.end, patchLines, patchLineStarts),
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
function remapPositionToPatchSource(position, patchLines, patchLineStarts) {
|
|
35
|
-
const patchLine = position.line - SYNTHETIC_PATCH_PREFIX_LINES;
|
|
36
|
-
const patchLineCount = patchLines.length;
|
|
37
|
-
const clampedPatchLine = Math.min(Math.max(patchLine, 1), patchLineCount);
|
|
38
|
-
const sourceLineStart = patchLineStarts[clampedPatchLine - 1] ?? 0;
|
|
39
|
-
const sourceLineText = patchLines[clampedPatchLine - 1] ?? "";
|
|
40
|
-
const maxSourceColumn = Math.max(sourceLineText.length + 1, 1);
|
|
41
|
-
const sourceColumn = Math.min(Math.max(position.column - SYNTHETIC_PATCH_PREFIX_COLUMNS, 1), maxSourceColumn);
|
|
42
|
-
return {
|
|
43
|
-
line: clampedPatchLine,
|
|
44
|
-
column: sourceColumn,
|
|
45
|
-
offset: Math.max(sourceLineStart + sourceColumn - 1, 0),
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=compile-mel-patch-location.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compile-mel-patch-location.js","sourceRoot":"","sources":["../../src/api/compile-mel-patch-location.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,MAAM,UAAU,uBAAuB,CAAC,KAAe;IACrD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,UAAoB,EACpB,eAAyB;IAEzB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,0BAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;AACzF,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,WAAyB,EACzB,UAAoB,EACpB,eAAyB;IAEzB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,4BAA4B,CACjE,UAAU,EACV,UAAU,EACV,eAAe,CAChB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,4BAA4B,CACnC,UAAsB,EACtB,UAAoB,EACpB,eAAyB;IAEzB,OAAO;QACL,GAAG,UAAU;QACb,QAAQ,EAAE,0BAA0B,CAClC,UAAU,CAAC,QAAQ,EACnB,UAAU,EACV,eAAe,CAChB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,QAAgC,EAChC,UAAoB,EACpB,eAAyB;IAEzB,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,0BAA0B,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,CAAC;QAC9E,GAAG,EAAE,0BAA0B,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,CAAC;KAC3E,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,QAAyC,EACzC,UAAoB,EACpB,eAAyB;IAEzB,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;IACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAE1E,MAAM,eAAe,GAAG,eAAe,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,UAAU,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,8BAA8B,EAAE,CAAC,CAAC,EAC7D,eAAe,CAChB,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC;KACxD,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { CompileMelPatchOptions, CompileMelPatchResult } from "./compile-mel.js";
|
|
2
|
-
/**
|
|
3
|
-
* Compile MEL patch text into RuntimeConditionalPatchOps.
|
|
4
|
-
*/
|
|
5
|
-
export declare function compileMelPatchText(melText: string, options: CompileMelPatchOptions): CompileMelPatchResult;
|
|
6
|
-
//# sourceMappingURL=compile-mel-patch.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compile-mel-patch.d.ts","sourceRoot":"","sources":["../../src/api/compile-mel-patch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAgB,MAAM,kBAAkB,CAAC;AA8BpG;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAiPvB"}
|
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
import { tokenize } from "../lexer/index.js";
|
|
2
|
-
import { parse } from "../parser/index.js";
|
|
3
|
-
import { lowerRuntimePatch } from "../lowering/lower-runtime-patch.js";
|
|
4
|
-
import { LoweringError } from "../lowering/errors.js";
|
|
5
|
-
import { compilePatchStmtToMelRuntime, PatchStatementCollector, } from "./compile-mel-patch-collector.js";
|
|
6
|
-
import { isSyntheticPatchCondition, toMelExpr } from "./compile-mel-patch-expr.js";
|
|
7
|
-
import { SYNTHETIC_PATCH_PREFIX_LINES, computeLineStartOffsets, makePatchLocationMapper, remapDiagnosticsToPatchSource, } from "./compile-mel-patch-location.js";
|
|
8
|
-
/**
|
|
9
|
-
* Synthetic action name for compile-time wrap.
|
|
10
|
-
*/
|
|
11
|
-
const SYNTHETIC_ACTION = "__compileMelPatch";
|
|
12
|
-
const SYNTHETIC_DOMAIN = "__patchDomain";
|
|
13
|
-
const SYNTHETIC_PATCH_INDENT = " ";
|
|
14
|
-
/**
|
|
15
|
-
* Compile MEL patch text into RuntimeConditionalPatchOps.
|
|
16
|
-
*/
|
|
17
|
-
export function compileMelPatchText(melText, options) {
|
|
18
|
-
const trace = [];
|
|
19
|
-
const warnings = [];
|
|
20
|
-
const errors = [];
|
|
21
|
-
const patchLines = melText.split("\n");
|
|
22
|
-
const patchLineStarts = computeLineStartOffsets(patchLines);
|
|
23
|
-
const mapLocation = makePatchLocationMapper(patchLines, patchLineStarts);
|
|
24
|
-
const syntheticMel = buildSyntheticPatchProgram(melText, SYNTHETIC_ACTION);
|
|
25
|
-
// Phase 1: Lex
|
|
26
|
-
const lexStart = performance.now();
|
|
27
|
-
let tokens;
|
|
28
|
-
try {
|
|
29
|
-
const lexResult = tokenize(syntheticMel);
|
|
30
|
-
tokens = lexResult.tokens;
|
|
31
|
-
const lexErrors = remapDiagnosticsToPatchSource(lexResult.diagnostics.filter(d => d.severity === "error"), patchLines, patchLineStarts);
|
|
32
|
-
if (lexErrors.length > 0) {
|
|
33
|
-
errors.push(...lexErrors);
|
|
34
|
-
trace.push({
|
|
35
|
-
phase: "lex",
|
|
36
|
-
durationMs: performance.now() - lexStart,
|
|
37
|
-
details: { tokenCount: tokens.length },
|
|
38
|
-
});
|
|
39
|
-
return { ops: [], trace, warnings, errors };
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
errors.push({
|
|
44
|
-
severity: "error",
|
|
45
|
-
code: "E_LEX",
|
|
46
|
-
message: error.message,
|
|
47
|
-
location: {
|
|
48
|
-
start: { line: 1, column: 1, offset: 0 },
|
|
49
|
-
end: { line: 1, column: 1, offset: 0 },
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
trace.push({ phase: "lex", durationMs: performance.now() - lexStart });
|
|
53
|
-
return { ops: [], trace, warnings, errors };
|
|
54
|
-
}
|
|
55
|
-
trace.push({
|
|
56
|
-
phase: "lex",
|
|
57
|
-
durationMs: performance.now() - lexStart,
|
|
58
|
-
details: { tokenCount: tokens.length },
|
|
59
|
-
});
|
|
60
|
-
// Phase 2: Parse
|
|
61
|
-
const parseStart = performance.now();
|
|
62
|
-
let program;
|
|
63
|
-
try {
|
|
64
|
-
const parseResult = parse(tokens);
|
|
65
|
-
const parsedDiagnostics = remapDiagnosticsToPatchSource(parseResult.diagnostics, patchLines, patchLineStarts);
|
|
66
|
-
const parseErrors = parsedDiagnostics.filter(d => d.severity === "error");
|
|
67
|
-
const parseWarnings = parsedDiagnostics.filter(d => d.severity !== "error");
|
|
68
|
-
if (parseErrors.length > 0) {
|
|
69
|
-
errors.push(...parseErrors);
|
|
70
|
-
warnings.push(...parseWarnings);
|
|
71
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
72
|
-
return { ops: [], trace, warnings, errors };
|
|
73
|
-
}
|
|
74
|
-
if (!parseResult.program) {
|
|
75
|
-
errors.push({
|
|
76
|
-
severity: "error",
|
|
77
|
-
code: "E_PARSE",
|
|
78
|
-
message: "Failed to parse MEL patch program",
|
|
79
|
-
location: {
|
|
80
|
-
start: { line: 1, column: 1, offset: 0 },
|
|
81
|
-
end: { line: 1, column: 1, offset: 0 },
|
|
82
|
-
},
|
|
83
|
-
});
|
|
84
|
-
warnings.push(...parseWarnings);
|
|
85
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
86
|
-
return { ops: [], trace, warnings, errors };
|
|
87
|
-
}
|
|
88
|
-
program = parseResult.program;
|
|
89
|
-
warnings.push(...parseWarnings);
|
|
90
|
-
}
|
|
91
|
-
catch (error) {
|
|
92
|
-
errors.push({
|
|
93
|
-
severity: "error",
|
|
94
|
-
code: "E_PARSE",
|
|
95
|
-
message: error.message,
|
|
96
|
-
location: {
|
|
97
|
-
start: { line: 1, column: 1, offset: 0 },
|
|
98
|
-
end: { line: 1, column: 1, offset: 0 },
|
|
99
|
-
},
|
|
100
|
-
});
|
|
101
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
102
|
-
return { ops: [], trace, warnings, errors };
|
|
103
|
-
}
|
|
104
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
105
|
-
// Phase 3: Analyze
|
|
106
|
-
const analyzeStart = performance.now();
|
|
107
|
-
const collectContext = {
|
|
108
|
-
actionName: options.actionName,
|
|
109
|
-
onceCounter: 0,
|
|
110
|
-
onceIntentCounter: 0,
|
|
111
|
-
whenCounter: 0,
|
|
112
|
-
};
|
|
113
|
-
const action = program.domain.members.find((member) => member.kind === "action" && member.name === SYNTHETIC_ACTION);
|
|
114
|
-
if (!action) {
|
|
115
|
-
errors.push({
|
|
116
|
-
severity: "error",
|
|
117
|
-
code: "E_ANALYZE",
|
|
118
|
-
message: `Synthetic patch action '${SYNTHETIC_ACTION}' not found during parsing`,
|
|
119
|
-
location: {
|
|
120
|
-
start: { line: 1, column: 1, offset: 0 },
|
|
121
|
-
end: { line: 1, column: 1, offset: 0 },
|
|
122
|
-
},
|
|
123
|
-
});
|
|
124
|
-
trace.push({ phase: "analyze", durationMs: performance.now() - analyzeStart });
|
|
125
|
-
return { ops: [], trace, warnings, errors };
|
|
126
|
-
}
|
|
127
|
-
const expectedActionEndLine = patchLines.length + SYNTHETIC_PATCH_PREFIX_LINES + 2;
|
|
128
|
-
if (action.location.end.line !== expectedActionEndLine) {
|
|
129
|
-
errors.push({
|
|
130
|
-
severity: "error",
|
|
131
|
-
code: "E_PATCH_WRAPPER",
|
|
132
|
-
message: `Malformed synthetic patch wrapper for action '${SYNTHETIC_ACTION}'.`,
|
|
133
|
-
location: mapLocation(action.location),
|
|
134
|
-
});
|
|
135
|
-
trace.push({ phase: "analyze", durationMs: performance.now() - analyzeStart });
|
|
136
|
-
return { ops: [], trace, warnings, errors };
|
|
137
|
-
}
|
|
138
|
-
const [patchRoot] = action.body;
|
|
139
|
-
if (!patchRoot ||
|
|
140
|
-
patchRoot.kind !== "when" ||
|
|
141
|
-
!isSyntheticPatchCondition(patchRoot.condition) ||
|
|
142
|
-
action.body.length !== 1) {
|
|
143
|
-
errors.push({
|
|
144
|
-
severity: "error",
|
|
145
|
-
code: "E_PATCH_WRAPPER",
|
|
146
|
-
message: `Malformed synthetic patch wrapper for action '${SYNTHETIC_ACTION}'.`,
|
|
147
|
-
location: mapLocation(action.location),
|
|
148
|
-
});
|
|
149
|
-
trace.push({ phase: "analyze", durationMs: performance.now() - analyzeStart });
|
|
150
|
-
return { ops: [], trace, warnings, errors };
|
|
151
|
-
}
|
|
152
|
-
const collector = new PatchStatementCollector({
|
|
153
|
-
mapLocation,
|
|
154
|
-
toMelExpr,
|
|
155
|
-
});
|
|
156
|
-
const patchStatements = collector.collect(patchRoot.body, errors, collectContext, undefined);
|
|
157
|
-
if (errors.length === 0 && melText.trim() !== "" && patchStatements.length === 0) {
|
|
158
|
-
errors.push({
|
|
159
|
-
severity: "error",
|
|
160
|
-
code: "E_PATCH_WRAPPER",
|
|
161
|
-
message: "Patch wrapper parsing produced no patch statements. The patch source may be malformed.",
|
|
162
|
-
location: mapLocation(patchRoot.location),
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
trace.push({
|
|
166
|
-
phase: "analyze",
|
|
167
|
-
durationMs: performance.now() - analyzeStart,
|
|
168
|
-
details: { count: patchStatements.length },
|
|
169
|
-
});
|
|
170
|
-
if (errors.length > 0) {
|
|
171
|
-
return { ops: [], trace, warnings, errors };
|
|
172
|
-
}
|
|
173
|
-
// Phase 4: Lowering
|
|
174
|
-
const lowerStart = performance.now();
|
|
175
|
-
const loweringContext = {
|
|
176
|
-
mode: "action",
|
|
177
|
-
allowSysPaths: options.allowSysPaths ?? { prefixes: ["meta", "input"] },
|
|
178
|
-
fnTableVersion: options.fnTableVersion ?? "1.0",
|
|
179
|
-
actionName: options.actionName,
|
|
180
|
-
};
|
|
181
|
-
const loweredOps = [];
|
|
182
|
-
for (const patchStatement of patchStatements) {
|
|
183
|
-
try {
|
|
184
|
-
const melPatch = compilePatchStmtToMelRuntime(patchStatement);
|
|
185
|
-
loweredOps.push(lowerRuntimePatch(melPatch, loweringContext));
|
|
186
|
-
}
|
|
187
|
-
catch (error) {
|
|
188
|
-
if (error instanceof LoweringError) {
|
|
189
|
-
errors.push({
|
|
190
|
-
severity: "error",
|
|
191
|
-
code: error.code,
|
|
192
|
-
message: error.message,
|
|
193
|
-
location: mapLocation(patchStatement.patch.location),
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
else if (error instanceof Error) {
|
|
197
|
-
errors.push({
|
|
198
|
-
severity: "error",
|
|
199
|
-
code: "E_LOWER",
|
|
200
|
-
message: error.message,
|
|
201
|
-
location: mapLocation(patchStatement.patch.location),
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
else {
|
|
205
|
-
errors.push({
|
|
206
|
-
severity: "error",
|
|
207
|
-
code: "E_LOWER",
|
|
208
|
-
message: "Unknown lowering failure",
|
|
209
|
-
location: mapLocation(patchStatement.patch.location),
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
trace.push({
|
|
215
|
-
phase: "lower",
|
|
216
|
-
durationMs: performance.now() - lowerStart,
|
|
217
|
-
details: { count: loweredOps.length },
|
|
218
|
-
});
|
|
219
|
-
if (errors.length > 0) {
|
|
220
|
-
return { ops: [], trace, warnings, errors };
|
|
221
|
-
}
|
|
222
|
-
return {
|
|
223
|
-
ops: loweredOps,
|
|
224
|
-
trace,
|
|
225
|
-
warnings,
|
|
226
|
-
errors,
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
function buildSyntheticPatchProgram(melText, actionName) {
|
|
230
|
-
const indentedPatchText = melText
|
|
231
|
-
.split("\n")
|
|
232
|
-
.map((line) => `${SYNTHETIC_PATCH_INDENT}${line}`)
|
|
233
|
-
.join("\n");
|
|
234
|
-
return [
|
|
235
|
-
`domain ${SYNTHETIC_DOMAIN} {`,
|
|
236
|
-
` action ${actionName}() {`,
|
|
237
|
-
" when true {",
|
|
238
|
-
indentedPatchText,
|
|
239
|
-
" }",
|
|
240
|
-
" }",
|
|
241
|
-
"}",
|
|
242
|
-
].join("\n");
|
|
243
|
-
}
|
|
244
|
-
//# sourceMappingURL=compile-mel-patch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compile-mel-patch.js","sourceRoot":"","sources":["../../src/api/compile-mel-patch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MEL Text Ingest API
|
|
3
|
-
*
|
|
4
|
-
* Compiles MEL text to DomainSchema or RuntimeConditionalPatchOp[].
|
|
5
|
-
*
|
|
6
|
-
* @see SPEC v0.4.0 §19
|
|
7
|
-
*/
|
|
8
|
-
import type { Diagnostic } from "../diagnostics/types.js";
|
|
9
|
-
import type { DomainSchema } from "../generator/ir.js";
|
|
10
|
-
import type { RuntimeConditionalPatchOp } from "../lowering/lower-runtime-patch.js";
|
|
11
|
-
/**
|
|
12
|
-
* Trace entry for compilation steps.
|
|
13
|
-
*/
|
|
14
|
-
export interface CompileTrace {
|
|
15
|
-
phase: "lex" | "parse" | "analyze" | "generate" | "lower";
|
|
16
|
-
durationMs: number;
|
|
17
|
-
details?: Record<string, unknown>;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Domain compilation options.
|
|
21
|
-
*/
|
|
22
|
-
export interface CompileMelDomainOptions {
|
|
23
|
-
mode: "domain";
|
|
24
|
-
fnTableVersion?: string;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Domain compilation result.
|
|
28
|
-
*
|
|
29
|
-
* @see SPEC v0.4.0 §19.1
|
|
30
|
-
*/
|
|
31
|
-
export interface CompileMelDomainResult {
|
|
32
|
-
/**
|
|
33
|
-
* Compiled schema, or null if errors occurred.
|
|
34
|
-
*/
|
|
35
|
-
schema: DomainSchema | null;
|
|
36
|
-
/**
|
|
37
|
-
* Compilation trace.
|
|
38
|
-
*/
|
|
39
|
-
trace: CompileTrace[];
|
|
40
|
-
/**
|
|
41
|
-
* Warning diagnostics.
|
|
42
|
-
*/
|
|
43
|
-
warnings: Diagnostic[];
|
|
44
|
-
/**
|
|
45
|
-
* Error diagnostics.
|
|
46
|
-
*/
|
|
47
|
-
errors: Diagnostic[];
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Patch compilation options.
|
|
51
|
-
*/
|
|
52
|
-
export interface CompileMelPatchOptions {
|
|
53
|
-
mode: "patch";
|
|
54
|
-
/**
|
|
55
|
-
* Action name for context.
|
|
56
|
-
*/
|
|
57
|
-
actionName: string;
|
|
58
|
-
/**
|
|
59
|
-
* Allowed system path prefixes.
|
|
60
|
-
* Default: ["meta", "input"] (system is forbidden per §20.3).
|
|
61
|
-
*/
|
|
62
|
-
allowSysPaths?: {
|
|
63
|
-
prefixes: ("meta" | "input")[];
|
|
64
|
-
};
|
|
65
|
-
/**
|
|
66
|
-
* Function table version.
|
|
67
|
-
*/
|
|
68
|
-
fnTableVersion?: string;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Patch compilation result.
|
|
72
|
-
*
|
|
73
|
-
* @see SPEC v0.4.0 §19.2
|
|
74
|
-
*/
|
|
75
|
-
export interface CompileMelPatchResult {
|
|
76
|
-
/**
|
|
77
|
-
* Compiled patch operations.
|
|
78
|
-
* These still contain Core IR expressions that need evaluation.
|
|
79
|
-
*/
|
|
80
|
-
ops: RuntimeConditionalPatchOp[];
|
|
81
|
-
/**
|
|
82
|
-
* Compilation trace.
|
|
83
|
-
*/
|
|
84
|
-
trace: CompileTrace[];
|
|
85
|
-
/**
|
|
86
|
-
* Warning diagnostics.
|
|
87
|
-
*/
|
|
88
|
-
warnings: Diagnostic[];
|
|
89
|
-
/**
|
|
90
|
-
* Error diagnostics.
|
|
91
|
-
*/
|
|
92
|
-
errors: Diagnostic[];
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Compile MEL text to DomainSchema.
|
|
96
|
-
*
|
|
97
|
-
* Takes a complete MEL domain definition and produces a DomainSchema
|
|
98
|
-
* suitable for use with core.compute().
|
|
99
|
-
*
|
|
100
|
-
* @param melText - MEL domain source text
|
|
101
|
-
* @param options - Compilation options
|
|
102
|
-
* @returns Compilation result with schema or errors
|
|
103
|
-
*
|
|
104
|
-
* @see SPEC v0.4.0 §19.1
|
|
105
|
-
*/
|
|
106
|
-
export declare function compileMelDomain(melText: string, options?: CompileMelDomainOptions): CompileMelDomainResult;
|
|
107
|
-
/**
|
|
108
|
-
* Compile MEL patch text to RuntimeConditionalPatchOp[].
|
|
109
|
-
*
|
|
110
|
-
* Takes MEL patch statements (set, unset, merge) and produces
|
|
111
|
-
* RuntimeConditionalPatchOp[] with Core IR expressions.
|
|
112
|
-
*
|
|
113
|
-
* The returned ops still contain expressions that need to be evaluated
|
|
114
|
-
* by evaluateRuntimePatches() to get concrete values.
|
|
115
|
-
*
|
|
116
|
-
* Constraints:
|
|
117
|
-
* - §20.3: $system.* is forbidden in Translator path
|
|
118
|
-
*
|
|
119
|
-
* @param melText - MEL patch source text
|
|
120
|
-
* @param options - Compilation options
|
|
121
|
-
* @returns Compilation result with ops or errors
|
|
122
|
-
*
|
|
123
|
-
* @see SPEC v0.4.0 §19.2
|
|
124
|
-
*/
|
|
125
|
-
export declare function compileMelPatch(melText: string, options: CompileMelPatchOptions): CompileMelPatchResult;
|
|
126
|
-
//# sourceMappingURL=compile-mel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compile-mel.d.ts","sourceRoot":"","sources":["../../src/api/compile-mel.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AASpF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAE5B;;OAEG;IACH,KAAK,EAAE,YAAY,EAAE,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,UAAU,EAAE,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAA;KAAE,CAAC;IAEnD;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,GAAG,EAAE,yBAAyB,EAAE,CAAC;IAEjC;;OAEG;IACH,KAAK,EAAE,YAAY,EAAE,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,UAAU,EAAE,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,uBAAuB,GAChC,sBAAsB,CAqExB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAEvB"}
|
package/dist/api/compile-mel.js
DELETED
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MEL Text Ingest API
|
|
3
|
-
*
|
|
4
|
-
* Compiles MEL text to DomainSchema or RuntimeConditionalPatchOp[].
|
|
5
|
-
*
|
|
6
|
-
* @see SPEC v0.4.0 §19
|
|
7
|
-
*/
|
|
8
|
-
import { tokenize } from "../lexer/index.js";
|
|
9
|
-
import { parse } from "../parser/index.js";
|
|
10
|
-
import { generate } from "../generator/ir.js";
|
|
11
|
-
import { compileMelPatchText } from "./compile-mel-patch.js";
|
|
12
|
-
// ============ Main Functions ============
|
|
13
|
-
/**
|
|
14
|
-
* Compile MEL text to DomainSchema.
|
|
15
|
-
*
|
|
16
|
-
* Takes a complete MEL domain definition and produces a DomainSchema
|
|
17
|
-
* suitable for use with core.compute().
|
|
18
|
-
*
|
|
19
|
-
* @param melText - MEL domain source text
|
|
20
|
-
* @param options - Compilation options
|
|
21
|
-
* @returns Compilation result with schema or errors
|
|
22
|
-
*
|
|
23
|
-
* @see SPEC v0.4.0 §19.1
|
|
24
|
-
*/
|
|
25
|
-
export function compileMelDomain(melText, options) {
|
|
26
|
-
const trace = [];
|
|
27
|
-
const warnings = [];
|
|
28
|
-
const errors = [];
|
|
29
|
-
// Phase 1: Lex
|
|
30
|
-
const lexStart = performance.now();
|
|
31
|
-
let tokens;
|
|
32
|
-
try {
|
|
33
|
-
const lexResult = tokenize(melText);
|
|
34
|
-
tokens = lexResult.tokens;
|
|
35
|
-
}
|
|
36
|
-
catch (e) {
|
|
37
|
-
const error = e;
|
|
38
|
-
errors.push({
|
|
39
|
-
severity: "error",
|
|
40
|
-
code: "E_LEX",
|
|
41
|
-
message: error.message,
|
|
42
|
-
location: { start: { line: 1, column: 1, offset: 0 }, end: { line: 1, column: 1, offset: 0 } },
|
|
43
|
-
});
|
|
44
|
-
trace.push({ phase: "lex", durationMs: performance.now() - lexStart });
|
|
45
|
-
return { schema: null, trace, warnings, errors };
|
|
46
|
-
}
|
|
47
|
-
trace.push({ phase: "lex", durationMs: performance.now() - lexStart, details: { tokenCount: tokens.length } });
|
|
48
|
-
// Phase 2: Parse
|
|
49
|
-
const parseStart = performance.now();
|
|
50
|
-
let ast;
|
|
51
|
-
try {
|
|
52
|
-
const parseResult = parse(tokens);
|
|
53
|
-
const parseErrors = parseResult.diagnostics.filter(d => d.severity === "error");
|
|
54
|
-
if (parseErrors.length > 0) {
|
|
55
|
-
errors.push(...parseErrors);
|
|
56
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
57
|
-
return { schema: null, trace, warnings, errors };
|
|
58
|
-
}
|
|
59
|
-
ast = parseResult.program;
|
|
60
|
-
}
|
|
61
|
-
catch (e) {
|
|
62
|
-
const error = e;
|
|
63
|
-
errors.push({
|
|
64
|
-
severity: "error",
|
|
65
|
-
code: "E_PARSE",
|
|
66
|
-
message: error.message,
|
|
67
|
-
location: { start: { line: 1, column: 1, offset: 0 }, end: { line: 1, column: 1, offset: 0 } },
|
|
68
|
-
});
|
|
69
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
70
|
-
return { schema: null, trace, warnings, errors };
|
|
71
|
-
}
|
|
72
|
-
trace.push({ phase: "parse", durationMs: performance.now() - parseStart });
|
|
73
|
-
// Phase 3: Generate IR
|
|
74
|
-
const genStart = performance.now();
|
|
75
|
-
const genResult = generate(ast);
|
|
76
|
-
trace.push({ phase: "generate", durationMs: performance.now() - genStart });
|
|
77
|
-
// Separate warnings and errors from generation
|
|
78
|
-
for (const diag of genResult.diagnostics) {
|
|
79
|
-
if (diag.severity === "warning") {
|
|
80
|
-
warnings.push(diag);
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
errors.push(diag);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return {
|
|
87
|
-
schema: genResult.schema,
|
|
88
|
-
trace,
|
|
89
|
-
warnings,
|
|
90
|
-
errors,
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Compile MEL patch text to RuntimeConditionalPatchOp[].
|
|
95
|
-
*
|
|
96
|
-
* Takes MEL patch statements (set, unset, merge) and produces
|
|
97
|
-
* RuntimeConditionalPatchOp[] with Core IR expressions.
|
|
98
|
-
*
|
|
99
|
-
* The returned ops still contain expressions that need to be evaluated
|
|
100
|
-
* by evaluateRuntimePatches() to get concrete values.
|
|
101
|
-
*
|
|
102
|
-
* Constraints:
|
|
103
|
-
* - §20.3: $system.* is forbidden in Translator path
|
|
104
|
-
*
|
|
105
|
-
* @param melText - MEL patch source text
|
|
106
|
-
* @param options - Compilation options
|
|
107
|
-
* @returns Compilation result with ops or errors
|
|
108
|
-
*
|
|
109
|
-
* @see SPEC v0.4.0 §19.2
|
|
110
|
-
*/
|
|
111
|
-
export function compileMelPatch(melText, options) {
|
|
112
|
-
return compileMelPatchText(melText, options);
|
|
113
|
-
}
|
|
114
|
-
//# sourceMappingURL=compile-mel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compile-mel.js","sourceRoot":"","sources":["../../src/api/compile-mel.ts"],"names":[],"mappings":"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"}
|
package/dist/api/index.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compile API
|
|
3
|
-
*
|
|
4
|
-
* MEL text ingest functions.
|
|
5
|
-
*
|
|
6
|
-
* @see SPEC v0.4.0 §19
|
|
7
|
-
*/
|
|
8
|
-
export type { CompileTrace, CompileMelDomainOptions, CompileMelDomainResult, CompileMelPatchOptions, CompileMelPatchResult, } from "./compile-mel.js";
|
|
9
|
-
export { compileMelDomain, compileMelPatch } from "./compile-mel.js";
|
|
10
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/api/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,YAAY,EACZ,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/api/index.js
DELETED
package/dist/api/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MEL Compiler Diagnostic Codes
|
|
3
|
-
* Based on MEL SPEC v0.3.3 Appendix A
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Diagnostic code information
|
|
7
|
-
*/
|
|
8
|
-
export interface DiagnosticCode {
|
|
9
|
-
code: string;
|
|
10
|
-
message: string;
|
|
11
|
-
category: "syntax" | "semantic" | "type" | "system";
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* All diagnostic codes
|
|
15
|
-
*/
|
|
16
|
-
export declare const DIAGNOSTIC_CODES: Record<string, DiagnosticCode>;
|
|
17
|
-
/**
|
|
18
|
-
* Get diagnostic code information
|
|
19
|
-
*/
|
|
20
|
-
export declare function getDiagnosticInfo(code: string): DiagnosticCode | undefined;
|
|
21
|
-
/**
|
|
22
|
-
* Format a diagnostic code for display
|
|
23
|
-
*/
|
|
24
|
-
export declare function formatDiagnosticCode(code: string): string;
|
|
25
|
-
//# sourceMappingURL=codes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/diagnostics/codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;CACrD;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAwI3D,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMzD"}
|