@openrewrite/rewrite 8.67.0-20251107-182632 → 8.67.0-20251108-160259

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.
@@ -43,6 +43,7 @@ export declare const CAPTURE_VARIADIC_SYMBOL: unique symbol;
43
43
  export declare const CAPTURE_CONSTRAINT_SYMBOL: unique symbol;
44
44
  export declare const CAPTURE_CAPTURING_SYMBOL: unique symbol;
45
45
  export declare const CAPTURE_TYPE_SYMBOL: unique symbol;
46
+ export declare const RAW_CODE_SYMBOL: unique symbol;
46
47
  export declare class CaptureImpl<T = any> implements Capture<T> {
47
48
  readonly name: string;
48
49
  [CAPTURE_NAME_SYMBOL]: string;
@@ -212,6 +213,71 @@ export declare namespace any {
212
213
  * template`console.log(${node.name})` // Error! Use capture() for property access
213
214
  */
214
215
  export declare function param<T = any>(name?: string): TemplateParam<T>;
216
+ /**
217
+ * Represents raw code that should be inserted verbatim into templates at construction time.
218
+ * This is useful for dynamic code generation where the code structure is determined at runtime.
219
+ */
220
+ export declare class RawCode {
221
+ readonly code: string;
222
+ [RAW_CODE_SYMBOL]: boolean;
223
+ constructor(code: string);
224
+ }
225
+ /**
226
+ * Creates a raw code specification for inserting literal code strings into templates.
227
+ *
228
+ * Use `raw()` when you need to insert code that is generated dynamically (e.g., from recipe options,
229
+ * computed field names, or programmatic string manipulation) directly into a template at construction time.
230
+ *
231
+ * The string is spliced into the template before parsing, so it becomes part of the template's AST.
232
+ * This is different from `param()` or `capture()` which are placeholders replaced during application.
233
+ *
234
+ * @param code The code string to insert verbatim into the template
235
+ * @returns A RawCode object that will be spliced into the template
236
+ *
237
+ * @remarks
238
+ * **When to use `raw()` vs `param()` vs `capture()`:**
239
+ *
240
+ * - Use `raw()` when you have a **code string** to insert at **template construction time**
241
+ * - Use `param()` when you have an **AST node** to substitute at **template application time**
242
+ * - Use `capture()` when working with **pattern matching** and need to reference matched values
243
+ *
244
+ * **Safety Considerations:**
245
+ * - No validation is performed on the code string
246
+ * - The code must be syntactically valid at the position where it's inserted
247
+ * - Recipe authors are trusted to provide valid code
248
+ *
249
+ * @example
250
+ * // Recipe option determines the log level
251
+ * class MyRecipe extends Recipe {
252
+ * @Option
253
+ * logLevel: string = "info";
254
+ *
255
+ * getVisitor() {
256
+ * // Template constructed with dynamic method name
257
+ * const replacement = template`logger.${raw(this.logLevel)}(${_('msg')})`;
258
+ * // Produces: logger.info(...) or logger.warn(...) etc.
259
+ * }
260
+ * }
261
+ *
262
+ * @example
263
+ * // Build object literal from collected field names
264
+ * const fields = ["userId", "timestamp", "status"];
265
+ * template`{ ${raw(fields.join(', '))} }`
266
+ * // Produces: { userId, timestamp, status }
267
+ *
268
+ * @example
269
+ * // Dynamic import path
270
+ * const modulePath = "./utils";
271
+ * template`import { helper } from ${raw(`'${modulePath}'`)}`
272
+ * // Produces: import { helper } from './utils'
273
+ *
274
+ * @example
275
+ * // Configurable operator
276
+ * const operator = ">=";
277
+ * template`${_('value')} ${raw(operator)} threshold`
278
+ * // Produces: value >= threshold
279
+ */
280
+ export declare function raw(code: string): RawCode;
215
281
  /**
216
282
  * Concise alias for `capture`. Works well for inline captures in patterns and templates.
217
283
  *
@@ -1 +1 @@
1
- {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/capture.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
+ var _a;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports._ = exports.CaptureValue = exports.TemplateParamImpl = exports.CaptureImpl = exports.CAPTURE_TYPE_SYMBOL = exports.CAPTURE_CAPTURING_SYMBOL = exports.CAPTURE_CONSTRAINT_SYMBOL = exports.CAPTURE_VARIADIC_SYMBOL = exports.CAPTURE_NAME_SYMBOL = void 0;
4
+ exports._ = exports.RawCode = exports.CaptureValue = exports.TemplateParamImpl = exports.CaptureImpl = exports.RAW_CODE_SYMBOL = exports.CAPTURE_TYPE_SYMBOL = exports.CAPTURE_CAPTURING_SYMBOL = exports.CAPTURE_CONSTRAINT_SYMBOL = exports.CAPTURE_VARIADIC_SYMBOL = exports.CAPTURE_NAME_SYMBOL = void 0;
4
5
  exports.and = and;
5
6
  exports.or = or;
6
7
  exports.not = not;
7
8
  exports.capture = capture;
8
9
  exports.any = any;
9
10
  exports.param = param;
11
+ exports.raw = raw;
10
12
  /**
11
13
  * Combines multiple constraints with AND logic.
12
14
  * All constraints must return true for the combined constraint to pass.
@@ -60,6 +62,8 @@ exports.CAPTURE_CONSTRAINT_SYMBOL = Symbol('captureConstraint');
60
62
  exports.CAPTURE_CAPTURING_SYMBOL = Symbol('captureCapturing');
61
63
  // Symbol to access type information without triggering Proxy
62
64
  exports.CAPTURE_TYPE_SYMBOL = Symbol('captureType');
65
+ // Symbol to identify RawCode instances
66
+ exports.RAW_CODE_SYMBOL = Symbol('rawCode');
63
67
  class CaptureImpl {
64
68
  constructor(name, options, capturing = true) {
65
69
  this.name = name;
@@ -160,11 +164,11 @@ class CaptureValue {
160
164
  * Checks if this CaptureValue will resolve to an array that should be expanded.
161
165
  */
162
166
  isArrayExpansion() {
163
- var _a, _b, _c;
167
+ var _b, _c, _d;
164
168
  // Only slice operations and the root variadic capture return arrays
165
- return ((_a = this.arrayOperation) === null || _a === void 0 ? void 0 : _a.type) === 'slice' ||
169
+ return ((_b = this.arrayOperation) === null || _b === void 0 ? void 0 : _b.type) === 'slice' ||
166
170
  (this.arrayOperation === undefined && this.propertyPath.length === 0 &&
167
- ((_c = (_b = this.rootCapture).isVariadic) === null || _c === void 0 ? void 0 : _c.call(_b)));
171
+ ((_d = (_c = this.rootCapture).isVariadic) === null || _d === void 0 ? void 0 : _d.call(_c)));
168
172
  }
169
173
  }
170
174
  exports.CaptureValue = CaptureValue;
@@ -372,6 +376,76 @@ function param(name) {
372
376
  const paramName = name || `unnamed_${capture.nextUnnamedId++}`;
373
377
  return new TemplateParamImpl(paramName);
374
378
  }
379
+ /**
380
+ * Represents raw code that should be inserted verbatim into templates at construction time.
381
+ * This is useful for dynamic code generation where the code structure is determined at runtime.
382
+ */
383
+ class RawCode {
384
+ constructor(code) {
385
+ this.code = code;
386
+ this[_a] = true;
387
+ }
388
+ }
389
+ exports.RawCode = RawCode;
390
+ _a = exports.RAW_CODE_SYMBOL;
391
+ /**
392
+ * Creates a raw code specification for inserting literal code strings into templates.
393
+ *
394
+ * Use `raw()` when you need to insert code that is generated dynamically (e.g., from recipe options,
395
+ * computed field names, or programmatic string manipulation) directly into a template at construction time.
396
+ *
397
+ * The string is spliced into the template before parsing, so it becomes part of the template's AST.
398
+ * This is different from `param()` or `capture()` which are placeholders replaced during application.
399
+ *
400
+ * @param code The code string to insert verbatim into the template
401
+ * @returns A RawCode object that will be spliced into the template
402
+ *
403
+ * @remarks
404
+ * **When to use `raw()` vs `param()` vs `capture()`:**
405
+ *
406
+ * - Use `raw()` when you have a **code string** to insert at **template construction time**
407
+ * - Use `param()` when you have an **AST node** to substitute at **template application time**
408
+ * - Use `capture()` when working with **pattern matching** and need to reference matched values
409
+ *
410
+ * **Safety Considerations:**
411
+ * - No validation is performed on the code string
412
+ * - The code must be syntactically valid at the position where it's inserted
413
+ * - Recipe authors are trusted to provide valid code
414
+ *
415
+ * @example
416
+ * // Recipe option determines the log level
417
+ * class MyRecipe extends Recipe {
418
+ * @Option
419
+ * logLevel: string = "info";
420
+ *
421
+ * getVisitor() {
422
+ * // Template constructed with dynamic method name
423
+ * const replacement = template`logger.${raw(this.logLevel)}(${_('msg')})`;
424
+ * // Produces: logger.info(...) or logger.warn(...) etc.
425
+ * }
426
+ * }
427
+ *
428
+ * @example
429
+ * // Build object literal from collected field names
430
+ * const fields = ["userId", "timestamp", "status"];
431
+ * template`{ ${raw(fields.join(', '))} }`
432
+ * // Produces: { userId, timestamp, status }
433
+ *
434
+ * @example
435
+ * // Dynamic import path
436
+ * const modulePath = "./utils";
437
+ * template`import { helper } from ${raw(`'${modulePath}'`)}`
438
+ * // Produces: import { helper } from './utils'
439
+ *
440
+ * @example
441
+ * // Configurable operator
442
+ * const operator = ">=";
443
+ * template`${_('value')} ${raw(operator)} threshold`
444
+ * // Produces: value >= threshold
445
+ */
446
+ function raw(code) {
447
+ return new RawCode(code);
448
+ }
375
449
  /**
376
450
  * Concise alias for `capture`. Works well for inline captures in patterns and templates.
377
451
  *
@@ -1 +1 @@
1
- {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/javascript/templating/capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/javascript/templating/capture.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,8 @@ export declare class TemplateEngine {
53
53
  private static generateTypePreamble;
54
54
  /**
55
55
  * Builds a template string with parameter placeholders.
56
+ * RawCode parameters are spliced directly into the template at construction time.
57
+ * Other parameters use placeholders that are replaced during application.
56
58
  *
57
59
  * @param templateParts The string parts of the template
58
60
  * @param parameters The parameters between the string parts
@@ -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;AAKzE,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;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAoBlC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAyC3B;;;;;;;;;;OAUG;WACU,cAAc,CACvB,aAAa,EAAE,oBAAoB,EACnC,QAAQ,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,EAC3B,iBAAiB,GAAE,MAAM,EAAO,EAChC,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAC1C,OAAO,CAAC,CAAC,CAAC;CA+DhB;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"}
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;AAKzE,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,CAAC,EAAE,EAC3B,iBAAiB,GAAE,MAAM,EAAO,EAChC,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAC1C,OAAO,CAAC,CAAC,CAAC;CA+DhB;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"}
@@ -277,6 +277,8 @@ class TemplateEngine {
277
277
  }
278
278
  /**
279
279
  * Builds a template string with parameter placeholders.
280
+ * RawCode parameters are spliced directly into the template at construction time.
281
+ * Other parameters use placeholders that are replaced during application.
280
282
  *
281
283
  * @param templateParts The string parts of the template
282
284
  * @param parameters The parameters between the string parts
@@ -287,10 +289,17 @@ class TemplateEngine {
287
289
  for (let i = 0; i < templateParts.length; i++) {
288
290
  result += templateParts[i];
289
291
  if (i < parameters.length) {
290
- // All parameters are now placeholders (no primitive inlining)
291
- // This ensures templates with the same structure always produce the same AST
292
- const placeholder = `${utils_1.PlaceholderUtils.PLACEHOLDER_PREFIX}${i}__`;
293
- result += placeholder;
292
+ const param = parameters[i].value;
293
+ // Check if this is a RawCode instance - splice directly
294
+ if (param instanceof capture_1.RawCode || (param && typeof param === 'object' && param[capture_1.RAW_CODE_SYMBOL])) {
295
+ result += param.code;
296
+ }
297
+ else {
298
+ // All other parameters use placeholders
299
+ // This ensures templates with the same structure always produce the same AST
300
+ const placeholder = `${utils_1.PlaceholderUtils.PLACEHOLDER_PREFIX}${i}__`;
301
+ result += placeholder;
302
+ }
294
303
  }
295
304
  }
296
305
  // Always wrap in function body - let the parser decide what it is,
@@ -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,5 +1,5 @@
1
1
  export type { VariadicOptions, CaptureOptions, Capture, Any, TemplateParam, PatternOptions, TemplateParameter, TemplateOptions, RewriteRule, RewriteConfig } from './types';
2
- export { and, or, not, capture, any, param, _ } from './capture';
2
+ export { and, or, not, capture, any, param, raw, _ } from './capture';
3
3
  export { Pattern, PatternBuilder, MatchResult, pattern } from './pattern';
4
4
  export { rewrite, fromRecipe } from './rewrite';
5
5
  export { Template, TemplateBuilder, template } from './template';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EACR,eAAe,EACf,cAAc,EACd,OAAO,EACP,GAAG,EACH,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,aAAa,EAChB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,OAAO,EACP,GAAG,EACH,KAAK,EACL,CAAC,EACJ,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,cAAc,EACd,WAAW,EACX,OAAO,EACV,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,UAAU,EACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,QAAQ,EACR,eAAe,EACf,QAAQ,EACX,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EACR,eAAe,EACf,cAAc,EACd,OAAO,EACP,GAAG,EACH,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,aAAa,EAChB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,OAAO,EACP,GAAG,EACH,KAAK,EACL,GAAG,EACH,CAAC,EACJ,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,cAAc,EACd,WAAW,EACX,OAAO,EACV,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,OAAO,EACP,UAAU,EACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACH,QAAQ,EACR,eAAe,EACf,QAAQ,EACX,MAAM,YAAY,CAAC"}
@@ -15,7 +15,7 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.template = exports.TemplateBuilder = exports.Template = exports.fromRecipe = exports.rewrite = exports.pattern = exports.MatchResult = exports.PatternBuilder = exports.Pattern = exports._ = exports.param = exports.any = exports.capture = exports.not = exports.or = exports.and = void 0;
18
+ exports.template = exports.TemplateBuilder = exports.Template = exports.fromRecipe = exports.rewrite = exports.pattern = exports.MatchResult = exports.PatternBuilder = exports.Pattern = exports._ = exports.raw = exports.param = exports.any = exports.capture = exports.not = exports.or = exports.and = void 0;
19
19
  // Export capture functionality
20
20
  var capture_1 = require("./capture");
21
21
  Object.defineProperty(exports, "and", { enumerable: true, get: function () { return capture_1.and; } });
@@ -24,6 +24,7 @@ Object.defineProperty(exports, "not", { enumerable: true, get: function () { ret
24
24
  Object.defineProperty(exports, "capture", { enumerable: true, get: function () { return capture_1.capture; } });
25
25
  Object.defineProperty(exports, "any", { enumerable: true, get: function () { return capture_1.any; } });
26
26
  Object.defineProperty(exports, "param", { enumerable: true, get: function () { return capture_1.param; } });
27
+ Object.defineProperty(exports, "raw", { enumerable: true, get: function () { return capture_1.raw; } });
27
28
  Object.defineProperty(exports, "_", { enumerable: true, get: function () { return capture_1._; } });
28
29
  // Export pattern functionality
29
30
  var pattern_1 = require("./pattern");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAgBH,+BAA+B;AAC/B,qCAQmB;AAPf,8FAAA,GAAG,OAAA;AACH,6FAAA,EAAE,OAAA;AACF,8FAAA,GAAG,OAAA;AACH,kGAAA,OAAO,OAAA;AACP,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,4FAAA,CAAC,OAAA;AAGL,+BAA+B;AAC/B,qCAKmB;AAJf,kGAAA,OAAO,OAAA;AACP,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,kGAAA,OAAO,OAAA;AAGX,+BAA+B;AAC/B,qCAGmB;AAFf,kGAAA,OAAO,OAAA;AACP,qGAAA,UAAU,OAAA;AAGd,gCAAgC;AAChC,uCAIoB;AAHhB,oGAAA,QAAQ,OAAA;AACR,2GAAA,eAAe,OAAA;AACf,oGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/templating/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAgBH,+BAA+B;AAC/B,qCASmB;AARf,8FAAA,GAAG,OAAA;AACH,6FAAA,EAAE,OAAA;AACF,8FAAA,GAAG,OAAA;AACH,kGAAA,OAAO,OAAA;AACP,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,8FAAA,GAAG,OAAA;AACH,4FAAA,CAAC,OAAA;AAGL,+BAA+B;AAC/B,qCAKmB;AAJf,kGAAA,OAAO,OAAA;AACP,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,kGAAA,OAAO,OAAA;AAGX,+BAA+B;AAC/B,qCAGmB;AAFf,kGAAA,OAAO,OAAA;AACP,qGAAA,UAAU,OAAA;AAGd,gCAAgC;AAChC,uCAIoB;AAHhB,oGAAA,QAAQ,OAAA;AACR,2GAAA,eAAe,OAAA;AACf,oGAAA,QAAQ,OAAA"}
@@ -151,8 +151,9 @@ export declare class Template {
151
151
  * - Level 2: Global cache (globalAstCache) - fast, shared across all templates
152
152
  * - Level 3: TemplateEngine - slow, parses and processes the template
153
153
  *
154
- * Since all parameters are now placeholders (no primitives), templates with the same
155
- * structure always parse to the same AST regardless of parameter values.
154
+ * Most parameters use placeholders that are replaced during application, so templates
155
+ * with the same structure share cached ASTs. However, raw() parameters are spliced at
156
+ * construction time, so their values must be included in the cache key.
156
157
  *
157
158
  * @returns The cached or newly computed template tree
158
159
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/template.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,OAAO,CAAC;AACnC,OAAO,EAAC,CAAC,EAAC,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAK/E,OAAO,EAAC,EAAE,EAAC,MAAM,IAAI,CAAC;AAEtB;;GAEG;AACH,KAAK,eAAe,GAAG;IACnB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,GAAG,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;CAC/B,CAAC;AAEF,kBAAU,eAAe,CAAC;IAEtB,KAAY,QAAQ,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,WAAW,CAAC;IAE9E,KAAY,IAAI;QACZ,MAAM,IAAA;QACN,KAAK,IAAA;QACL,OAAO,IAAA;KACV;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,MAAM,CAA2B;IAEzC;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAcvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAWrC;;;;OAIG;IACH,KAAK,IAAI,QAAQ;CAiBpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,qBAAa,QAAQ;IA4Bb,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA5B/B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,eAAe,CAAC,CAAI;IAE5B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,IAAI,eAAe;IAIjC;;;;;OAKG;gBAEkB,aAAa,EAAE,oBAAoB,EACnC,UAAU,EAAE,SAAS,EAAE;IAI5C;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,QAAQ;IAO7C;;;;;;;;;;;OAWG;IACG,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC;IAuCpD;;;;;;;OAOG;IACG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAoDpJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,UAAU,EAAE,iBAAiB,EAAE,GAAG,QAAQ,CAQpG;AAED,YAAY,EAAC,eAAe,EAAC,CAAC"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/template.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,OAAO,CAAC;AACnC,OAAO,EAAC,CAAC,EAAC,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAK/E,OAAO,EAAC,EAAE,EAAC,MAAM,IAAI,CAAC;AAEtB;;GAEG;AACH,KAAK,eAAe,GAAG;IACnB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,GAAG,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;CAC/B,CAAC;AAEF,kBAAU,eAAe,CAAC;IAEtB,KAAY,QAAQ,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,WAAW,CAAC;IAE9E,KAAY,IAAI;QACZ,MAAM,IAAA;QACN,KAAK,IAAA;QACL,OAAO,IAAA;KACV;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,MAAM,CAA2B;IAEzC;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAcvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAWrC;;;;OAIG;IACH,KAAK,IAAI,QAAQ;CAiBpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,qBAAa,QAAQ;IA4Bb,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA5B/B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,eAAe,CAAC,CAAI;IAE5B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,IAAI,eAAe;IAIjC;;;;;OAKG;gBAEkB,aAAa,EAAE,oBAAoB,EACnC,UAAU,EAAE,SAAS,EAAE;IAI5C;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,QAAQ;IAO7C;;;;;;;;;;;;OAYG;IACG,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC;IA+CpD;;;;;;;OAOG;IACG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAoDpJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,UAAU,EAAE,iBAAiB,EAAE,GAAG,QAAQ,CAQpG;AAED,YAAY,EAAC,eAAe,EAAC,CAAC"}
@@ -203,8 +203,9 @@ class Template {
203
203
  * - Level 2: Global cache (globalAstCache) - fast, shared across all templates
204
204
  * - Level 3: TemplateEngine - slow, parses and processes the template
205
205
  *
206
- * Since all parameters are now placeholders (no primitives), templates with the same
207
- * structure always parse to the same AST regardless of parameter values.
206
+ * Most parameters use placeholders that are replaced during application, so templates
207
+ * with the same structure share cached ASTs. However, raw() parameters are spliced at
208
+ * construction time, so their values must be included in the cache key.
208
209
  *
209
210
  * @returns The cached or newly computed template tree
210
211
  * @internal
@@ -216,9 +217,17 @@ class Template {
216
217
  return this._cachedTemplate;
217
218
  }
218
219
  // Generate cache key for global lookup
219
- // Since all parameters use placeholders, we only need the template structure
220
+ // For raw() parameters, we need to include their code values in the key
221
+ // since they're spliced at construction time, not application time
220
222
  const contextStatements = this.options.context || this.options.imports || [];
221
- const parametersKey = this.parameters.length.toString(); // Just the count
223
+ const parametersKey = this.parameters.map((p, i) => {
224
+ const value = p.value;
225
+ // Include raw code values in the cache key using the symbol
226
+ if (value && typeof value === 'object' && value[capture_1.RAW_CODE_SYMBOL]) {
227
+ return `raw:${value.code}`;
228
+ }
229
+ return i.toString();
230
+ }).join(',');
222
231
  const cacheKey = (0, utils_1.generateCacheKey)(this.templateParts, parametersKey, contextStatements, this.options.dependencies || {});
223
232
  // Level 2: Global cache (fast path - shared with Pattern)
224
233
  const cached = utils_1.globalAstCache.get(cacheKey);
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/javascript/templating/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/javascript/templating/template.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { Cursor, Tree } from '../..';
2
2
  import { J, Type } from '../../java';
3
3
  import type { MatchResult, Pattern } from "./pattern";
4
4
  import type { Template } from "./template";
5
- import type { CaptureValue } from "./capture";
5
+ import type { CaptureValue, RawCode } from "./capture";
6
6
  /**
7
7
  * Options for variadic captures that match zero or more nodes in a sequence.
8
8
  */
@@ -243,6 +243,7 @@ export interface PatternOptions {
243
243
  * - Capture: For pattern matching and reuse
244
244
  * - CaptureValue: Result of property access or array operations on captures (e.g., capture.prop, capture[0], capture.slice(1))
245
245
  * - TemplateParam: For standalone template parameters
246
+ * - RawCode: For inserting literal code strings at construction time
246
247
  * - Tree: AST nodes to be inserted directly
247
248
  * - Tree[]: Arrays of AST nodes (from variadic capture operations like slice)
248
249
  * - J.RightPadded<any>: Wrapper containing an element with markers (element will be extracted)
@@ -250,9 +251,9 @@ export interface PatternOptions {
250
251
  * - J.Container<any>: Container with elements (elements will be expanded)
251
252
  *
252
253
  * Note: Primitive values (string, number, boolean) are NOT supported in template literals.
253
- * Use Template.builder() API if you need to insert literal values.
254
+ * Use raw() for inserting code strings, or Template.builder() API for programmatic construction.
254
255
  */
255
- export type TemplateParameter = Capture | CaptureValue | TemplateParam | Tree | Tree[] | J.RightPadded<any> | J.RightPadded<any>[] | J.Container<any>;
256
+ export type TemplateParameter = Capture | CaptureValue | TemplateParam | RawCode | Tree | Tree[] | J.RightPadded<any> | J.RightPadded<any>[] | J.Container<any>;
256
257
  /**
257
258
  * Parameter specification for template generation (internal).
258
259
  * Represents a placeholder in a template that will be replaced with a parameter value.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/javascript/templating/types.ts"],"names":[],"mappings":"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"}
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- 8.67.0-20251107-182632
1
+ 8.67.0-20251108-160259
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openrewrite/rewrite",
3
- "version": "8.67.0-20251107-182632",
3
+ "version": "8.67.0-20251108-160259",
4
4
  "license": "Moderne Source Available License",
5
5
  "description": "OpenRewrite JavaScript.",
6
6
  "homepage": "https://github.com/openrewrite/rewrite",
@@ -73,6 +73,8 @@ export const CAPTURE_CONSTRAINT_SYMBOL = Symbol('captureConstraint');
73
73
  export const CAPTURE_CAPTURING_SYMBOL = Symbol('captureCapturing');
74
74
  // Symbol to access type information without triggering Proxy
75
75
  export const CAPTURE_TYPE_SYMBOL = Symbol('captureType');
76
+ // Symbol to identify RawCode instances
77
+ export const RAW_CODE_SYMBOL = Symbol('rawCode');
76
78
 
77
79
  export class CaptureImpl<T = any> implements Capture<T> {
78
80
  public readonly name: string;
@@ -510,6 +512,75 @@ export function param<T = any>(name?: string): TemplateParam<T> {
510
512
  return new TemplateParamImpl<T>(paramName);
511
513
  }
512
514
 
515
+ /**
516
+ * Represents raw code that should be inserted verbatim into templates at construction time.
517
+ * This is useful for dynamic code generation where the code structure is determined at runtime.
518
+ */
519
+ export class RawCode {
520
+ [RAW_CODE_SYMBOL] = true;
521
+
522
+ constructor(public readonly code: string) {}
523
+ }
524
+
525
+ /**
526
+ * Creates a raw code specification for inserting literal code strings into templates.
527
+ *
528
+ * Use `raw()` when you need to insert code that is generated dynamically (e.g., from recipe options,
529
+ * computed field names, or programmatic string manipulation) directly into a template at construction time.
530
+ *
531
+ * The string is spliced into the template before parsing, so it becomes part of the template's AST.
532
+ * This is different from `param()` or `capture()` which are placeholders replaced during application.
533
+ *
534
+ * @param code The code string to insert verbatim into the template
535
+ * @returns A RawCode object that will be spliced into the template
536
+ *
537
+ * @remarks
538
+ * **When to use `raw()` vs `param()` vs `capture()`:**
539
+ *
540
+ * - Use `raw()` when you have a **code string** to insert at **template construction time**
541
+ * - Use `param()` when you have an **AST node** to substitute at **template application time**
542
+ * - Use `capture()` when working with **pattern matching** and need to reference matched values
543
+ *
544
+ * **Safety Considerations:**
545
+ * - No validation is performed on the code string
546
+ * - The code must be syntactically valid at the position where it's inserted
547
+ * - Recipe authors are trusted to provide valid code
548
+ *
549
+ * @example
550
+ * // Recipe option determines the log level
551
+ * class MyRecipe extends Recipe {
552
+ * @Option
553
+ * logLevel: string = "info";
554
+ *
555
+ * getVisitor() {
556
+ * // Template constructed with dynamic method name
557
+ * const replacement = template`logger.${raw(this.logLevel)}(${_('msg')})`;
558
+ * // Produces: logger.info(...) or logger.warn(...) etc.
559
+ * }
560
+ * }
561
+ *
562
+ * @example
563
+ * // Build object literal from collected field names
564
+ * const fields = ["userId", "timestamp", "status"];
565
+ * template`{ ${raw(fields.join(', '))} }`
566
+ * // Produces: { userId, timestamp, status }
567
+ *
568
+ * @example
569
+ * // Dynamic import path
570
+ * const modulePath = "./utils";
571
+ * template`import { helper } from ${raw(`'${modulePath}'`)}`
572
+ * // Produces: import { helper } from './utils'
573
+ *
574
+ * @example
575
+ * // Configurable operator
576
+ * const operator = ">=";
577
+ * template`${_('value')} ${raw(operator)} threshold`
578
+ * // Produces: value >= threshold
579
+ */
580
+ export function raw(code: string): RawCode {
581
+ return new RawCode(code);
582
+ }
583
+
513
584
  /**
514
585
  * Concise alias for `capture`. Works well for inline captures in patterns and templates.
515
586
  *
@@ -18,7 +18,7 @@ import {emptySpace, J, Statement, Type} from '../../java';
18
18
  import {Any, Capture, JavaScriptParser, JavaScriptVisitor, JS} from '..';
19
19
  import {produce} from 'immer';
20
20
  import {CaptureMarker, PlaceholderUtils, WRAPPER_FUNCTION_NAME} from './utils';
21
- import {CAPTURE_NAME_SYMBOL, CAPTURE_TYPE_SYMBOL, CaptureImpl, CaptureValue} from './capture';
21
+ import {CAPTURE_NAME_SYMBOL, CAPTURE_TYPE_SYMBOL, CaptureImpl, CaptureValue, RAW_CODE_SYMBOL, RawCode} from './capture';
22
22
  import {PlaceholderReplacementVisitor} from './placeholder-replacement';
23
23
  import {JavaCoordinates} from './template';
24
24
  import {maybeAutoFormat} from '../format';
@@ -322,6 +322,8 @@ export class TemplateEngine {
322
322
 
323
323
  /**
324
324
  * Builds a template string with parameter placeholders.
325
+ * RawCode parameters are spliced directly into the template at construction time.
326
+ * Other parameters use placeholders that are replaced during application.
325
327
  *
326
328
  * @param templateParts The string parts of the template
327
329
  * @param parameters The parameters between the string parts
@@ -335,10 +337,17 @@ export class TemplateEngine {
335
337
  for (let i = 0; i < templateParts.length; i++) {
336
338
  result += templateParts[i];
337
339
  if (i < parameters.length) {
338
- // All parameters are now placeholders (no primitive inlining)
339
- // This ensures templates with the same structure always produce the same AST
340
- const placeholder = `${PlaceholderUtils.PLACEHOLDER_PREFIX}${i}__`;
341
- result += placeholder;
340
+ const param = parameters[i].value;
341
+
342
+ // Check if this is a RawCode instance - splice directly
343
+ if (param instanceof RawCode || (param && typeof param === 'object' && param[RAW_CODE_SYMBOL])) {
344
+ result += (param as RawCode).code;
345
+ } else {
346
+ // All other parameters use placeholders
347
+ // This ensures templates with the same structure always produce the same AST
348
+ const placeholder = `${PlaceholderUtils.PLACEHOLDER_PREFIX}${i}__`;
349
+ result += placeholder;
350
+ }
342
351
  }
343
352
  }
344
353
 
@@ -36,6 +36,7 @@ export {
36
36
  capture,
37
37
  any,
38
38
  param,
39
+ raw,
39
40
  _
40
41
  } from './capture';
41
42
 
@@ -18,7 +18,7 @@ import {J} from '../../java';
18
18
  import {Capture, Parameter, TemplateOptions, TemplateParameter} from './types';
19
19
  import {MatchResult} from './pattern';
20
20
  import {generateCacheKey, globalAstCache, WRAPPERS_MAP_SYMBOL} from './utils';
21
- import {CAPTURE_NAME_SYMBOL} from './capture';
21
+ import {CAPTURE_NAME_SYMBOL, RAW_CODE_SYMBOL} from './capture';
22
22
  import {TemplateEngine} from './engine';
23
23
  import {JS} from '..';
24
24
 
@@ -229,8 +229,9 @@ export class Template {
229
229
  * - Level 2: Global cache (globalAstCache) - fast, shared across all templates
230
230
  * - Level 3: TemplateEngine - slow, parses and processes the template
231
231
  *
232
- * Since all parameters are now placeholders (no primitives), templates with the same
233
- * structure always parse to the same AST regardless of parameter values.
232
+ * Most parameters use placeholders that are replaced during application, so templates
233
+ * with the same structure share cached ASTs. However, raw() parameters are spliced at
234
+ * construction time, so their values must be included in the cache key.
234
235
  *
235
236
  * @returns The cached or newly computed template tree
236
237
  * @internal
@@ -242,9 +243,17 @@ export class Template {
242
243
  }
243
244
 
244
245
  // Generate cache key for global lookup
245
- // Since all parameters use placeholders, we only need the template structure
246
+ // For raw() parameters, we need to include their code values in the key
247
+ // since they're spliced at construction time, not application time
246
248
  const contextStatements = this.options.context || this.options.imports || [];
247
- const parametersKey = this.parameters.length.toString(); // Just the count
249
+ const parametersKey = this.parameters.map((p, i) => {
250
+ const value = p.value;
251
+ // Include raw code values in the cache key using the symbol
252
+ if (value && typeof value === 'object' && value[RAW_CODE_SYMBOL]) {
253
+ return `raw:${value.code}`;
254
+ }
255
+ return i.toString();
256
+ }).join(',');
248
257
  const cacheKey = generateCacheKey(
249
258
  this.templateParts,
250
259
  parametersKey,
@@ -17,7 +17,7 @@ import {Cursor, Tree} from '../..';
17
17
  import {J, Type} from '../../java';
18
18
  import type {MatchResult, Pattern} from "./pattern";
19
19
  import type {Template} from "./template";
20
- import type {CaptureValue} from "./capture";
20
+ import type {CaptureValue, RawCode} from "./capture";
21
21
 
22
22
  /**
23
23
  * Options for variadic captures that match zero or more nodes in a sequence.
@@ -276,6 +276,7 @@ export interface PatternOptions {
276
276
  * - Capture: For pattern matching and reuse
277
277
  * - CaptureValue: Result of property access or array operations on captures (e.g., capture.prop, capture[0], capture.slice(1))
278
278
  * - TemplateParam: For standalone template parameters
279
+ * - RawCode: For inserting literal code strings at construction time
279
280
  * - Tree: AST nodes to be inserted directly
280
281
  * - Tree[]: Arrays of AST nodes (from variadic capture operations like slice)
281
282
  * - J.RightPadded<any>: Wrapper containing an element with markers (element will be extracted)
@@ -283,9 +284,9 @@ export interface PatternOptions {
283
284
  * - J.Container<any>: Container with elements (elements will be expanded)
284
285
  *
285
286
  * Note: Primitive values (string, number, boolean) are NOT supported in template literals.
286
- * Use Template.builder() API if you need to insert literal values.
287
+ * Use raw() for inserting code strings, or Template.builder() API for programmatic construction.
287
288
  */
288
- export type TemplateParameter = Capture | CaptureValue | TemplateParam | Tree | Tree[] | J.RightPadded<any> | J.RightPadded<any>[] | J.Container<any>;
289
+ export type TemplateParameter = Capture | CaptureValue | TemplateParam | RawCode | Tree | Tree[] | J.RightPadded<any> | J.RightPadded<any>[] | J.Container<any>;
289
290
 
290
291
  /**
291
292
  * Parameter specification for template generation (internal).