@openrewrite/rewrite 8.67.0-20251107-194023 → 8.67.0-20251109-075003
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/dist/javascript/templating/engine.d.ts +3 -2
- package/dist/javascript/templating/engine.d.ts.map +1 -1
- package/dist/javascript/templating/engine.js +21 -9
- package/dist/javascript/templating/engine.js.map +1 -1
- package/dist/javascript/templating/pattern.d.ts +13 -7
- package/dist/javascript/templating/pattern.d.ts.map +1 -1
- package/dist/javascript/templating/pattern.js +31 -7
- package/dist/javascript/templating/pattern.js.map +1 -1
- package/dist/version.txt +1 -1
- package/package.json +1 -1
- package/src/javascript/templating/engine.ts +26 -10
- package/src/javascript/templating/pattern.ts +40 -12
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Cursor } from '../..';
|
|
2
2
|
import { J } from '../../java';
|
|
3
3
|
import { Any, Capture, JS } from '..';
|
|
4
|
+
import { RawCode } from './capture';
|
|
4
5
|
import { JavaCoordinates } from './template';
|
|
5
6
|
import ts from "typescript";
|
|
6
7
|
import { Parameter } from "./types";
|
|
@@ -74,12 +75,12 @@ export declare class TemplateEngine {
|
|
|
74
75
|
* functionality on top of the shared template tree generation.
|
|
75
76
|
*
|
|
76
77
|
* @param templateParts The string parts of the template
|
|
77
|
-
* @param captures The captures between the string parts
|
|
78
|
+
* @param captures The captures between the string parts (can include RawCode)
|
|
78
79
|
* @param contextStatements Context declarations (imports, types, etc.) to prepend for type attribution
|
|
79
80
|
* @param dependencies NPM dependencies for type attribution
|
|
80
81
|
* @returns A Promise resolving to the extracted pattern AST with capture markers
|
|
81
82
|
*/
|
|
82
|
-
static getPatternTree(templateParts: TemplateStringsArray, captures: (Capture | Any)[], contextStatements?: string[], dependencies?: Record<string, string>): Promise<J>;
|
|
83
|
+
static getPatternTree(templateParts: TemplateStringsArray, captures: (Capture | Any | RawCode)[], contextStatements?: string[], dependencies?: Record<string, string>): Promise<J>;
|
|
83
84
|
}
|
|
84
85
|
/**
|
|
85
86
|
* Helper class for applying a template to an AST.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/engine.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAA8C,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAa,CAAC,EAAkB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAC,GAAG,EAAE,OAAO,EAAuC,EAAE,EAAC,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/engine.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAA8C,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAa,CAAC,EAAkB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAC,GAAG,EAAE,OAAO,EAAuC,EAAE,EAAC,MAAM,IAAI,CAAC;AAGzE,OAAO,EAAuF,OAAO,EAAC,MAAM,WAAW,CAAC;AAExH,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAI3C,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AAgDlC;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAEnF;AA0FD;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;GAGG;AACH,qBAAa,cAAc;IACvB;;;;;;;;;OASG;WACU,eAAe,CACxB,aAAa,EAAE,oBAAoB,EACnC,UAAU,EAAE,SAAS,EAAE,EACvB,iBAAiB,GAAE,MAAM,EAAO,EAChC,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAC1C,OAAO,CAAC,CAAC,CAAC;IAkCb;;;;;;;;;;;OAWG;WACU,oBAAoB,CAC7B,GAAG,EAAE,EAAE,CAAC,eAAe,EACvB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,eAAe,EAC5B,MAAM,GAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAa,EAC/C,WAAW,GAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAa,GACzF,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAgBzB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA8CnC;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA2BlC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAyC3B;;;;;;;;;;OAUG;WACU,cAAc,CACvB,aAAa,EAAE,oBAAoB,EACnC,QAAQ,EAAE,CAAC,OAAO,GAAG,GAAG,GAAG,OAAO,CAAC,EAAE,EACrC,iBAAiB,GAAE,MAAM,EAAO,EAChC,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAC1C,OAAO,CAAC,CAAC,CAAC;CA+EhB;AAkGD;;GAEG;AACH,qBAAa,eAAe;IAEpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAFH,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,eAAe,EAC5B,GAAG,EAAE,CAAC;IAI3B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAcrC;;;;OAIG;YACW,aAAa;YAYb,MAAM;IAiBpB,OAAO,CAAC,QAAQ;CAiDnB"}
|
|
@@ -355,16 +355,20 @@ class TemplateEngine {
|
|
|
355
355
|
* functionality on top of the shared template tree generation.
|
|
356
356
|
*
|
|
357
357
|
* @param templateParts The string parts of the template
|
|
358
|
-
* @param captures The captures between the string parts
|
|
358
|
+
* @param captures The captures between the string parts (can include RawCode)
|
|
359
359
|
* @param contextStatements Context declarations (imports, types, etc.) to prepend for type attribution
|
|
360
360
|
* @param dependencies NPM dependencies for type attribution
|
|
361
361
|
* @returns A Promise resolving to the extracted pattern AST with capture markers
|
|
362
362
|
*/
|
|
363
363
|
static getPatternTree(templateParts_1, captures_1) {
|
|
364
364
|
return __awaiter(this, arguments, void 0, function* (templateParts, captures, contextStatements = [], dependencies = {}) {
|
|
365
|
-
// Generate type preamble for captures with types
|
|
365
|
+
// Generate type preamble for captures with types (skip RawCode)
|
|
366
366
|
const preamble = [];
|
|
367
367
|
for (const capture of captures) {
|
|
368
|
+
// Skip raw code - it's not a capture
|
|
369
|
+
if (capture instanceof capture_1.RawCode || (capture && typeof capture === 'object' && capture[capture_1.RAW_CODE_SYMBOL])) {
|
|
370
|
+
continue;
|
|
371
|
+
}
|
|
368
372
|
const captureName = capture[capture_1.CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
369
373
|
const captureType = capture[capture_1.CAPTURE_TYPE_SYMBOL];
|
|
370
374
|
if (captureType) {
|
|
@@ -380,15 +384,21 @@ class TemplateEngine {
|
|
|
380
384
|
preamble.push(`let ${placeholder};`);
|
|
381
385
|
}
|
|
382
386
|
}
|
|
383
|
-
// Build the template string with placeholders for captures
|
|
387
|
+
// Build the template string with placeholders for captures and raw code
|
|
384
388
|
let result = '';
|
|
385
389
|
for (let i = 0; i < templateParts.length; i++) {
|
|
386
390
|
result += templateParts[i];
|
|
387
391
|
if (i < captures.length) {
|
|
388
392
|
const capture = captures[i];
|
|
389
|
-
//
|
|
390
|
-
|
|
391
|
-
|
|
393
|
+
// Check if this is a RawCode instance - splice directly
|
|
394
|
+
if (capture instanceof capture_1.RawCode || (capture && typeof capture === 'object' && capture[capture_1.RAW_CODE_SYMBOL])) {
|
|
395
|
+
result += capture.code;
|
|
396
|
+
}
|
|
397
|
+
else {
|
|
398
|
+
// Use symbol to access capture name without triggering Proxy
|
|
399
|
+
const captureName = capture[capture_1.CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
400
|
+
result += utils_1.PlaceholderUtils.createCapture(captureName, undefined);
|
|
401
|
+
}
|
|
392
402
|
}
|
|
393
403
|
}
|
|
394
404
|
// Always wrap in function body - let the parser decide what it is,
|
|
@@ -398,8 +408,10 @@ class TemplateEngine {
|
|
|
398
408
|
const contextWithPreamble = preamble.length > 0
|
|
399
409
|
? [...contextStatements, ...preamble]
|
|
400
410
|
: contextStatements;
|
|
411
|
+
// Filter out RawCode from captures for cache and marker attachment
|
|
412
|
+
const actualCaptures = captures.filter(c => !(c instanceof capture_1.RawCode || (c && typeof c === 'object' && c[capture_1.RAW_CODE_SYMBOL])));
|
|
401
413
|
// Use cache to get or parse the compilation unit
|
|
402
|
-
const cu = yield templateCache.getOrParse(templateString,
|
|
414
|
+
const cu = yield templateCache.getOrParse(templateString, actualCaptures, contextWithPreamble, dependencies);
|
|
403
415
|
// Check if there are any statements
|
|
404
416
|
if (!cu.statements || cu.statements.length === 0) {
|
|
405
417
|
throw new Error(`Failed to parse pattern code (no statements):\n${templateString}`);
|
|
@@ -408,8 +420,8 @@ class TemplateEngine {
|
|
|
408
420
|
const lastStatement = cu.statements[cu.statements.length - 1].element;
|
|
409
421
|
// Extract from wrapper using shared utility
|
|
410
422
|
const extracted = utils_1.PlaceholderUtils.extractFromWrapper(lastStatement, 'Pattern');
|
|
411
|
-
// Attach CaptureMarkers to capture identifiers
|
|
412
|
-
const visitor = new MarkerAttachmentVisitor(
|
|
423
|
+
// Attach CaptureMarkers to capture identifiers (only for actual captures, not raw code)
|
|
424
|
+
const visitor = new MarkerAttachmentVisitor(actualCaptures);
|
|
413
425
|
return (yield visitor.visit(extracted, undefined));
|
|
414
426
|
});
|
|
415
427
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/javascript/templating/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/javascript/templating/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Cursor } from '../..';
|
|
2
2
|
import { J } from '../../java';
|
|
3
3
|
import { Any, Capture, PatternOptions } from './types';
|
|
4
|
+
import { RawCode } from './capture';
|
|
4
5
|
import { CaptureStorageValue, WRAPPERS_MAP_SYMBOL } from './utils';
|
|
5
6
|
/**
|
|
6
7
|
* Builder for creating patterns programmatically.
|
|
@@ -39,10 +40,10 @@ export declare class PatternBuilder {
|
|
|
39
40
|
/**
|
|
40
41
|
* Adds a capture to the pattern.
|
|
41
42
|
*
|
|
42
|
-
* @param value The capture object (Capture or
|
|
43
|
+
* @param value The capture object (Capture, Any, or RawCode) or string name
|
|
43
44
|
* @returns This builder for chaining
|
|
44
45
|
*/
|
|
45
|
-
capture(value: Capture | Any<any> | string): this;
|
|
46
|
+
capture(value: Capture | Any<any> | RawCode | string): this;
|
|
46
47
|
/**
|
|
47
48
|
* Builds the pattern from accumulated parts and captures.
|
|
48
49
|
*
|
|
@@ -55,7 +56,7 @@ export declare class PatternBuilder {
|
|
|
55
56
|
*/
|
|
56
57
|
export declare class Pattern {
|
|
57
58
|
readonly templateParts: TemplateStringsArray;
|
|
58
|
-
readonly captures: (Capture | Any<any>)[];
|
|
59
|
+
readonly captures: (Capture | Any<any> | RawCode)[];
|
|
59
60
|
private _options;
|
|
60
61
|
private _cachedAstPattern?;
|
|
61
62
|
/**
|
|
@@ -82,9 +83,9 @@ export declare class Pattern {
|
|
|
82
83
|
* Creates a new pattern from template parts and captures.
|
|
83
84
|
*
|
|
84
85
|
* @param templateParts The string parts of the template
|
|
85
|
-
* @param captures The captures between the string parts (can be Capture or
|
|
86
|
+
* @param captures The captures between the string parts (can be Capture, Any, or RawCode)
|
|
86
87
|
*/
|
|
87
|
-
constructor(templateParts: TemplateStringsArray, captures: (Capture | Any<any>)[]);
|
|
88
|
+
constructor(templateParts: TemplateStringsArray, captures: (Capture | Any<any> | RawCode)[]);
|
|
88
89
|
/**
|
|
89
90
|
* Configures this pattern with additional options.
|
|
90
91
|
*
|
|
@@ -170,7 +171,7 @@ export declare class MatchResult {
|
|
|
170
171
|
* Tagged template function for creating patterns.
|
|
171
172
|
*
|
|
172
173
|
* @param strings The string parts of the template
|
|
173
|
-
* @param captures The captures between the string parts (Capture, Any, or string names)
|
|
174
|
+
* @param captures The captures between the string parts (Capture, Any, RawCode, or string names)
|
|
174
175
|
* @returns A Pattern object
|
|
175
176
|
*
|
|
176
177
|
* @example
|
|
@@ -181,6 +182,11 @@ export declare class MatchResult {
|
|
|
181
182
|
* @example
|
|
182
183
|
* // Using any() for non-capturing matches
|
|
183
184
|
* const pat = pattern`foo(${any()})`;
|
|
185
|
+
*
|
|
186
|
+
* @example
|
|
187
|
+
* // Using raw() for dynamic pattern construction
|
|
188
|
+
* const operator = '===';
|
|
189
|
+
* const pat = pattern`x ${raw(operator)} y`;
|
|
184
190
|
*/
|
|
185
|
-
export declare function pattern(strings: TemplateStringsArray, ...captures: (Capture | Any<any> | string)[]): Pattern;
|
|
191
|
+
export declare function pattern(strings: TemplateStringsArray, ...captures: (Capture | Any<any> | RawCode | string)[]): Pattern;
|
|
186
192
|
//# sourceMappingURL=pattern.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/pattern.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAC,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAC,CAAC,EAAC,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAC,GAAG,EAAE,OAAO,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/pattern.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAC,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAC,CAAC,EAAC,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAC,GAAG,EAAE,OAAO,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AACrD,OAAO,EAA8E,OAAO,EAAC,MAAM,WAAW,CAAC;AAE/G,OAAO,EAAgB,mBAAmB,EAAoC,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAIlH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,QAAQ,CAAwC;IAExD;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAcvB;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI;IAa3D;;;;OAIG;IACH,KAAK,IAAI,OAAO;CAiBnB;AAED;;GAEG;AACH,qBAAa,OAAO;aAqCI,aAAa,EAAE,oBAAoB;aACnC,QAAQ,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,EAAE;IArC9D,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,iBAAiB,CAAC,CAAI;IAE9B;;;OAGG;IACH,IAAI,OAAO,IAAI,QAAQ,CAAC,cAAc,CAAC,CAEtC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,OAAO,IAAI,cAAc;IAIhC;;;;;OAKG;gBAEiB,aAAa,EAAE,oBAAoB,EACnC,QAAQ,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,EAAE;IAI9D;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAO3C;;;;;;;;OAQG;IACG,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC;IA4CjC;;;;;;;;OAQG;IACG,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;CAUzE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,WAAW;IAEhB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,GAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAa;IAK1E,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS;IAE9C,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS;IAE1C,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAYnC;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAkBvB;;;;OAIG;IACH,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;CAa9E;AAkMD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,QAAQ,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAoBtH"}
|
|
@@ -83,7 +83,7 @@ class PatternBuilder {
|
|
|
83
83
|
/**
|
|
84
84
|
* Adds a capture to the pattern.
|
|
85
85
|
*
|
|
86
|
-
* @param value The capture object (Capture or
|
|
86
|
+
* @param value The capture object (Capture, Any, or RawCode) or string name
|
|
87
87
|
* @returns This builder for chaining
|
|
88
88
|
*/
|
|
89
89
|
capture(value) {
|
|
@@ -91,7 +91,7 @@ class PatternBuilder {
|
|
|
91
91
|
if (this.parts.length === 0) {
|
|
92
92
|
this.parts.push('');
|
|
93
93
|
}
|
|
94
|
-
// Convert string to Capture if needed
|
|
94
|
+
// Convert string to Capture if needed, or use value as-is for RawCode
|
|
95
95
|
const captureObj = typeof value === 'string' ? new capture_1.CaptureImpl(value) : value;
|
|
96
96
|
this.captures.push(captureObj);
|
|
97
97
|
// Add an empty string for the next part
|
|
@@ -152,7 +152,7 @@ class Pattern {
|
|
|
152
152
|
* Creates a new pattern from template parts and captures.
|
|
153
153
|
*
|
|
154
154
|
* @param templateParts The string parts of the template
|
|
155
|
-
* @param captures The captures between the string parts (can be Capture or
|
|
155
|
+
* @param captures The captures between the string parts (can be Capture, Any, or RawCode)
|
|
156
156
|
*/
|
|
157
157
|
constructor(templateParts, captures) {
|
|
158
158
|
this.templateParts = templateParts;
|
|
@@ -194,8 +194,15 @@ class Pattern {
|
|
|
194
194
|
return this._cachedAstPattern;
|
|
195
195
|
}
|
|
196
196
|
// Generate cache key for global lookup
|
|
197
|
+
// Include raw code values in the key since they affect the generated AST
|
|
197
198
|
const contextStatements = this._options.context || this._options.imports || [];
|
|
198
|
-
const
|
|
199
|
+
const capturesKey = this.captures.map(c => {
|
|
200
|
+
if (c instanceof capture_1.RawCode || (c && typeof c === 'object' && c[capture_1.RAW_CODE_SYMBOL])) {
|
|
201
|
+
return `raw:${c.code}`;
|
|
202
|
+
}
|
|
203
|
+
return c.getName();
|
|
204
|
+
}).join(',');
|
|
205
|
+
const cacheKey = (0, utils_1.generateCacheKey)(this.templateParts, capturesKey, contextStatements, this._options.dependencies || {});
|
|
199
206
|
// Level 2: Global cache (fast path - shared with Template)
|
|
200
207
|
const cached = utils_1.globalAstCache.get(cacheKey);
|
|
201
208
|
if (cached) {
|
|
@@ -445,7 +452,9 @@ class Matcher {
|
|
|
445
452
|
}
|
|
446
453
|
// Find the original capture object to get capturing flag
|
|
447
454
|
// Note: Constraints are now evaluated in PatternMatchingComparator where cursor is correctly positioned
|
|
448
|
-
|
|
455
|
+
// Filter out RawCode since it doesn't have getName()
|
|
456
|
+
const captureObj = this.pattern.captures.find(c => !(c instanceof capture_1.RawCode || (c && typeof c === 'object' && c[capture_1.RAW_CODE_SYMBOL])) &&
|
|
457
|
+
c.getName() === captureName);
|
|
449
458
|
// Only store the binding if this is a capturing placeholder
|
|
450
459
|
const capturing = (_a = captureObj === null || captureObj === void 0 ? void 0 : captureObj[capture_1.CAPTURE_CAPTURING_SYMBOL]) !== null && _a !== void 0 ? _a : true;
|
|
451
460
|
if (capturing) {
|
|
@@ -470,7 +479,9 @@ class Matcher {
|
|
|
470
479
|
}
|
|
471
480
|
// Find the original capture object to get capturing flag
|
|
472
481
|
// Note: Constraints are now evaluated in PatternMatchingComparator where cursor is correctly positioned
|
|
473
|
-
|
|
482
|
+
// Filter out RawCode since it doesn't have getName()
|
|
483
|
+
const captureObj = this.pattern.captures.find(c => !(c instanceof capture_1.RawCode || (c && typeof c === 'object' && c[capture_1.RAW_CODE_SYMBOL])) &&
|
|
484
|
+
c.getName() === captureName);
|
|
474
485
|
// Only store the binding if this is a capturing placeholder
|
|
475
486
|
const capturing = (_a = captureObj === null || captureObj === void 0 ? void 0 : captureObj[capture_1.CAPTURE_CAPTURING_SYMBOL]) !== null && _a !== void 0 ? _a : true;
|
|
476
487
|
if (capturing) {
|
|
@@ -489,7 +500,7 @@ class Matcher {
|
|
|
489
500
|
* Tagged template function for creating patterns.
|
|
490
501
|
*
|
|
491
502
|
* @param strings The string parts of the template
|
|
492
|
-
* @param captures The captures between the string parts (Capture, Any, or string names)
|
|
503
|
+
* @param captures The captures between the string parts (Capture, Any, RawCode, or string names)
|
|
493
504
|
* @returns A Pattern object
|
|
494
505
|
*
|
|
495
506
|
* @example
|
|
@@ -500,15 +511,28 @@ class Matcher {
|
|
|
500
511
|
* @example
|
|
501
512
|
* // Using any() for non-capturing matches
|
|
502
513
|
* const pat = pattern`foo(${any()})`;
|
|
514
|
+
*
|
|
515
|
+
* @example
|
|
516
|
+
* // Using raw() for dynamic pattern construction
|
|
517
|
+
* const operator = '===';
|
|
518
|
+
* const pat = pattern`x ${raw(operator)} y`;
|
|
503
519
|
*/
|
|
504
520
|
function pattern(strings, ...captures) {
|
|
505
521
|
const capturesByName = captures.reduce((map, c) => {
|
|
522
|
+
// Skip raw code - it's not a capture
|
|
523
|
+
if (c instanceof capture_1.RawCode || (typeof c === 'object' && c && c[capture_1.RAW_CODE_SYMBOL])) {
|
|
524
|
+
return map;
|
|
525
|
+
}
|
|
506
526
|
const capture = typeof c === "string" ? new capture_1.CaptureImpl(c) : c;
|
|
507
527
|
// Use symbol to get internal name without triggering Proxy
|
|
508
528
|
const name = capture[capture_1.CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
509
529
|
return map.set(name, capture);
|
|
510
530
|
}, new Map());
|
|
511
531
|
return new Pattern(strings, captures.map(c => {
|
|
532
|
+
// Return raw code as-is
|
|
533
|
+
if (c instanceof capture_1.RawCode || (typeof c === 'object' && c && c[capture_1.RAW_CODE_SYMBOL])) {
|
|
534
|
+
return c;
|
|
535
|
+
}
|
|
512
536
|
// Use symbol to get internal name without triggering Proxy
|
|
513
537
|
const name = typeof c === "string" ? c : (c[capture_1.CAPTURE_NAME_SYMBOL] || c.getName());
|
|
514
538
|
return capturesByName.get(name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../src/javascript/templating/pattern.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../src/javascript/templating/pattern.ts"],"names":[],"mappings":"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"}
|
package/dist/version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
8.67.0-
|
|
1
|
+
8.67.0-20251109-075003
|
package/package.json
CHANGED
|
@@ -409,20 +409,25 @@ export class TemplateEngine {
|
|
|
409
409
|
* functionality on top of the shared template tree generation.
|
|
410
410
|
*
|
|
411
411
|
* @param templateParts The string parts of the template
|
|
412
|
-
* @param captures The captures between the string parts
|
|
412
|
+
* @param captures The captures between the string parts (can include RawCode)
|
|
413
413
|
* @param contextStatements Context declarations (imports, types, etc.) to prepend for type attribution
|
|
414
414
|
* @param dependencies NPM dependencies for type attribution
|
|
415
415
|
* @returns A Promise resolving to the extracted pattern AST with capture markers
|
|
416
416
|
*/
|
|
417
417
|
static async getPatternTree(
|
|
418
418
|
templateParts: TemplateStringsArray,
|
|
419
|
-
captures: (Capture | Any)[],
|
|
419
|
+
captures: (Capture | Any | RawCode)[],
|
|
420
420
|
contextStatements: string[] = [],
|
|
421
421
|
dependencies: Record<string, string> = {}
|
|
422
422
|
): Promise<J> {
|
|
423
|
-
// Generate type preamble for captures with types
|
|
423
|
+
// Generate type preamble for captures with types (skip RawCode)
|
|
424
424
|
const preamble: string[] = [];
|
|
425
425
|
for (const capture of captures) {
|
|
426
|
+
// Skip raw code - it's not a capture
|
|
427
|
+
if (capture instanceof RawCode || (capture && typeof capture === 'object' && (capture as any)[RAW_CODE_SYMBOL])) {
|
|
428
|
+
continue;
|
|
429
|
+
}
|
|
430
|
+
|
|
426
431
|
const captureName = (capture as any)[CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
427
432
|
const captureType = (capture as any)[CAPTURE_TYPE_SYMBOL];
|
|
428
433
|
if (captureType) {
|
|
@@ -438,15 +443,21 @@ export class TemplateEngine {
|
|
|
438
443
|
}
|
|
439
444
|
}
|
|
440
445
|
|
|
441
|
-
// Build the template string with placeholders for captures
|
|
446
|
+
// Build the template string with placeholders for captures and raw code
|
|
442
447
|
let result = '';
|
|
443
448
|
for (let i = 0; i < templateParts.length; i++) {
|
|
444
449
|
result += templateParts[i];
|
|
445
450
|
if (i < captures.length) {
|
|
446
451
|
const capture = captures[i];
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
452
|
+
|
|
453
|
+
// Check if this is a RawCode instance - splice directly
|
|
454
|
+
if (capture instanceof RawCode || (capture && typeof capture === 'object' && (capture as any)[RAW_CODE_SYMBOL])) {
|
|
455
|
+
result += (capture as RawCode).code;
|
|
456
|
+
} else {
|
|
457
|
+
// Use symbol to access capture name without triggering Proxy
|
|
458
|
+
const captureName = (capture as any)[CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
459
|
+
result += PlaceholderUtils.createCapture(captureName, undefined);
|
|
460
|
+
}
|
|
450
461
|
}
|
|
451
462
|
}
|
|
452
463
|
|
|
@@ -459,10 +470,15 @@ export class TemplateEngine {
|
|
|
459
470
|
? [...contextStatements, ...preamble]
|
|
460
471
|
: contextStatements;
|
|
461
472
|
|
|
473
|
+
// Filter out RawCode from captures for cache and marker attachment
|
|
474
|
+
const actualCaptures = captures.filter(c =>
|
|
475
|
+
!(c instanceof RawCode || (c && typeof c === 'object' && (c as any)[RAW_CODE_SYMBOL]))
|
|
476
|
+
) as (Capture | Any)[];
|
|
477
|
+
|
|
462
478
|
// Use cache to get or parse the compilation unit
|
|
463
479
|
const cu = await templateCache.getOrParse(
|
|
464
480
|
templateString,
|
|
465
|
-
|
|
481
|
+
actualCaptures,
|
|
466
482
|
contextWithPreamble,
|
|
467
483
|
dependencies
|
|
468
484
|
);
|
|
@@ -478,8 +494,8 @@ export class TemplateEngine {
|
|
|
478
494
|
// Extract from wrapper using shared utility
|
|
479
495
|
const extracted = PlaceholderUtils.extractFromWrapper(lastStatement, 'Pattern');
|
|
480
496
|
|
|
481
|
-
// Attach CaptureMarkers to capture identifiers
|
|
482
|
-
const visitor = new MarkerAttachmentVisitor(
|
|
497
|
+
// Attach CaptureMarkers to capture identifiers (only for actual captures, not raw code)
|
|
498
|
+
const visitor = new MarkerAttachmentVisitor(actualCaptures);
|
|
483
499
|
return (await visitor.visit(extracted, undefined))!;
|
|
484
500
|
}
|
|
485
501
|
}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
import {Cursor} from '../..';
|
|
17
17
|
import {J} from '../../java';
|
|
18
18
|
import {Any, Capture, PatternOptions} from './types';
|
|
19
|
-
import {CAPTURE_CAPTURING_SYMBOL, CAPTURE_NAME_SYMBOL, CaptureImpl} from './capture';
|
|
19
|
+
import {CAPTURE_CAPTURING_SYMBOL, CAPTURE_NAME_SYMBOL, CaptureImpl, RAW_CODE_SYMBOL, RawCode} from './capture';
|
|
20
20
|
import {PatternMatchingComparator} from './comparator';
|
|
21
21
|
import {CaptureMarker, CaptureStorageValue, generateCacheKey, globalAstCache, WRAPPERS_MAP_SYMBOL} from './utils';
|
|
22
22
|
import {TemplateEngine} from './engine';
|
|
@@ -48,7 +48,7 @@ import {TemplateEngine} from './engine';
|
|
|
48
48
|
*/
|
|
49
49
|
export class PatternBuilder {
|
|
50
50
|
private parts: string[] = [];
|
|
51
|
-
private captures: (Capture | Any<any>)[] = [];
|
|
51
|
+
private captures: (Capture | Any<any> | RawCode)[] = [];
|
|
52
52
|
|
|
53
53
|
/**
|
|
54
54
|
* Adds a static string part to the pattern.
|
|
@@ -73,15 +73,15 @@ export class PatternBuilder {
|
|
|
73
73
|
/**
|
|
74
74
|
* Adds a capture to the pattern.
|
|
75
75
|
*
|
|
76
|
-
* @param value The capture object (Capture or
|
|
76
|
+
* @param value The capture object (Capture, Any, or RawCode) or string name
|
|
77
77
|
* @returns This builder for chaining
|
|
78
78
|
*/
|
|
79
|
-
capture(value: Capture | Any<any> | string): this {
|
|
79
|
+
capture(value: Capture | Any<any> | RawCode | string): this {
|
|
80
80
|
// Ensure we have a part for after this capture
|
|
81
81
|
if (this.parts.length === 0) {
|
|
82
82
|
this.parts.push('');
|
|
83
83
|
}
|
|
84
|
-
// Convert string to Capture if needed
|
|
84
|
+
// Convert string to Capture if needed, or use value as-is for RawCode
|
|
85
85
|
const captureObj = typeof value === 'string' ? new CaptureImpl(value) : value;
|
|
86
86
|
this.captures.push(captureObj as any);
|
|
87
87
|
// Add an empty string for the next part
|
|
@@ -150,11 +150,11 @@ export class Pattern {
|
|
|
150
150
|
* Creates a new pattern from template parts and captures.
|
|
151
151
|
*
|
|
152
152
|
* @param templateParts The string parts of the template
|
|
153
|
-
* @param captures The captures between the string parts (can be Capture or
|
|
153
|
+
* @param captures The captures between the string parts (can be Capture, Any, or RawCode)
|
|
154
154
|
*/
|
|
155
155
|
constructor(
|
|
156
156
|
public readonly templateParts: TemplateStringsArray,
|
|
157
|
-
public readonly captures: (Capture | Any<any>)[]
|
|
157
|
+
public readonly captures: (Capture | Any<any> | RawCode)[]
|
|
158
158
|
) {
|
|
159
159
|
}
|
|
160
160
|
|
|
@@ -194,10 +194,17 @@ export class Pattern {
|
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
// Generate cache key for global lookup
|
|
197
|
+
// Include raw code values in the key since they affect the generated AST
|
|
197
198
|
const contextStatements = this._options.context || this._options.imports || [];
|
|
199
|
+
const capturesKey = this.captures.map(c => {
|
|
200
|
+
if (c instanceof RawCode || (c && typeof c === 'object' && (c as any)[RAW_CODE_SYMBOL])) {
|
|
201
|
+
return `raw:${(c as RawCode).code}`;
|
|
202
|
+
}
|
|
203
|
+
return c.getName();
|
|
204
|
+
}).join(',');
|
|
198
205
|
const cacheKey = generateCacheKey(
|
|
199
206
|
this.templateParts,
|
|
200
|
-
|
|
207
|
+
capturesKey,
|
|
201
208
|
contextStatements,
|
|
202
209
|
this._options.dependencies || {}
|
|
203
210
|
);
|
|
@@ -476,7 +483,11 @@ class Matcher {
|
|
|
476
483
|
|
|
477
484
|
// Find the original capture object to get capturing flag
|
|
478
485
|
// Note: Constraints are now evaluated in PatternMatchingComparator where cursor is correctly positioned
|
|
479
|
-
|
|
486
|
+
// Filter out RawCode since it doesn't have getName()
|
|
487
|
+
const captureObj = this.pattern.captures.find(c =>
|
|
488
|
+
!(c instanceof RawCode || (c && typeof c === 'object' && (c as any)[RAW_CODE_SYMBOL])) &&
|
|
489
|
+
c.getName() === captureName
|
|
490
|
+
);
|
|
480
491
|
|
|
481
492
|
// Only store the binding if this is a capturing placeholder
|
|
482
493
|
const capturing = (captureObj as any)?.[CAPTURE_CAPTURING_SYMBOL] ?? true;
|
|
@@ -505,7 +516,11 @@ class Matcher {
|
|
|
505
516
|
|
|
506
517
|
// Find the original capture object to get capturing flag
|
|
507
518
|
// Note: Constraints are now evaluated in PatternMatchingComparator where cursor is correctly positioned
|
|
508
|
-
|
|
519
|
+
// Filter out RawCode since it doesn't have getName()
|
|
520
|
+
const captureObj = this.pattern.captures.find(c =>
|
|
521
|
+
!(c instanceof RawCode || (c && typeof c === 'object' && (c as any)[RAW_CODE_SYMBOL])) &&
|
|
522
|
+
c.getName() === captureName
|
|
523
|
+
);
|
|
509
524
|
|
|
510
525
|
// Only store the binding if this is a capturing placeholder
|
|
511
526
|
const capturing = (captureObj as any)?.[CAPTURE_CAPTURING_SYMBOL] ?? true;
|
|
@@ -526,7 +541,7 @@ class Matcher {
|
|
|
526
541
|
* Tagged template function for creating patterns.
|
|
527
542
|
*
|
|
528
543
|
* @param strings The string parts of the template
|
|
529
|
-
* @param captures The captures between the string parts (Capture, Any, or string names)
|
|
544
|
+
* @param captures The captures between the string parts (Capture, Any, RawCode, or string names)
|
|
530
545
|
* @returns A Pattern object
|
|
531
546
|
*
|
|
532
547
|
* @example
|
|
@@ -537,15 +552,28 @@ class Matcher {
|
|
|
537
552
|
* @example
|
|
538
553
|
* // Using any() for non-capturing matches
|
|
539
554
|
* const pat = pattern`foo(${any()})`;
|
|
555
|
+
*
|
|
556
|
+
* @example
|
|
557
|
+
* // Using raw() for dynamic pattern construction
|
|
558
|
+
* const operator = '===';
|
|
559
|
+
* const pat = pattern`x ${raw(operator)} y`;
|
|
540
560
|
*/
|
|
541
|
-
export function pattern(strings: TemplateStringsArray, ...captures: (Capture | Any<any> | string)[]): Pattern {
|
|
561
|
+
export function pattern(strings: TemplateStringsArray, ...captures: (Capture | Any<any> | RawCode | string)[]): Pattern {
|
|
542
562
|
const capturesByName = captures.reduce((map, c) => {
|
|
563
|
+
// Skip raw code - it's not a capture
|
|
564
|
+
if (c instanceof RawCode || (typeof c === 'object' && c && (c as any)[RAW_CODE_SYMBOL])) {
|
|
565
|
+
return map;
|
|
566
|
+
}
|
|
543
567
|
const capture = typeof c === "string" ? new CaptureImpl(c) : c;
|
|
544
568
|
// Use symbol to get internal name without triggering Proxy
|
|
545
569
|
const name = (capture as any)[CAPTURE_NAME_SYMBOL] || capture.getName();
|
|
546
570
|
return map.set(name, capture);
|
|
547
571
|
}, new Map<string, Capture | Any<any>>());
|
|
548
572
|
return new Pattern(strings, captures.map(c => {
|
|
573
|
+
// Return raw code as-is
|
|
574
|
+
if (c instanceof RawCode || (typeof c === 'object' && c && (c as any)[RAW_CODE_SYMBOL])) {
|
|
575
|
+
return c as RawCode;
|
|
576
|
+
}
|
|
549
577
|
// Use symbol to get internal name without triggering Proxy
|
|
550
578
|
const name = typeof c === "string" ? c : ((c as any)[CAPTURE_NAME_SYMBOL] || c.getName());
|
|
551
579
|
return capturesByName.get(name)!;
|