@typespec/compiler 0.46.0-dev.9 → 0.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/manifest.js +2 -2
  2. package/dist/src/config/config-loader.d.ts.map +1 -1
  3. package/dist/src/config/config-loader.js +1 -0
  4. package/dist/src/config/config-loader.js.map +1 -1
  5. package/dist/src/config/config-schema.d.ts.map +1 -1
  6. package/dist/src/config/config-schema.js +24 -0
  7. package/dist/src/config/config-schema.js.map +1 -1
  8. package/dist/src/config/types.d.ts +8 -1
  9. package/dist/src/config/types.d.ts.map +1 -1
  10. package/dist/src/core/checker.d.ts.map +1 -1
  11. package/dist/src/core/checker.js +13 -8
  12. package/dist/src/core/checker.js.map +1 -1
  13. package/dist/src/core/cli/args.d.ts.map +1 -1
  14. package/dist/src/core/cli/args.js +1 -0
  15. package/dist/src/core/cli/args.js.map +1 -1
  16. package/dist/src/core/helpers/index.d.ts +1 -0
  17. package/dist/src/core/helpers/index.d.ts.map +1 -1
  18. package/dist/src/core/helpers/index.js +1 -0
  19. package/dist/src/core/helpers/index.js.map +1 -1
  20. package/dist/src/core/helpers/location-context.d.ts +4 -0
  21. package/dist/src/core/helpers/location-context.d.ts.map +1 -0
  22. package/dist/src/core/helpers/location-context.js +9 -0
  23. package/dist/src/core/helpers/location-context.js.map +1 -0
  24. package/dist/src/core/helpers/type-name-utils.d.ts.map +1 -1
  25. package/dist/src/core/helpers/type-name-utils.js +8 -3
  26. package/dist/src/core/helpers/type-name-utils.js.map +1 -1
  27. package/dist/src/core/index.d.ts +1 -1
  28. package/dist/src/core/index.d.ts.map +1 -1
  29. package/dist/src/core/index.js +1 -1
  30. package/dist/src/core/index.js.map +1 -1
  31. package/dist/src/core/library.d.ts +3 -1
  32. package/dist/src/core/library.d.ts.map +1 -1
  33. package/dist/src/core/library.js +6 -1
  34. package/dist/src/core/library.js.map +1 -1
  35. package/dist/src/core/linter.d.ts +10 -0
  36. package/dist/src/core/linter.d.ts.map +1 -0
  37. package/dist/src/core/linter.js +166 -0
  38. package/dist/src/core/linter.js.map +1 -0
  39. package/dist/src/core/messages.d.ts +77 -2
  40. package/dist/src/core/messages.d.ts.map +1 -1
  41. package/dist/src/core/messages.js +27 -0
  42. package/dist/src/core/messages.js.map +1 -1
  43. package/dist/src/core/node-host.d.ts +3 -0
  44. package/dist/src/core/node-host.d.ts.map +1 -1
  45. package/dist/src/core/node-host.js +22 -1
  46. package/dist/src/core/node-host.js.map +1 -1
  47. package/dist/src/core/options.d.ts +3 -1
  48. package/dist/src/core/options.d.ts.map +1 -1
  49. package/dist/src/core/parser.d.ts.map +1 -1
  50. package/dist/src/core/parser.js +56 -29
  51. package/dist/src/core/parser.js.map +1 -1
  52. package/dist/src/core/program.d.ts +3 -17
  53. package/dist/src/core/program.d.ts.map +1 -1
  54. package/dist/src/core/program.js +90 -46
  55. package/dist/src/core/program.js.map +1 -1
  56. package/dist/src/core/schema-validator.d.ts +1 -0
  57. package/dist/src/core/schema-validator.d.ts.map +1 -1
  58. package/dist/src/core/schema-validator.js +2 -2
  59. package/dist/src/core/schema-validator.js.map +1 -1
  60. package/dist/src/core/types.d.ts +110 -11
  61. package/dist/src/core/types.d.ts.map +1 -1
  62. package/dist/src/core/types.js.map +1 -1
  63. package/dist/src/emitter-framework/asset-emitter.d.ts.map +1 -1
  64. package/dist/src/emitter-framework/asset-emitter.js +89 -45
  65. package/dist/src/emitter-framework/asset-emitter.js.map +1 -1
  66. package/dist/src/emitter-framework/type-emitter.d.ts +43 -22
  67. package/dist/src/emitter-framework/type-emitter.d.ts.map +1 -1
  68. package/dist/src/emitter-framework/type-emitter.js +90 -23
  69. package/dist/src/emitter-framework/type-emitter.js.map +1 -1
  70. package/dist/src/emitter-framework/types.d.ts +14 -4
  71. package/dist/src/emitter-framework/types.d.ts.map +1 -1
  72. package/dist/src/emitter-framework/types.js +1 -0
  73. package/dist/src/emitter-framework/types.js.map +1 -1
  74. package/dist/src/formatter/parser.d.ts.map +1 -1
  75. package/dist/src/formatter/parser.js +4 -1
  76. package/dist/src/formatter/parser.js.map +1 -1
  77. package/dist/src/formatter/print/comment-handler.d.ts +1 -1
  78. package/dist/src/formatter/print/comment-handler.d.ts.map +1 -1
  79. package/dist/src/formatter/print/comment-handler.js +37 -5
  80. package/dist/src/formatter/print/comment-handler.js.map +1 -1
  81. package/dist/src/formatter/print/needs-parens.d.ts +1 -1
  82. package/dist/src/formatter/print/needs-parens.js +1 -1
  83. package/dist/src/formatter/print/printer.d.ts +3 -1
  84. package/dist/src/formatter/print/printer.d.ts.map +1 -1
  85. package/dist/src/formatter/print/printer.js +118 -32
  86. package/dist/src/formatter/print/printer.js.map +1 -1
  87. package/dist/src/init/init-template.d.ts +3 -1
  88. package/dist/src/init/init-template.d.ts.map +1 -1
  89. package/dist/src/init/init-template.js +3 -6
  90. package/dist/src/init/init-template.js.map +1 -1
  91. package/dist/src/init/init.d.ts.map +1 -1
  92. package/dist/src/init/init.js +96 -16
  93. package/dist/src/init/init.js.map +1 -1
  94. package/dist/src/lib/decorators.d.ts +9 -0
  95. package/dist/src/lib/decorators.d.ts.map +1 -1
  96. package/dist/src/lib/decorators.js +9 -0
  97. package/dist/src/lib/decorators.js.map +1 -1
  98. package/dist/src/testing/index.d.ts +1 -0
  99. package/dist/src/testing/index.d.ts.map +1 -1
  100. package/dist/src/testing/index.js +1 -0
  101. package/dist/src/testing/index.js.map +1 -1
  102. package/dist/src/testing/rule-tester.d.ts +12 -0
  103. package/dist/src/testing/rule-tester.d.ts.map +1 -0
  104. package/dist/src/testing/rule-tester.js +34 -0
  105. package/dist/src/testing/rule-tester.js.map +1 -0
  106. package/entrypoints/cli.js +5 -0
  107. package/entrypoints/server.js +5 -0
  108. package/lib/decorators.tsp +8 -0
  109. package/package.json +12 -10
@@ -184,26 +184,28 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
184
184
  * Set reference context for a model declaration.
185
185
  * @param model
186
186
  */
187
- modelDeclarationReferenceContext(model: Model): Context;
187
+ modelDeclarationReferenceContext(model: Model, name: string): Context;
188
188
  /**
189
- * Emit a model instantiation (e.g. as created by `Foo<string>` syntax in
190
- * TypeSpec).
189
+ * Emit a model instantiation (e.g. as created by `Box<string>` syntax in
190
+ * TypeSpec). In some cases, `name` is undefined because a good name could
191
+ * not be found for the instantiation. This often occurs with for instantiations
192
+ * involving type expressions like `Box<string | int32>`.
191
193
  *
192
194
  * @param model
193
195
  * @param name The name of the instantiation as retrieved from the
194
196
  * `declarationName` method.
195
197
  */
196
- modelInstantiation(model: Model, name: string): EmitterOutput<T>;
198
+ modelInstantiation(model: Model, name: string | undefined): EmitterOutput<T>;
197
199
  /**
198
200
  * Set lexical context for a model instantiation.
199
201
  * @param model
200
202
  */
201
- modelInstantiationContext(model: Model): Context;
203
+ modelInstantiationContext(model: Model, name: string | undefined): Context;
202
204
  /**
203
205
  * Set reference context for a model declaration.
204
206
  * @param model
205
207
  */
206
- modelInstantiationReferenceContext(model: Model): Context;
208
+ modelInstantiationReferenceContext(model: Model, name: string | undefined): Context;
207
209
  /**
208
210
  * Emit a model's properties. Unless overridden, this method will emit each of
209
211
  * the model's properties and return a no emit result.
@@ -211,6 +213,8 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
211
213
  * @param model
212
214
  */
213
215
  modelProperties(model: Model): EmitterOutput<T>;
216
+ modelPropertiesContext(model: Model): Context;
217
+ modelPropertiesReferenceContext(model: Model): Context;
214
218
  /**
215
219
  * Emit a property of a model.
216
220
  *
@@ -238,16 +242,25 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
238
242
  * @param property
239
243
  */
240
244
  modelPropertyReference(property: ModelProperty): EmitterOutput<T>;
245
+ /**
246
+ * Emit an enum member reference (e.g. as created by the `SomeEnum.member` syntax
247
+ * in TypeSpec). By default, this will emit nothing.
248
+ *
249
+ * @param property the enum member
250
+ */
251
+ enumMemberReference(member: EnumMember): EmitterOutput<T>;
241
252
  arrayDeclaration(array: Model, name: string, elementType: Type): EmitterOutput<T>;
242
- arrayDeclarationContext(array: Model): Context;
243
- arrayDeclarationReferenceContext(array: Model): Context;
253
+ arrayDeclarationContext(array: Model, name: string, elementType: Type): Context;
254
+ arrayDeclarationReferenceContext(array: Model, name: string, elementType: Type): Context;
244
255
  arrayLiteral(array: Model, elementType: Type): EmitterOutput<T>;
245
- arrayLiteralContext(array: Model): Context;
246
- arrayLiteralReferenceContext(array: Model): Context;
256
+ arrayLiteralContext(array: Model, elementType: Type): Context;
257
+ arrayLiteralReferenceContext(array: Model, elementType: Type): Context;
247
258
  scalarDeclaration(scalar: Scalar, name: string): EmitterOutput<T>;
248
- scalarDeclarationContext(scalar: Scalar): Context;
259
+ scalarDeclarationContext(scalar: Scalar, name: string): Context;
260
+ scalarInstantiation(scalar: Scalar, name: string | undefined): EmitterOutput<T>;
261
+ scalarInstantiationContext(scalar: Scalar, name: string | undefined): Context;
249
262
  intrinsic(intrinsic: IntrinsicType, name: string): EmitterOutput<T>;
250
- intrinsicContext(intrinsic: IntrinsicType): Context;
263
+ intrinsicContext(intrinsic: IntrinsicType, name: string): Context;
251
264
  booleanLiteralContext(boolean: BooleanLiteral): Context;
252
265
  booleanLiteral(boolean: BooleanLiteral): EmitterOutput<T>;
253
266
  stringLiteralContext(string: StringLiteral): Context;
@@ -255,8 +268,8 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
255
268
  numericLiteralContext(number: NumericLiteral): Context;
256
269
  numericLiteral(number: NumericLiteral): EmitterOutput<T>;
257
270
  operationDeclaration(operation: Operation, name: string): EmitterOutput<T>;
258
- operationDeclarationContext(operation: Operation): Context;
259
- operationDeclarationReferenceContext(operation: Operation): Context;
271
+ operationDeclarationContext(operation: Operation, name: string): Context;
272
+ operationDeclarationReferenceContext(operation: Operation, name: string): Context;
260
273
  operationParameters(operation: Operation, parameters: Model): EmitterOutput<T>;
261
274
  operationParametersContext(operation: Operation, parameters: Model): Context;
262
275
  operationParametersReferenceContext(operation: Operation, parameters: Model): Context;
@@ -264,27 +277,30 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
264
277
  operationReturnTypeContext(operation: Operation, returnType: Type): Context;
265
278
  operationReturnTypeReferenceContext(operation: Operation, returnType: Type): Context;
266
279
  interfaceDeclaration(iface: Interface, name: string): EmitterOutput<T>;
267
- interfaceDeclarationContext(iface: Interface): Context;
268
- interfaceDeclarationReferenceContext(iface: Interface): Context;
280
+ interfaceDeclarationContext(iface: Interface, name: string): Context;
281
+ interfaceDeclarationReferenceContext(iface: Interface, name: string): Context;
269
282
  interfaceDeclarationOperations(iface: Interface): EmitterOutput<T>;
270
283
  interfaceOperationDeclaration(operation: Operation, name: string): EmitterOutput<T>;
271
- interfaceOperationDeclarationContext(operation: Operation): Context;
272
- interfaceOperationDeclarationReferenceContext(operation: Operation): Context;
284
+ interfaceOperationDeclarationContext(operation: Operation, name: string): Context;
285
+ interfaceOperationDeclarationReferenceContext(operation: Operation, name: string): Context;
273
286
  enumDeclaration(en: Enum, name: string): EmitterOutput<T>;
274
- enumDeclarationContext(en: Enum): Context;
287
+ enumDeclarationContext(en: Enum, name: string): Context;
275
288
  enumMembers(en: Enum): EmitterOutput<T>;
289
+ enumMembersContext(en: Enum): Context;
276
290
  enumMember(member: EnumMember): EmitterOutput<T>;
277
291
  enumMemberContext(member: EnumMember): {};
278
292
  unionDeclaration(union: Union, name: string): EmitterOutput<T>;
279
293
  unionDeclarationContext(union: Union): Context;
280
294
  unionDeclarationReferenceContext(union: Union): Context;
281
295
  unionInstantiation(union: Union, name: string): EmitterOutput<T>;
282
- unionInstantiationContext(union: Union): Context;
283
- unionInstantiationReferenceContext(union: Union): Context;
296
+ unionInstantiationContext(union: Union, name: string): Context;
297
+ unionInstantiationReferenceContext(union: Union, name: string): Context;
284
298
  unionLiteral(union: Union): EmitterOutput<T>;
285
299
  unionLiteralContext(union: Union): Context;
286
300
  unionLiteralReferenceContext(union: Union): Context;
287
301
  unionVariants(union: Union): EmitterOutput<T>;
302
+ unionVariantsContext(): Context;
303
+ unionVariantsReferenceContext(): Context;
288
304
  unionVariant(variant: UnionVariant): EmitterOutput<T>;
289
305
  unionVariantContext(union: Union): Context;
290
306
  unionVariantReferenceContext(union: Union): Context;
@@ -293,8 +309,9 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
293
309
  tupleLiteralValues(tuple: Tuple): EmitterOutput<T>;
294
310
  tupleLiteralReferenceContext(tuple: Tuple): Context;
295
311
  sourceFile(sourceFile: SourceFile<T>): EmittedSourceFile;
312
+ writeOutput(sourceFiles: SourceFile<T>[]): Promise<void>;
296
313
  reference(targetDeclaration: Declaration<T>, pathUp: Scope<T>[], pathDown: Scope<T>[], commonScope: Scope<T> | null): EmitEntity<T> | T;
297
- declarationName(declarationType: TypeSpecDeclaration): string;
314
+ declarationName(declarationType: TypeSpecDeclaration): string | undefined;
298
315
  }
299
316
  /**
300
317
  * A subclass of `TypeEmitter<string>` that makes working with strings a bit easier.
@@ -306,9 +323,13 @@ export declare class TypeEmitter<T, TOptions extends object = Record<string, nev
306
323
  export declare class CodeTypeEmitter<TOptions extends object = Record<string, never>> extends TypeEmitter<string, TOptions> {
307
324
  modelProperties(model: Model): EmitterOutput<string>;
308
325
  interfaceDeclarationOperations(iface: Interface): EmitterOutput<string>;
326
+ interfaceDeclarationOperationsContext(iface: Interface): Context;
327
+ interfaceDeclarationOperationsReferenceContext(iface: Interface): Context;
309
328
  enumMembers(en: Enum): EmitterOutput<string>;
310
329
  unionVariants(union: Union): EmitterOutput<string>;
311
330
  tupleLiteralValues(tuple: Tuple): EmitterOutput<string>;
331
+ tupleLiteralValuesContext(tuple: Tuple): Context;
332
+ tupleLiteralValuesReferenceContext(tuple: Tuple): Context;
312
333
  reference(targetDeclaration: Declaration<string>, pathUp: Scope<string>[], pathDown: Scope<string>[], commonScope: Scope<string> | null): string | EmitEntity<string>;
313
334
  }
314
335
  //# sourceMappingURL=type-emitter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-emitter.d.ts","sourceRoot":"","sources":["../../../src/emitter-framework/type-emitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-emitter.d.ts","sourceRoot":"","sources":["../../../src/emitter-framework/type-emitter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { compilerAssert, isTemplateDeclaration, } from "../core/index.js";
1
+ import { compilerAssert, emitFile, isTemplateDeclaration, } from "../core/index.js";
2
2
  import { code, StringBuilder } from "./builders/string-builder.js";
3
3
  /**
4
4
  * Implement emitter logic by extending this class and passing it to
@@ -238,12 +238,14 @@ export class TypeEmitter {
238
238
  * Set reference context for a model declaration.
239
239
  * @param model
240
240
  */
241
- modelDeclarationReferenceContext(model) {
241
+ modelDeclarationReferenceContext(model, name) {
242
242
  return {};
243
243
  }
244
244
  /**
245
- * Emit a model instantiation (e.g. as created by `Foo<string>` syntax in
246
- * TypeSpec).
245
+ * Emit a model instantiation (e.g. as created by `Box<string>` syntax in
246
+ * TypeSpec). In some cases, `name` is undefined because a good name could
247
+ * not be found for the instantiation. This often occurs with for instantiations
248
+ * involving type expressions like `Box<string | int32>`.
247
249
  *
248
250
  * @param model
249
251
  * @param name The name of the instantiation as retrieved from the
@@ -260,14 +262,14 @@ export class TypeEmitter {
260
262
  * Set lexical context for a model instantiation.
261
263
  * @param model
262
264
  */
263
- modelInstantiationContext(model) {
265
+ modelInstantiationContext(model, name) {
264
266
  return {};
265
267
  }
266
268
  /**
267
269
  * Set reference context for a model declaration.
268
270
  * @param model
269
271
  */
270
- modelInstantiationReferenceContext(model) {
272
+ modelInstantiationReferenceContext(model, name) {
271
273
  return {};
272
274
  }
273
275
  /**
@@ -282,6 +284,12 @@ export class TypeEmitter {
282
284
  }
283
285
  return this.emitter.result.none();
284
286
  }
287
+ modelPropertiesContext(model) {
288
+ return {};
289
+ }
290
+ modelPropertiesReferenceContext(model) {
291
+ return {};
292
+ }
285
293
  /**
286
294
  * Emit a property of a model.
287
295
  *
@@ -318,23 +326,32 @@ export class TypeEmitter {
318
326
  modelPropertyReference(property) {
319
327
  return this.emitter.emitTypeReference(property.type);
320
328
  }
329
+ /**
330
+ * Emit an enum member reference (e.g. as created by the `SomeEnum.member` syntax
331
+ * in TypeSpec). By default, this will emit nothing.
332
+ *
333
+ * @param property the enum member
334
+ */
335
+ enumMemberReference(member) {
336
+ return this.emitter.result.none();
337
+ }
321
338
  arrayDeclaration(array, name, elementType) {
322
339
  this.emitter.emitType(array.indexer.value);
323
340
  return this.emitter.result.none();
324
341
  }
325
- arrayDeclarationContext(array) {
342
+ arrayDeclarationContext(array, name, elementType) {
326
343
  return {};
327
344
  }
328
- arrayDeclarationReferenceContext(array) {
345
+ arrayDeclarationReferenceContext(array, name, elementType) {
329
346
  return {};
330
347
  }
331
348
  arrayLiteral(array, elementType) {
332
349
  return this.emitter.result.none();
333
350
  }
334
- arrayLiteralContext(array) {
351
+ arrayLiteralContext(array, elementType) {
335
352
  return {};
336
353
  }
337
- arrayLiteralReferenceContext(array) {
354
+ arrayLiteralReferenceContext(array, elementType) {
338
355
  return {};
339
356
  }
340
357
  scalarDeclaration(scalar, name) {
@@ -343,13 +360,19 @@ export class TypeEmitter {
343
360
  }
344
361
  return this.emitter.result.none();
345
362
  }
346
- scalarDeclarationContext(scalar) {
363
+ scalarDeclarationContext(scalar, name) {
364
+ return {};
365
+ }
366
+ scalarInstantiation(scalar, name) {
367
+ return this.emitter.result.none();
368
+ }
369
+ scalarInstantiationContext(scalar, name) {
347
370
  return {};
348
371
  }
349
372
  intrinsic(intrinsic, name) {
350
373
  return this.emitter.result.none();
351
374
  }
352
- intrinsicContext(intrinsic) {
375
+ intrinsicContext(intrinsic, name) {
353
376
  return {};
354
377
  }
355
378
  booleanLiteralContext(boolean) {
@@ -375,10 +398,10 @@ export class TypeEmitter {
375
398
  this.emitter.emitOperationReturnType(operation);
376
399
  return this.emitter.result.none();
377
400
  }
378
- operationDeclarationContext(operation) {
401
+ operationDeclarationContext(operation, name) {
379
402
  return {};
380
403
  }
381
- operationDeclarationReferenceContext(operation) {
404
+ operationDeclarationReferenceContext(operation, name) {
382
405
  return {};
383
406
  }
384
407
  operationParameters(operation, parameters) {
@@ -403,10 +426,10 @@ export class TypeEmitter {
403
426
  this.emitter.emitInterfaceOperations(iface);
404
427
  return this.emitter.result.none();
405
428
  }
406
- interfaceDeclarationContext(iface) {
429
+ interfaceDeclarationContext(iface, name) {
407
430
  return {};
408
431
  }
409
- interfaceDeclarationReferenceContext(iface) {
432
+ interfaceDeclarationReferenceContext(iface, name) {
410
433
  return {};
411
434
  }
412
435
  interfaceDeclarationOperations(iface) {
@@ -420,17 +443,17 @@ export class TypeEmitter {
420
443
  this.emitter.emitOperationReturnType(operation);
421
444
  return this.emitter.result.none();
422
445
  }
423
- interfaceOperationDeclarationContext(operation) {
446
+ interfaceOperationDeclarationContext(operation, name) {
424
447
  return {};
425
448
  }
426
- interfaceOperationDeclarationReferenceContext(operation) {
449
+ interfaceOperationDeclarationReferenceContext(operation, name) {
427
450
  return {};
428
451
  }
429
452
  enumDeclaration(en, name) {
430
453
  this.emitter.emitEnumMembers(en);
431
454
  return this.emitter.result.none();
432
455
  }
433
- enumDeclarationContext(en) {
456
+ enumDeclarationContext(en, name) {
434
457
  return {};
435
458
  }
436
459
  enumMembers(en) {
@@ -439,6 +462,9 @@ export class TypeEmitter {
439
462
  }
440
463
  return this.emitter.result.none();
441
464
  }
465
+ enumMembersContext(en) {
466
+ return {};
467
+ }
442
468
  enumMember(member) {
443
469
  return this.emitter.result.none();
444
470
  }
@@ -459,10 +485,10 @@ export class TypeEmitter {
459
485
  this.emitter.emitUnionVariants(union);
460
486
  return this.emitter.result.none();
461
487
  }
462
- unionInstantiationContext(union) {
488
+ unionInstantiationContext(union, name) {
463
489
  return {};
464
490
  }
465
- unionInstantiationReferenceContext(union) {
491
+ unionInstantiationReferenceContext(union, name) {
466
492
  return {};
467
493
  }
468
494
  unionLiteral(union) {
@@ -481,6 +507,12 @@ export class TypeEmitter {
481
507
  }
482
508
  return this.emitter.result.none();
483
509
  }
510
+ unionVariantsContext() {
511
+ return {};
512
+ }
513
+ unionVariantsReferenceContext() {
514
+ return {};
515
+ }
484
516
  unionVariant(variant) {
485
517
  this.emitter.emitTypeReference(variant.type);
486
518
  return this.emitter.result.none();
@@ -517,12 +549,21 @@ export class TypeEmitter {
517
549
  }
518
550
  return emittedSourceFile;
519
551
  }
552
+ async writeOutput(sourceFiles) {
553
+ for (const file of sourceFiles) {
554
+ const outputFile = this.emitter.emitSourceFile(file);
555
+ await emitFile(this.emitter.getProgram(), {
556
+ path: outputFile.path,
557
+ content: outputFile.contents,
558
+ });
559
+ }
560
+ }
520
561
  reference(targetDeclaration, pathUp, pathDown, commonScope) {
521
562
  return this.emitter.result.none();
522
563
  }
523
564
  declarationName(declarationType) {
524
565
  compilerAssert(declarationType.name !== undefined, "Can't emit a declaration that doesn't have a name.");
525
- if (declarationType.kind === "Enum") {
566
+ if (declarationType.kind === "Enum" || declarationType.kind === "Intrinsic") {
526
567
  return declarationType.name;
527
568
  }
528
569
  // for operations inside interfaces, we don't want to do the fancy thing because it will make
@@ -533,6 +574,7 @@ export class TypeEmitter {
533
574
  if (!declarationType.templateMapper) {
534
575
  return declarationType.name;
535
576
  }
577
+ let unspeakable = false;
536
578
  const parameterNames = declarationType.templateMapper.args.map((t) => {
537
579
  switch (t.kind) {
538
580
  case "Model":
@@ -541,12 +583,25 @@ export class TypeEmitter {
541
583
  case "Operation":
542
584
  case "Enum":
543
585
  case "Union":
586
+ case "Intrinsic":
587
+ if (!t.name) {
588
+ unspeakable = true;
589
+ return undefined;
590
+ }
544
591
  const declName = this.emitter.emitDeclarationName(t);
592
+ if (declName === undefined) {
593
+ unspeakable = true;
594
+ return undefined;
595
+ }
545
596
  return declName[0].toUpperCase() + declName.slice(1);
546
597
  default:
547
- compilerAssert(false, `Can't get a declaration name for non-declaration type ${t.kind} used to instantiate a template.`);
598
+ unspeakable = true;
599
+ return undefined;
548
600
  }
549
601
  });
602
+ if (unspeakable) {
603
+ return undefined;
604
+ }
550
605
  return declarationType.name + parameterNames.join("");
551
606
  }
552
607
  }
@@ -577,6 +632,12 @@ export class CodeTypeEmitter extends TypeEmitter {
577
632
  }
578
633
  return builder.reduce();
579
634
  }
635
+ interfaceDeclarationOperationsContext(iface) {
636
+ return {};
637
+ }
638
+ interfaceDeclarationOperationsReferenceContext(iface) {
639
+ return {};
640
+ }
580
641
  enumMembers(en) {
581
642
  const builder = new StringBuilder();
582
643
  let i = 0;
@@ -605,6 +666,12 @@ export class CodeTypeEmitter extends TypeEmitter {
605
666
  }
606
667
  return builder.reduce();
607
668
  }
669
+ tupleLiteralValuesContext(tuple) {
670
+ return {};
671
+ }
672
+ tupleLiteralValuesReferenceContext(tuple) {
673
+ return {};
674
+ }
608
675
  reference(targetDeclaration, pathUp, pathDown, commonScope) {
609
676
  const basePath = pathDown.map((s) => s.name).join(".");
610
677
  return basePath
@@ -1 +1 @@
1
- {"version":3,"file":"type-emitter.js","sourceRoot":"","sources":["../../../src/emitter-framework/type-emitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-emitter.js","sourceRoot":"","sources":["../../../src/emitter-framework/type-emitter.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { Enum, Interface, Model, ModelProperty, Operation, Program, Scalar, Tuple, Type, Union } from "../core/index.js";
1
+ import { Enum, Interface, IntrinsicType, Model, ModelProperty, Operation, Program, Scalar, Tuple, Type, Union } from "../core/index.js";
2
2
  import { Placeholder } from "./placeholder.js";
3
+ import { TypeEmitter } from "./type-emitter.js";
3
4
  type AssetEmitterOptions<TOptions extends object> = {
4
5
  noEmit: boolean;
5
6
  emitterOutputDir: string;
@@ -15,7 +16,7 @@ export interface AssetEmitter<T, TOptions extends object = Record<string, unknow
15
16
  getOptions(): AssetEmitterOptions<TOptions>;
16
17
  getProgram(): Program;
17
18
  emitTypeReference(type: Type): EmitEntity<T>;
18
- emitDeclarationName(type: TypeSpecDeclaration): string;
19
+ emitDeclarationName(type: TypeSpecDeclaration): string | undefined;
19
20
  emitType(type: Type): EmitEntity<T>;
20
21
  emitProgram(options?: {
21
22
  emitGlobalNamespace?: boolean;
@@ -30,6 +31,7 @@ export interface AssetEmitter<T, TOptions extends object = Record<string, unknow
30
31
  emitEnumMembers(en: Enum): EmitEntity<T>;
31
32
  emitUnionVariants(union: Union): EmitEntity<T>;
32
33
  emitTupleLiteralValues(tuple: Tuple): EmitEntity<T>;
34
+ emitSourceFile(sourceFile: SourceFile<T>): EmittedSourceFile;
33
35
  /**
34
36
  * Create a source file.
35
37
  *
@@ -70,6 +72,7 @@ export interface SourceFile<T> {
70
72
  path: string;
71
73
  globalScope: Scope<T>;
72
74
  imports: Map<string, string[]>;
75
+ meta: Record<string, any>;
73
76
  }
74
77
  export interface EmittedSourceFile {
75
78
  contents: string;
@@ -83,6 +86,7 @@ export declare class Declaration<T> extends EmitterResult {
83
86
  scope: Scope<T>;
84
87
  value: T | Placeholder<T>;
85
88
  kind: "declaration";
89
+ meta: Record<string, any>;
86
90
  constructor(name: string, scope: Scope<T>, value: T | Placeholder<T>);
87
91
  }
88
92
  export declare class RawCode<T> extends EmitterResult {
@@ -107,7 +111,7 @@ export interface AssetTagInstance {
107
111
  export type AssetTagFactory = {
108
112
  (value: string): AssetTagInstance;
109
113
  };
110
- export type TypeSpecDeclaration = Model | Interface | Union | Operation | Enum | Scalar;
114
+ export type TypeSpecDeclaration = Model | Interface | Union | Operation | Enum | Scalar | IntrinsicType;
111
115
  export interface ContextState {
112
116
  lexicalContext: Record<string, any>;
113
117
  referenceContext: Record<string, any>;
@@ -116,8 +120,14 @@ export type Context = Record<string, any>;
116
120
  export type ESRecord = Record<string, any> & {
117
121
  _record: true;
118
122
  };
123
+ type EndingWith<Names, Name extends string> = Names extends `${infer _X}${Name}` ? Names : never;
124
+ export type TypeEmitterMethod = keyof Omit<TypeEmitter<any, any>, "sourceFile" | "declarationName" | "reference" | "emitValue" | "writeOutput" | EndingWith<keyof TypeEmitter<any, any>, "Context">>;
125
+ export interface LexicalTypeStackEntry {
126
+ method: TypeEmitterMethod;
127
+ args: any[];
128
+ }
119
129
  export interface EmitterState {
120
- lexicalTypeStack: Type[];
130
+ lexicalTypeStack: LexicalTypeStackEntry[];
121
131
  context: ContextState;
122
132
  }
123
133
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/emitter-framework/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/emitter-framework/types.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export class Declaration extends EmitterResult {
11
11
  this.scope = scope;
12
12
  this.value = value;
13
13
  this.kind = "declaration";
14
+ this.meta = {};
14
15
  }
15
16
  }
16
17
  export class RawCode extends EmitterResult {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/emitter-framework/types.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAqF/C,MAAM,OAAO,aAAa;CAAG;AAC7B,MAAM,OAAO,WAAe,SAAQ,aAAa;IAG/C,YAAmB,IAAY,EAAS,KAAe,EAAS,KAAyB;QACvF,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;SACxC;QAED,KAAK,EAAE,CAAC;QALS,SAAI,GAAJ,IAAI,CAAQ;QAAS,UAAK,GAAL,KAAK,CAAU;QAAS,UAAK,GAAL,KAAK,CAAoB;QAFlF,SAAI,GAAG,aAAsB,CAAC;IAQrC,CAAC;CACF;AAED,MAAM,OAAO,OAAW,SAAQ,aAAa;IAG3C,YAAmB,KAAyB;QAC1C,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;SACxC;QAED,KAAK,EAAE,CAAC;QALS,UAAK,GAAL,KAAK,CAAoB;QAFrC,SAAI,GAAG,MAAe,CAAC;IAQ9B,CAAC;CACF;AAED,MAAM,OAAO,MAAO,SAAQ,aAAa;IAAzC;;QACS,SAAI,GAAG,MAAe,CAAC;IAChC,CAAC;CAAA;AAED,MAAM,OAAO,YAAa,SAAQ,aAAa;IAE7C,YAAmB,aAA2C;QAC5D,KAAK,EAAE,CAAC;QADS,kBAAa,GAAb,aAAa,CAA8B;QADvD,SAAI,GAAG,UAAmB,CAAC;IAGlC,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/emitter-framework/types.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAuF/C,MAAM,OAAO,aAAa;CAAG;AAC7B,MAAM,OAAO,WAAe,SAAQ,aAAa;IAI/C,YAAmB,IAAY,EAAS,KAAe,EAAS,KAAyB;QACvF,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;SACxC;QAED,KAAK,EAAE,CAAC;QALS,SAAI,GAAJ,IAAI,CAAQ;QAAS,UAAK,GAAL,KAAK,CAAU;QAAS,UAAK,GAAL,KAAK,CAAoB;QAHlF,SAAI,GAAG,aAAsB,CAAC;QAC9B,SAAI,GAAwB,EAAE,CAAC;IAQtC,CAAC;CACF;AAED,MAAM,OAAO,OAAW,SAAQ,aAAa;IAG3C,YAAmB,KAAyB;QAC1C,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;SACxC;QAED,KAAK,EAAE,CAAC;QALS,UAAK,GAAL,KAAK,CAAoB;QAFrC,SAAI,GAAG,MAAe,CAAC;IAQ9B,CAAC;CACF;AAED,MAAM,OAAO,MAAO,SAAQ,aAAa;IAAzC;;QACS,SAAI,GAAG,MAAe,CAAC;IAChC,CAAC;CAAA;AAED,MAAM,OAAO,YAAa,SAAQ,aAAa;IAE7C,YAAmB,aAA2C;QAC5D,KAAK,EAAE,CAAC;QADS,kBAAa,GAAb,aAAa,CAA8B;QADvD,SAAI,GAAG,UAAmB,CAAC;IAGlC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/formatter/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAoB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEpF,wBAAgB,KAAK,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACzC,IAAI,EAAE,aAAa,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C,kBAAkB,CAUpB;AAwBD,qBAAa,mBAAoB,SAAQ,KAAK;aAET,KAAK,EAAE,UAAU;IAD7C,GAAG,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;gBACR,KAAK,EAAE,UAAU;CAQrD"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/formatter/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAoB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGpF,wBAAgB,KAAK,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACzC,IAAI,EAAE,aAAa,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C,kBAAkB,CAcpB;AAwBD,qBAAa,mBAAoB,SAAQ,KAAK;aAET,KAAK,EAAE,UAAU;IAD7C,GAAG,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;gBACR,KAAK,EAAE,UAAU;CAQrD"}