@typespec/compiler 0.67.0-dev.28 → 0.67.0-dev.31

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 (39) hide show
  1. package/dist/manifest.js +2 -2
  2. package/dist/src/ast/index.d.ts +14 -0
  3. package/dist/src/ast/index.d.ts.map +1 -0
  4. package/dist/src/ast/index.js +13 -0
  5. package/dist/src/ast/index.js.map +1 -0
  6. package/dist/src/core/checker.d.ts +5 -16
  7. package/dist/src/core/checker.d.ts.map +1 -1
  8. package/dist/src/core/checker.js.map +1 -1
  9. package/dist/src/core/program.d.ts +5 -7
  10. package/dist/src/core/program.d.ts.map +1 -1
  11. package/dist/src/core/program.js.map +1 -1
  12. package/dist/src/core/types.d.ts +0 -24
  13. package/dist/src/core/types.d.ts.map +1 -1
  14. package/dist/src/core/types.js.map +1 -1
  15. package/dist/src/formatter/print/comment-handler.js +1 -0
  16. package/dist/src/formatter/print/comment-handler.js.map +1 -1
  17. package/dist/src/index.d.ts +8 -10
  18. package/dist/src/index.d.ts.map +1 -1
  19. package/dist/src/index.js +14 -9
  20. package/dist/src/index.js.map +1 -1
  21. package/dist/src/testing/code-fix-testing.js +1 -1
  22. package/dist/src/testing/code-fix-testing.js.map +1 -1
  23. package/dist/src/testing/expect.d.ts +1 -7
  24. package/dist/src/testing/expect.d.ts.map +1 -1
  25. package/dist/src/testing/expect.js +0 -12
  26. package/dist/src/testing/expect.js.map +1 -1
  27. package/dist/src/testing/index.d.ts +6 -6
  28. package/dist/src/testing/index.d.ts.map +1 -1
  29. package/dist/src/testing/index.js +5 -6
  30. package/dist/src/testing/index.js.map +1 -1
  31. package/dist/src/testing/source-utils.d.ts +20 -0
  32. package/dist/src/testing/source-utils.d.ts.map +1 -0
  33. package/dist/src/testing/source-utils.js +23 -0
  34. package/dist/src/testing/source-utils.js.map +1 -0
  35. package/dist/src/testing/test-server-host.d.ts +0 -19
  36. package/dist/src/testing/test-server-host.d.ts.map +1 -1
  37. package/dist/src/testing/test-server-host.js +0 -22
  38. package/dist/src/testing/test-server-host.js.map +1 -1
  39. package/package.json +4 -1
package/dist/manifest.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export default {
2
- "version": "0.67.0-dev.28",
3
- "commit": "0d66462b1fbf3fc2d5fc0f3e0207c5fe07366a9b"
2
+ "version": "0.67.0-dev.31",
3
+ "commit": "c367f3ea856542569c8b327a9a8fbff04a953db8"
4
4
  };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file exposes all AST nodes and types.
3
+ * Using the TypeSpec Abstract Syntax Tree is considered an advanced usage of the compiler and may change at any time without notice.
4
+ * **Note**: this is not the same thing as the _type graph_ (`Type` and its variants), Libraries depend on the abstract syntax tree _at their own risk_!
5
+ * Please see breaking change policy https://typespec.io/docs/handbook/breaking-change-policy/
6
+ *
7
+ * Some reasons you might want to use the AST:
8
+ * - Writing a codefix: You might need to manipulate the AST to fix code. Understand that your fix might break but this should not be critical to the user.
9
+ * - A workaround for a missing feature: Understand that your workaround might break.
10
+ */
11
+ export { NodeFlags, SyntaxKind } from "../core/types.js";
12
+ export { exprIsBareIdentifier, getFirstAncestor, getIdentifierContext, getNodeAtPosition, getNodeAtPositionDetail, hasParseError, isImportStatement, parse, parseStandaloneTypeReference, positionInRange, visitChildren, type NodeCallback, } from "../core/parser.js";
13
+ export type { AliasStatementNode, AnyKeywordNode, ArrayExpressionNode, ArrayLiteralNode, AugmentDecoratorStatementNode, BaseNode, BooleanLiteralNode, CallExpressionNode, ConstStatementNode, DeclarationNode, DecoratorDeclarationStatementNode, DecoratorExpressionNode, DirectiveExpressionNode, DocErrorsTagNode, DocNode, DocParamTagNode, DocPropTagNode, DocReturnsTagNode, DocTag, DocTagBaseNode, DocTemplateTagNode, DocTextNode, DocUnknownTagNode, EmptyStatementNode, EnumMemberNode, EnumSpreadMemberNode, EnumStatementNode, ExternKeywordNode, FunctionDeclarationStatementNode, FunctionParameterNode, IdentifierNode, ImportStatementNode, InterfaceStatementNode, IntersectionExpressionNode, InvalidStatementNode, JsNamespaceDeclarationNode, JsSourceFileNode, LiteralNode, MemberContainerNode, MemberExpressionNode, MemberNode, ModelExpressionNode, ModelPropertyNode, ModelSpreadPropertyNode, ModelStatementNode, NamespaceStatementNode, NeverKeywordNode, Node, NumericLiteralNode, ObjectLiteralNode, ObjectLiteralPropertyNode, ObjectLiteralSpreadPropertyNode, OperationSignatureDeclarationNode, OperationSignatureReferenceNode, OperationStatementNode, ScalarConstructorNode, ScalarStatementNode, ScopeNode, StringLiteralNode, StringTemplateExpressionNode, StringTemplateHeadNode, StringTemplateLiteralLikeNode, StringTemplateMiddleNode, StringTemplateSpanNode, StringTemplateTailNode, TemplateArgumentNode, TemplateDeclarationNode, TemplateParameterDeclarationNode, TemplateableNode, TupleExpressionNode, TypeOfExpressionNode, TypeReferenceNode, TypeSpecScriptNode, UnionExpressionNode, UnionStatementNode, UnionVariantNode, UsingStatementNode, ValueOfExpressionNode, VoidKeywordNode, } from "../core/types.js";
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ast/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,aAAa,EACb,KAAK,YAAY,GAClB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,EAC7B,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,iCAAiC,EACjC,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,OAAO,EACP,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,gCAAgC,EAChC,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,IAAI,EACJ,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,+BAA+B,EAC/B,iCAAiC,EACjC,+BAA+B,EAC/B,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EACtB,6BAA6B,EAC7B,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,gCAAgC,EAChC,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,GAChB,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * This file exposes all AST nodes and types.
3
+ * Using the TypeSpec Abstract Syntax Tree is considered an advanced usage of the compiler and may change at any time without notice.
4
+ * **Note**: this is not the same thing as the _type graph_ (`Type` and its variants), Libraries depend on the abstract syntax tree _at their own risk_!
5
+ * Please see breaking change policy https://typespec.io/docs/handbook/breaking-change-policy/
6
+ *
7
+ * Some reasons you might want to use the AST:
8
+ * - Writing a codefix: You might need to manipulate the AST to fix code. Understand that your fix might break but this should not be critical to the user.
9
+ * - A workaround for a missing feature: Understand that your workaround might break.
10
+ */
11
+ export { SyntaxKind } from "../core/types.js";
12
+ export { exprIsBareIdentifier, getFirstAncestor, getIdentifierContext, getNodeAtPosition, getNodeAtPositionDetail, hasParseError, isImportStatement, parse, parseStandaloneTypeReference, positionInRange, visitChildren, } from "../core/parser.js";
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ast/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,KAAK,EACL,4BAA4B,EAC5B,eAAe,EACf,aAAa,GAEd,MAAM,mBAAmB,CAAC"}
@@ -1,21 +1,16 @@
1
1
  import { NameResolver } from "./name-resolver.js";
2
2
  import type { Program } from "./program.js";
3
- import { BooleanLiteral, BooleanLiteralNode, Diagnostic, DiagnosticTarget, Entity, ErrorType, IdentifierNode, IntrinsicScalarName, LiteralNode, LiteralType, Model, ModelProperty, Namespace, NeverType, Node, NullType, NumericLiteral, NumericLiteralNode, Scalar, StdTypeName, StdTypes, StringLiteral, StringLiteralNode, Sym, Type, TypeReferenceNode, TypeSpecScriptNode, UnknownType, Value, VoidType } from "./types.js";
3
+ import { BooleanLiteral, BooleanLiteralNode, Diagnostic, DiagnosticTarget, Entity, ErrorType, IntrinsicScalarName, Model, ModelProperty, NeverType, Node, NullType, NumericLiteral, NumericLiteralNode, Scalar, StdTypeName, StdTypes, StringLiteral, StringLiteralNode, Sym, Type, UnknownType, Value, VoidType } from "./types.js";
4
4
  export type CreateTypeProps = Omit<Type, "isFinished" | "entityKind" | keyof TypePrototype>;
5
5
  export interface Checker {
6
- typePrototype: TypePrototype;
6
+ /**
7
+ * Using this API involves working with the TypeSpec Ast and may change at any time.
8
+ * See https://typespec.io/docs/handbook/breaking-change-policy/
9
+ */
7
10
  getTypeForNode(node: Node): Type;
8
- checkSourceFile(file: TypeSpecScriptNode): void;
9
- getGlobalNamespaceType(): Namespace;
10
- getLiteralType(node: StringLiteralNode): StringLiteral;
11
- getLiteralType(node: NumericLiteralNode): NumericLiteral;
12
- getLiteralType(node: BooleanLiteralNode): BooleanLiteral;
13
- getLiteralType(node: LiteralNode): LiteralType;
14
11
  cloneType<T extends Type>(type: T, additionalProps?: {
15
12
  [P in keyof T]?: T[P];
16
13
  }): T;
17
- resolveRelatedSymbols(node: IdentifierNode): Sym[] | undefined;
18
- resolveCompletions(node: IdentifierNode): Map<string, TypeSpecCompletionItem>;
19
14
  createType<T extends Type extends any ? CreateTypeProps : never>(typeDef: T): T & TypePrototype & {
20
15
  isFinished: boolean;
21
16
  readonly entityKind: "Type";
@@ -61,12 +56,6 @@ export interface Checker {
61
56
  * @param value
62
57
  */
63
58
  getValueExactType(value: Value): Type | undefined;
64
- /**
65
- * Check and resolve a type for the given type reference node.
66
- * @param node Node.
67
- * @returns Resolved type and diagnostics if there was an error.
68
- */
69
- resolveTypeReference(node: TypeReferenceNode): [Type | undefined, readonly Diagnostic[]];
70
59
  readonly errorType: ErrorType;
71
60
  readonly voidType: VoidType;
72
61
  readonly neverType: NeverType;
@@ -1 +1 @@
1
- {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/core/checker.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AASlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAY5C,OAAO,EAML,cAAc,EACd,kBAAkB,EAWlB,UAAU,EACV,gBAAgB,EAEhB,MAAM,EAMN,SAAS,EAMT,cAAc,EAKd,mBAAmB,EAEnB,WAAW,EACX,WAAW,EAQX,KAAK,EAGL,aAAa,EAIb,SAAS,EAET,SAAS,EACT,IAAI,EACJ,QAAQ,EAER,cAAc,EACd,kBAAkB,EASlB,MAAM,EAMN,WAAW,EACX,QAAQ,EACR,aAAa,EACb,iBAAiB,EAUjB,GAAG,EAaH,IAAI,EAIJ,iBAAiB,EACjB,kBAAkB,EAMlB,WAAW,EAEX,KAAK,EACL,QAAQ,EACT,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,GAAG,MAAM,aAAa,CAAC,CAAC;AAE5F,MAAM,WAAW,OAAO;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAIjC,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChD,sBAAsB,IAAI,SAAS,CAAC;IACpC,cAAc,CAAC,IAAI,EAAE,iBAAiB,GAAG,aAAa,CAAC;IACvD,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CAAC;IACzD,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CAAC;IACzD,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAAC;IAC/C,SAAS,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,eAAe,CAAC,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAAE,GAAG,CAAC,CAAC;IACnF,qBAAqB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,EAAE,GAAG,SAAS,CAAC;IAC/D,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAC9E,UAAU,CAAC,CAAC,SAAS,IAAI,SAAS,GAAG,GAAG,eAAe,GAAG,KAAK,EAC7D,OAAO,EAAE,CAAC,GACT,CAAC,GAAG,aAAa,GAAG;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,mBAAmB,CAAC,CAAC,SAAS,IAAI,SAAS,GAAG,GAAG,eAAe,GAAG,KAAK,EACtE,OAAO,EAAE,CAAC,GACT,CAAC,GAAG,aAAa,CAAC;IACrB,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1C,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,iBAAiB,GAAG,aAAa,CAAC;IAC1E,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,kBAAkB,GAAG,cAAc,CAAC;IAC5E,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,kBAAkB,GAAG,cAAc,CAAC;IAC7E,iBAAiB,CACf,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAChC,IAAI,CAAC,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,kBAAkB,GACjE,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IACnD,iBAAiB,CACf,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAChC,IAAI,CAAC,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,kBAAkB,GACjE,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IAEnD;;;;;;OAMG;IACH,kBAAkB,CAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,gBAAgB,GACjC,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC;IAEpC;;;;OAIG;IACH,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI,IAAI,MAAM,GAAG;QAAE,IAAI,EAAE,mBAAmB,CAAA;KAAE,CAAC;IAClD,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,IAAI,IAAI,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;IAEnF;;;OAGG;IACH,UAAU,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE3D;;;;;;;;OAQG;IACH,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IAClD;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,CAAC,IAAI,GAAG,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC;IAWzF,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC/B;AAED,UAAU,aAAa;CAAG;AAE1B,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,GAAG,CAAC;IAET;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AASD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CA2oL/E;AAgED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,GAC5C,KAAK,CAyEP;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,GAC3C,KAAK,CAqCP;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,GAAG,SAAS,CAcxF;AAED;;;;;;;GAOG;AACH,wBAAiB,uBAAuB,CAAC,KAAK,EAAE,KAAK,2CAapD;AAYD,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAEpF"}
1
+ {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/core/checker.ts"],"names":[],"mappings":"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"}