@typespec/compiler 0.67.0-dev.11 → 0.67.0-dev.12
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/manifest.js +2 -2
- package/dist/src/core/binder.d.ts.map +1 -1
- package/dist/src/core/binder.js +17 -130
- package/dist/src/core/binder.js.map +1 -1
- package/dist/src/core/checker.d.ts +3 -8
- package/dist/src/core/checker.d.ts.map +1 -1
- package/dist/src/core/checker.js +30 -674
- package/dist/src/core/checker.js.map +1 -1
- package/dist/src/core/decorator-utils.d.ts.map +1 -1
- package/dist/src/core/decorator-utils.js +1 -3
- package/dist/src/core/decorator-utils.js.map +1 -1
- package/dist/src/core/diagnostics.d.ts +0 -6
- package/dist/src/core/diagnostics.d.ts.map +1 -1
- package/dist/src/core/diagnostics.js +2 -11
- package/dist/src/core/diagnostics.js.map +1 -1
- package/dist/src/core/inspector/symbol.d.ts.map +1 -1
- package/dist/src/core/inspector/symbol.js +9 -11
- package/dist/src/core/inspector/symbol.js.map +1 -1
- package/dist/src/core/messages.d.ts +20 -40
- package/dist/src/core/messages.d.ts.map +1 -1
- package/dist/src/core/messages.js +6 -10
- package/dist/src/core/messages.js.map +1 -1
- package/dist/src/core/name-resolver.d.ts.map +1 -1
- package/dist/src/core/name-resolver.js +12 -23
- package/dist/src/core/name-resolver.js.map +1 -1
- package/dist/src/core/parser.d.ts.map +1 -1
- package/dist/src/core/parser.js +0 -642
- package/dist/src/core/parser.js.map +1 -1
- package/dist/src/core/program.d.ts +1 -10
- package/dist/src/core/program.d.ts.map +1 -1
- package/dist/src/core/program.js +2 -7
- package/dist/src/core/program.js.map +1 -1
- package/dist/src/core/semantic-walker.d.ts.map +1 -1
- package/dist/src/core/semantic-walker.js +0 -9
- package/dist/src/core/semantic-walker.js.map +1 -1
- package/dist/src/core/state-accessors.d.ts +53 -12
- package/dist/src/core/state-accessors.d.ts.map +1 -1
- package/dist/src/core/state-accessors.js +75 -48
- package/dist/src/core/state-accessors.js.map +1 -1
- package/dist/src/core/type-relation-checker.d.ts.map +1 -1
- package/dist/src/core/type-relation-checker.js +3 -6
- package/dist/src/core/type-relation-checker.js.map +1 -1
- package/dist/src/core/type-utils.js +2 -2
- package/dist/src/core/type-utils.js.map +1 -1
- package/dist/src/core/types.d.ts +41 -274
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js +24 -55
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/core/visibility/lifecycle.d.ts.map +1 -1
- package/dist/src/core/visibility/lifecycle.js +2 -11
- package/dist/src/core/visibility/lifecycle.js.map +1 -1
- package/dist/src/experimental/freeze-graph.d.ts.map +1 -1
- package/dist/src/experimental/freeze-graph.js +0 -3
- package/dist/src/experimental/freeze-graph.js.map +1 -1
- package/dist/src/experimental/mutators.d.ts +2 -2
- package/dist/src/experimental/mutators.d.ts.map +1 -1
- package/dist/src/experimental/mutators.js +0 -6
- package/dist/src/experimental/mutators.js.map +1 -1
- package/dist/src/experimental/typekit/kits/type.js +0 -3
- package/dist/src/experimental/typekit/kits/type.js.map +1 -1
- package/dist/src/formatter/print/needs-parens.d.ts.map +1 -1
- package/dist/src/formatter/print/needs-parens.js +0 -4
- package/dist/src/formatter/print/needs-parens.js.map +1 -1
- package/dist/src/formatter/print/printer.d.ts +4 -12
- package/dist/src/formatter/print/printer.d.ts.map +1 -1
- package/dist/src/formatter/print/printer.js +0 -187
- package/dist/src/formatter/print/printer.js.map +1 -1
- package/dist/src/index.d.ts +3 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/decorators.d.ts +3 -3
- package/dist/src/lib/decorators.d.ts.map +1 -1
- package/dist/src/lib/decorators.js +14 -29
- package/dist/src/lib/decorators.js.map +1 -1
- package/dist/src/lib/examples.js +1 -5
- package/dist/src/lib/examples.js.map +1 -1
- package/dist/src/lib/tsp-index.d.ts.map +1 -1
- package/dist/src/lib/tsp-index.js +0 -1
- package/dist/src/lib/tsp-index.js.map +1 -1
- package/dist/src/server/classify.d.ts.map +1 -1
- package/dist/src/server/classify.js +0 -26
- package/dist/src/server/classify.js.map +1 -1
- package/dist/src/server/completion.js +1 -1
- package/dist/src/server/completion.js.map +1 -1
- package/dist/src/server/tmlanguage.d.ts.map +1 -1
- package/dist/src/server/tmlanguage.js +0 -125
- package/dist/src/server/tmlanguage.js.map +1 -1
- package/dist/src/server/type-signature.js +0 -11
- package/dist/src/server/type-signature.js.map +1 -1
- package/dist/typespec.tmLanguage +0 -342
- package/package.json +1 -1
- package/dist/src/core/helpers/projected-names-utils.d.ts +0 -20
- package/dist/src/core/helpers/projected-names-utils.d.ts.map +0 -1
- package/dist/src/core/helpers/projected-names-utils.js +0 -42
- package/dist/src/core/helpers/projected-names-utils.js.map +0 -1
- package/dist/src/core/projected-program.d.ts +0 -3
- package/dist/src/core/projected-program.d.ts.map +0 -1
- package/dist/src/core/projected-program.js +0 -4
- package/dist/src/core/projected-program.js.map +0 -1
- package/dist/src/core/projection-members.d.ts +0 -8
- package/dist/src/core/projection-members.d.ts.map +0 -1
- package/dist/src/core/projection-members.js +0 -382
- package/dist/src/core/projection-members.js.map +0 -1
- package/dist/src/core/projector.d.ts +0 -26
- package/dist/src/core/projector.d.ts.map +0 -1
- package/dist/src/core/projector.js +0 -572
- package/dist/src/core/projector.js.map +0 -1
package/dist/src/core/types.d.ts
CHANGED
|
@@ -30,16 +30,6 @@ export interface BaseType {
|
|
|
30
30
|
kind: string;
|
|
31
31
|
node?: Node;
|
|
32
32
|
instantiationParameters?: Type[];
|
|
33
|
-
/** @deprecated */
|
|
34
|
-
get projections(): ProjectionStatementNode[];
|
|
35
|
-
/** @deprecated */
|
|
36
|
-
projectionsByName(name: string): ProjectionStatementNode[];
|
|
37
|
-
/** @deprecated */
|
|
38
|
-
projectionSource?: Type;
|
|
39
|
-
/** @deprecated */
|
|
40
|
-
projectionBase?: Type;
|
|
41
|
-
/** @deprecated */
|
|
42
|
-
projector?: Projector;
|
|
43
33
|
/**
|
|
44
34
|
* Reflect if a type has been finished(Decorators have been called).
|
|
45
35
|
* There is multiple reasons a type might not be finished:
|
|
@@ -72,37 +62,16 @@ export interface TemplatedTypeBase {
|
|
|
72
62
|
* - Value Constraints
|
|
73
63
|
*/
|
|
74
64
|
export type Entity = Type | Value | MixedParameterConstraint | IndeterminateEntity;
|
|
75
|
-
export type Type = BooleanLiteral | Decorator | Enum | EnumMember | FunctionParameter |
|
|
65
|
+
export type Type = BooleanLiteral | Decorator | Enum | EnumMember | FunctionParameter | Interface | IntrinsicType | Model | ModelProperty | Namespace | NumericLiteral | Operation | Scalar | ScalarConstructor | StringLiteral | StringTemplate | StringTemplateSpan | TemplateParameter | Tuple | Union | UnionVariant;
|
|
76
66
|
export type StdTypes = {
|
|
77
67
|
Array: Model;
|
|
78
68
|
Record: Model;
|
|
79
69
|
} & Record<IntrinsicScalarName, Scalar>;
|
|
80
70
|
export type StdTypeName = keyof StdTypes;
|
|
81
|
-
export type TypeOrReturnRecord = Type | ReturnRecord;
|
|
82
71
|
export interface ObjectType extends BaseType {
|
|
83
72
|
kind: "Object";
|
|
84
73
|
properties: Record<string, Type>;
|
|
85
74
|
}
|
|
86
|
-
export interface Projection extends BaseType {
|
|
87
|
-
kind: "Projection";
|
|
88
|
-
node: undefined;
|
|
89
|
-
nodeByKind: Map<string, ProjectionStatementNode>;
|
|
90
|
-
nodeByType: Map<Type, ProjectionStatementNode>;
|
|
91
|
-
}
|
|
92
|
-
export interface ProjectionApplication {
|
|
93
|
-
scope?: Type;
|
|
94
|
-
projectionName: string;
|
|
95
|
-
arguments: DecoratorArgumentValue[];
|
|
96
|
-
direction?: "from" | "to";
|
|
97
|
-
}
|
|
98
|
-
export interface Projector {
|
|
99
|
-
parentProjector?: Projector;
|
|
100
|
-
projections: ProjectionApplication[];
|
|
101
|
-
projectedTypes: Map<Type, Type>;
|
|
102
|
-
projectType(type: Type | Value): Type | Value;
|
|
103
|
-
projectedStartNode?: Type;
|
|
104
|
-
projectedGlobalNamespace?: Namespace;
|
|
105
|
-
}
|
|
106
75
|
export interface MixedParameterConstraint {
|
|
107
76
|
readonly entityKind: "MixedParameterConstraint";
|
|
108
77
|
readonly node?: UnionExpressionNode | Expression;
|
|
@@ -135,10 +104,6 @@ export interface UnknownType extends IntrinsicType {
|
|
|
135
104
|
export interface NullType extends IntrinsicType {
|
|
136
105
|
name: "null";
|
|
137
106
|
}
|
|
138
|
-
export interface ReturnRecord {
|
|
139
|
-
kind: "Return";
|
|
140
|
-
value: Type;
|
|
141
|
-
}
|
|
142
107
|
export type IntrinsicScalarName = "bytes" | "numeric" | "integer" | "float" | "int64" | "int32" | "int16" | "int8" | "uint64" | "uint32" | "uint16" | "uint8" | "safeint" | "float32" | "float64" | "decimal" | "decimal128" | "string" | "plainDate" | "plainTime" | "utcDateTime" | "offsetDateTime" | "duration" | "boolean" | "url";
|
|
143
108
|
/**
|
|
144
109
|
* Valid keys when looking up meta members for a particular type.
|
|
@@ -176,7 +141,7 @@ export interface RecordModelType extends Model {
|
|
|
176
141
|
export interface Model extends BaseType, DecoratedType, TemplatedTypeBase {
|
|
177
142
|
kind: "Model";
|
|
178
143
|
name: string;
|
|
179
|
-
node?: ModelStatementNode | ModelExpressionNode | IntersectionExpressionNode |
|
|
144
|
+
node?: ModelStatementNode | ModelExpressionNode | IntersectionExpressionNode | ObjectLiteralNode;
|
|
180
145
|
namespace?: Namespace;
|
|
181
146
|
indexer?: ModelIndexer;
|
|
182
147
|
/**
|
|
@@ -222,7 +187,7 @@ export interface SourceModel {
|
|
|
222
187
|
}
|
|
223
188
|
export interface ModelProperty extends BaseType, DecoratedType {
|
|
224
189
|
kind: "ModelProperty";
|
|
225
|
-
node: ModelPropertyNode | ModelSpreadPropertyNode |
|
|
190
|
+
node: ModelPropertyNode | ModelSpreadPropertyNode | ObjectLiteralPropertyNode;
|
|
226
191
|
name: string;
|
|
227
192
|
type: Type;
|
|
228
193
|
sourceProperty?: ModelProperty;
|
|
@@ -430,12 +395,6 @@ export interface Namespace extends BaseType, DecoratedType {
|
|
|
430
395
|
* Order is implementation-defined and may change.
|
|
431
396
|
*/
|
|
432
397
|
decoratorDeclarations: Map<string, Decorator>;
|
|
433
|
-
/**
|
|
434
|
-
* The functions declared in the namespace.
|
|
435
|
-
*
|
|
436
|
-
* Order is implementation-defined and may change.
|
|
437
|
-
*/
|
|
438
|
-
functionDeclarations: Map<string, FunctionType>;
|
|
439
398
|
}
|
|
440
399
|
export type LiteralType = StringLiteral | NumericLiteral | BooleanLiteral;
|
|
441
400
|
export interface StringLiteral extends BaseType {
|
|
@@ -515,15 +474,6 @@ export interface Decorator extends BaseType {
|
|
|
515
474
|
parameters: MixedFunctionParameter[];
|
|
516
475
|
implementation: (...args: unknown[]) => void;
|
|
517
476
|
}
|
|
518
|
-
export interface FunctionType extends BaseType {
|
|
519
|
-
kind: "Function";
|
|
520
|
-
node?: FunctionDeclarationStatementNode;
|
|
521
|
-
namespace?: Namespace;
|
|
522
|
-
name: string;
|
|
523
|
-
parameters: MixedFunctionParameter[];
|
|
524
|
-
returnType: Type;
|
|
525
|
-
implementation: (...args: unknown[]) => unknown;
|
|
526
|
-
}
|
|
527
477
|
export interface FunctionParameterBase extends BaseType {
|
|
528
478
|
kind: "FunctionParameter";
|
|
529
479
|
node: FunctionParameterNode;
|
|
@@ -707,17 +657,15 @@ export declare const enum SymbolFlags {
|
|
|
707
657
|
Union = 64,
|
|
708
658
|
Alias = 128,
|
|
709
659
|
Namespace = 256,
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
Member = 262144,
|
|
720
|
-
Const = 524288,
|
|
660
|
+
Decorator = 512,
|
|
661
|
+
TemplateParameter = 1024,
|
|
662
|
+
Function = 2048,
|
|
663
|
+
FunctionParameter = 4096,
|
|
664
|
+
Using = 8192,
|
|
665
|
+
DuplicateUsing = 16384,
|
|
666
|
+
SourceFile = 32768,
|
|
667
|
+
Member = 65536,
|
|
668
|
+
Const = 131072,
|
|
721
669
|
/**
|
|
722
670
|
* A symbol which represents a declaration. Such symbols will have at least
|
|
723
671
|
* one entry in the `declarations[]` array referring to a node with an `id`.
|
|
@@ -731,7 +679,7 @@ export declare const enum SymbolFlags {
|
|
|
731
679
|
* by this symbol is stored directly in the symbol.
|
|
732
680
|
*/
|
|
733
681
|
LateBound = 4194304,
|
|
734
|
-
ExportContainer =
|
|
682
|
+
ExportContainer = 33024,
|
|
735
683
|
/**
|
|
736
684
|
* Symbols whose members will be late bound (and stored on the type)
|
|
737
685
|
*/
|
|
@@ -808,61 +756,30 @@ export declare enum SyntaxKind {
|
|
|
808
756
|
UnknownKeyword = 43,
|
|
809
757
|
ValueOfExpression = 44,
|
|
810
758
|
TypeReference = 45,
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
ProjectionEnumMemberSelector = 70,
|
|
836
|
-
ProjectionExpressionStatement = 71,
|
|
837
|
-
ProjectionIfExpression = 72,
|
|
838
|
-
ProjectionBlockExpression = 73,
|
|
839
|
-
ProjectionMemberExpression = 74,
|
|
840
|
-
ProjectionLogicalExpression = 75,
|
|
841
|
-
ProjectionEqualityExpression = 76,
|
|
842
|
-
ProjectionUnaryExpression = 77,
|
|
843
|
-
ProjectionRelationalExpression = 78,
|
|
844
|
-
ProjectionArithmeticExpression = 79,
|
|
845
|
-
ProjectionCallExpression = 80,
|
|
846
|
-
ProjectionLambdaExpression = 81,
|
|
847
|
-
ProjectionLambdaParameterDeclaration = 82,
|
|
848
|
-
ProjectionModelExpression = 83,
|
|
849
|
-
ProjectionModelProperty = 84,
|
|
850
|
-
ProjectionModelSpreadProperty = 85,
|
|
851
|
-
ProjectionSpreadProperty = 86,
|
|
852
|
-
ProjectionTupleExpression = 87,
|
|
853
|
-
ProjectionStatement = 88,
|
|
854
|
-
ProjectionDecoratorReferenceExpression = 89,
|
|
855
|
-
Return = 90,
|
|
856
|
-
JsNamespaceDeclaration = 91,
|
|
857
|
-
TemplateArgument = 92,
|
|
858
|
-
TypeOfExpression = 93,
|
|
859
|
-
ObjectLiteral = 94,
|
|
860
|
-
ObjectLiteralProperty = 95,
|
|
861
|
-
ObjectLiteralSpreadProperty = 96,
|
|
862
|
-
ArrayLiteral = 97,
|
|
863
|
-
ConstStatement = 98,
|
|
864
|
-
CallExpression = 99,
|
|
865
|
-
ScalarConstructor = 100
|
|
759
|
+
TemplateParameterDeclaration = 46,
|
|
760
|
+
EmptyStatement = 47,
|
|
761
|
+
InvalidStatement = 48,
|
|
762
|
+
LineComment = 49,
|
|
763
|
+
BlockComment = 50,
|
|
764
|
+
Doc = 51,
|
|
765
|
+
DocText = 52,
|
|
766
|
+
DocParamTag = 53,
|
|
767
|
+
DocPropTag = 54,
|
|
768
|
+
DocReturnsTag = 55,
|
|
769
|
+
DocErrorsTag = 56,
|
|
770
|
+
DocTemplateTag = 57,
|
|
771
|
+
DocUnknownTag = 58,
|
|
772
|
+
Return = 59,
|
|
773
|
+
JsNamespaceDeclaration = 60,
|
|
774
|
+
TemplateArgument = 61,
|
|
775
|
+
TypeOfExpression = 62,
|
|
776
|
+
ObjectLiteral = 63,
|
|
777
|
+
ObjectLiteralProperty = 64,
|
|
778
|
+
ObjectLiteralSpreadProperty = 65,
|
|
779
|
+
ArrayLiteral = 66,
|
|
780
|
+
ConstStatement = 67,
|
|
781
|
+
CallExpression = 68,
|
|
782
|
+
ScalarConstructor = 69
|
|
866
783
|
}
|
|
867
784
|
export declare const enum NodeFlags {
|
|
868
785
|
None = 0,
|
|
@@ -944,7 +861,7 @@ export interface PositionDetail {
|
|
|
944
861
|
/** get the PositionDetail of positionAfterTrivia */
|
|
945
862
|
readonly getPositionDetailAfterTrivia: () => PositionDetail;
|
|
946
863
|
}
|
|
947
|
-
export type Node = TypeSpecScriptNode | JsSourceFileNode | JsNamespaceDeclarationNode | TemplateArgumentNode | TemplateParameterDeclarationNode |
|
|
864
|
+
export type Node = TypeSpecScriptNode | JsSourceFileNode | JsNamespaceDeclarationNode | TemplateArgumentNode | TemplateParameterDeclarationNode | ModelPropertyNode | UnionVariantNode | OperationStatementNode | OperationSignatureDeclarationNode | OperationSignatureReferenceNode | EnumMemberNode | EnumSpreadMemberNode | ModelSpreadPropertyNode | DecoratorExpressionNode | DirectiveExpressionNode | Statement | Expression | FunctionParameterNode | StringTemplateSpanNode | StringTemplateHeadNode | StringTemplateMiddleNode | StringTemplateTailNode | Modifier | DocNode | DocContent | DocTag | ReferenceExpression | ObjectLiteralNode | ObjectLiteralPropertyNode | ObjectLiteralSpreadPropertyNode | ScalarConstructorNode | ArrayLiteralNode;
|
|
948
865
|
/**
|
|
949
866
|
* Node that can be used as template
|
|
950
867
|
*/
|
|
@@ -987,12 +904,12 @@ export interface TypeSpecScriptNode extends DeclarationNode, BaseNode {
|
|
|
987
904
|
readonly locals: SymbolTable;
|
|
988
905
|
readonly parseOptions: ParseOptions;
|
|
989
906
|
}
|
|
990
|
-
export type Statement = ImportStatementNode | ModelStatementNode | ScalarStatementNode | NamespaceStatementNode | InterfaceStatementNode | UnionStatementNode | UsingStatementNode | EnumStatementNode | AliasStatementNode | OperationStatementNode | DecoratorDeclarationStatementNode | FunctionDeclarationStatementNode | AugmentDecoratorStatementNode | ConstStatementNode | CallExpressionNode | EmptyStatementNode | InvalidStatementNode
|
|
907
|
+
export type Statement = ImportStatementNode | ModelStatementNode | ScalarStatementNode | NamespaceStatementNode | InterfaceStatementNode | UnionStatementNode | UsingStatementNode | EnumStatementNode | AliasStatementNode | OperationStatementNode | DecoratorDeclarationStatementNode | FunctionDeclarationStatementNode | AugmentDecoratorStatementNode | ConstStatementNode | CallExpressionNode | EmptyStatementNode | InvalidStatementNode;
|
|
991
908
|
export interface DeclarationNode {
|
|
992
909
|
readonly id: IdentifierNode;
|
|
993
910
|
}
|
|
994
|
-
export type Declaration = ModelStatementNode | ScalarStatementNode | InterfaceStatementNode | UnionStatementNode | NamespaceStatementNode | OperationStatementNode | TemplateParameterDeclarationNode |
|
|
995
|
-
export type ScopeNode = NamespaceStatementNode | ModelStatementNode | InterfaceStatementNode | AliasStatementNode | TypeSpecScriptNode | JsSourceFileNode
|
|
911
|
+
export type Declaration = ModelStatementNode | ScalarStatementNode | InterfaceStatementNode | UnionStatementNode | NamespaceStatementNode | OperationStatementNode | TemplateParameterDeclarationNode | EnumStatementNode | AliasStatementNode | ConstStatementNode | DecoratorDeclarationStatementNode | FunctionDeclarationStatementNode;
|
|
912
|
+
export type ScopeNode = NamespaceStatementNode | ModelStatementNode | InterfaceStatementNode | AliasStatementNode | TypeSpecScriptNode | JsSourceFileNode;
|
|
996
913
|
export interface ImportStatementNode extends BaseNode {
|
|
997
914
|
readonly kind: SyntaxKind.ImportStatement;
|
|
998
915
|
readonly path: StringLiteralNode;
|
|
@@ -1021,7 +938,6 @@ export interface DirectiveExpressionNode extends BaseNode {
|
|
|
1021
938
|
}
|
|
1022
939
|
export type DirectiveArgument = StringLiteralNode | IdentifierNode;
|
|
1023
940
|
export type Expression = ArrayExpressionNode | MemberExpressionNode | ModelExpressionNode | ObjectLiteralNode | ArrayLiteralNode | TupleExpressionNode | UnionExpressionNode | IntersectionExpressionNode | TypeReferenceNode | ValueOfExpressionNode | TypeOfExpressionNode | CallExpressionNode | StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | StringTemplateExpressionNode | VoidKeywordNode | NeverKeywordNode | AnyKeywordNode;
|
|
1024
|
-
export type ProjectionExpression = ProjectionLogicalExpressionNode | ProjectionRelationalExpressionNode | ProjectionEqualityExpressionNode | ProjectionUnaryExpressionNode | ProjectionArithmeticExpressionNode | ProjectionCallExpressionNode | ProjectionMemberExpressionNode | ProjectionDecoratorReferenceExpressionNode | ProjectionTupleExpressionNode | ProjectionModelExpressionNode | ProjectionIfExpressionNode | ProjectionBlockExpressionNode | ProjectionLambdaExpressionNode | StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | IdentifierNode | VoidKeywordNode | NeverKeywordNode | AnyKeywordNode | ReturnExpressionNode;
|
|
1025
941
|
export type ReferenceExpression = TypeReferenceNode | MemberExpressionNode | IdentifierNode | VoidKeywordNode | NeverKeywordNode;
|
|
1026
942
|
export interface MemberExpressionNode extends BaseNode {
|
|
1027
943
|
readonly kind: SyntaxKind.MemberExpression;
|
|
@@ -1236,10 +1152,6 @@ export interface NeverKeywordNode extends BaseNode {
|
|
|
1236
1152
|
export interface AnyKeywordNode extends BaseNode {
|
|
1237
1153
|
readonly kind: SyntaxKind.UnknownKeyword;
|
|
1238
1154
|
}
|
|
1239
|
-
export interface ReturnExpressionNode extends BaseNode {
|
|
1240
|
-
readonly kind: SyntaxKind.Return;
|
|
1241
|
-
readonly value: ProjectionExpression;
|
|
1242
|
-
}
|
|
1243
1155
|
export interface UnionExpressionNode extends BaseNode {
|
|
1244
1156
|
readonly kind: SyntaxKind.UnionExpression;
|
|
1245
1157
|
readonly options: readonly Expression[];
|
|
@@ -1266,11 +1178,6 @@ export interface TemplateArgumentNode extends BaseNode {
|
|
|
1266
1178
|
readonly name?: IdentifierNode;
|
|
1267
1179
|
readonly argument: Expression;
|
|
1268
1180
|
}
|
|
1269
|
-
export interface ProjectionReferenceNode extends BaseNode {
|
|
1270
|
-
readonly kind: SyntaxKind.ProjectionReference;
|
|
1271
|
-
readonly target: MemberExpressionNode | IdentifierNode;
|
|
1272
|
-
readonly arguments: readonly Expression[];
|
|
1273
|
-
}
|
|
1274
1181
|
export interface TemplateParameterDeclarationNode extends DeclarationNode, BaseNode {
|
|
1275
1182
|
readonly kind: SyntaxKind.TemplateParameterDeclaration;
|
|
1276
1183
|
readonly constraint?: Expression;
|
|
@@ -1331,146 +1238,6 @@ export interface FunctionDeclarationStatementNode extends BaseNode, DeclarationN
|
|
|
1331
1238
|
readonly returnType?: Expression;
|
|
1332
1239
|
readonly parent?: TypeSpecScriptNode | NamespaceStatementNode;
|
|
1333
1240
|
}
|
|
1334
|
-
export interface ProjectionModelSelectorNode extends BaseNode {
|
|
1335
|
-
readonly kind: SyntaxKind.ProjectionModelSelector;
|
|
1336
|
-
}
|
|
1337
|
-
export interface ProjectionScalarSelectorNode extends BaseNode {
|
|
1338
|
-
readonly kind: SyntaxKind.ProjectionScalarSelector;
|
|
1339
|
-
}
|
|
1340
|
-
export interface ProjectionModelPropertySelectorNode extends BaseNode {
|
|
1341
|
-
readonly kind: SyntaxKind.ProjectionModelPropertySelector;
|
|
1342
|
-
}
|
|
1343
|
-
export interface ProjectionInterfaceSelectorNode extends BaseNode {
|
|
1344
|
-
readonly kind: SyntaxKind.ProjectionInterfaceSelector;
|
|
1345
|
-
}
|
|
1346
|
-
export interface ProjectionOperationSelectorNode extends BaseNode {
|
|
1347
|
-
readonly kind: SyntaxKind.ProjectionOperationSelector;
|
|
1348
|
-
}
|
|
1349
|
-
export interface ProjectionUnionSelectorNode extends BaseNode {
|
|
1350
|
-
readonly kind: SyntaxKind.ProjectionUnionSelector;
|
|
1351
|
-
}
|
|
1352
|
-
export interface ProjectionUnionVariantSelectorNode extends BaseNode {
|
|
1353
|
-
readonly kind: SyntaxKind.ProjectionUnionVariantSelector;
|
|
1354
|
-
}
|
|
1355
|
-
export interface ProjectionEnumSelectorNode extends BaseNode {
|
|
1356
|
-
readonly kind: SyntaxKind.ProjectionEnumSelector;
|
|
1357
|
-
}
|
|
1358
|
-
export interface ProjectionEnumMemberSelectorNode extends BaseNode {
|
|
1359
|
-
readonly kind: SyntaxKind.ProjectionEnumMemberSelector;
|
|
1360
|
-
}
|
|
1361
|
-
export type ProjectionStatementItem = ProjectionExpressionStatementNode;
|
|
1362
|
-
export interface ProjectionParameterDeclarationNode extends DeclarationNode, BaseNode {
|
|
1363
|
-
readonly kind: SyntaxKind.ProjectionParameterDeclaration;
|
|
1364
|
-
}
|
|
1365
|
-
export interface ProjectionExpressionStatementNode extends BaseNode {
|
|
1366
|
-
readonly kind: SyntaxKind.ProjectionExpressionStatement;
|
|
1367
|
-
readonly expr: ProjectionExpression;
|
|
1368
|
-
}
|
|
1369
|
-
export interface ProjectionLogicalExpressionNode extends BaseNode {
|
|
1370
|
-
readonly kind: SyntaxKind.ProjectionLogicalExpression;
|
|
1371
|
-
readonly op: "||" | "&&";
|
|
1372
|
-
readonly left: ProjectionExpression;
|
|
1373
|
-
readonly right: ProjectionExpression;
|
|
1374
|
-
}
|
|
1375
|
-
export interface ProjectionRelationalExpressionNode extends BaseNode {
|
|
1376
|
-
readonly kind: SyntaxKind.ProjectionRelationalExpression;
|
|
1377
|
-
readonly op: "<=" | "<" | ">" | ">=";
|
|
1378
|
-
readonly left: ProjectionExpression;
|
|
1379
|
-
readonly right: ProjectionExpression;
|
|
1380
|
-
}
|
|
1381
|
-
export interface ProjectionEqualityExpressionNode extends BaseNode {
|
|
1382
|
-
readonly kind: SyntaxKind.ProjectionEqualityExpression;
|
|
1383
|
-
readonly op: "==" | "!=";
|
|
1384
|
-
readonly left: ProjectionExpression;
|
|
1385
|
-
readonly right: ProjectionExpression;
|
|
1386
|
-
}
|
|
1387
|
-
export interface ProjectionArithmeticExpressionNode extends BaseNode {
|
|
1388
|
-
readonly kind: SyntaxKind.ProjectionArithmeticExpression;
|
|
1389
|
-
readonly op: "+" | "-" | "*" | "/";
|
|
1390
|
-
readonly left: ProjectionExpression;
|
|
1391
|
-
readonly right: ProjectionExpression;
|
|
1392
|
-
}
|
|
1393
|
-
export interface ProjectionUnaryExpressionNode extends BaseNode {
|
|
1394
|
-
readonly kind: SyntaxKind.ProjectionUnaryExpression;
|
|
1395
|
-
readonly op: "!";
|
|
1396
|
-
readonly target: ProjectionExpression;
|
|
1397
|
-
}
|
|
1398
|
-
export interface ProjectionCallExpressionNode extends BaseNode {
|
|
1399
|
-
readonly kind: SyntaxKind.ProjectionCallExpression;
|
|
1400
|
-
readonly callKind: "method" | "template";
|
|
1401
|
-
readonly target: ProjectionExpression;
|
|
1402
|
-
readonly arguments: ProjectionExpression[];
|
|
1403
|
-
}
|
|
1404
|
-
export interface ProjectionMemberExpressionNode extends BaseNode {
|
|
1405
|
-
readonly kind: SyntaxKind.ProjectionMemberExpression;
|
|
1406
|
-
readonly base: ProjectionExpression;
|
|
1407
|
-
readonly id: IdentifierNode;
|
|
1408
|
-
readonly selector: "." | "::";
|
|
1409
|
-
}
|
|
1410
|
-
export interface ProjectionModelExpressionNode extends BaseNode {
|
|
1411
|
-
readonly kind: SyntaxKind.ProjectionModelExpression;
|
|
1412
|
-
readonly properties: (ProjectionModelPropertyNode | ProjectionModelSpreadPropertyNode)[];
|
|
1413
|
-
}
|
|
1414
|
-
export interface ProjectionTupleExpressionNode extends BaseNode {
|
|
1415
|
-
readonly kind: SyntaxKind.ProjectionTupleExpression;
|
|
1416
|
-
readonly values: ProjectionExpression[];
|
|
1417
|
-
}
|
|
1418
|
-
export interface ProjectionModelPropertyNode extends BaseNode {
|
|
1419
|
-
readonly kind: SyntaxKind.ProjectionModelProperty;
|
|
1420
|
-
readonly id: IdentifierNode;
|
|
1421
|
-
readonly value: ProjectionExpression;
|
|
1422
|
-
readonly decorators: readonly DecoratorExpressionNode[];
|
|
1423
|
-
readonly optional: boolean;
|
|
1424
|
-
readonly default?: ProjectionExpression;
|
|
1425
|
-
}
|
|
1426
|
-
export interface ProjectionModelSpreadPropertyNode extends BaseNode {
|
|
1427
|
-
readonly kind: SyntaxKind.ProjectionModelSpreadProperty;
|
|
1428
|
-
readonly target: ProjectionExpression;
|
|
1429
|
-
}
|
|
1430
|
-
export interface ProjectionIfExpressionNode extends BaseNode {
|
|
1431
|
-
readonly kind: SyntaxKind.ProjectionIfExpression;
|
|
1432
|
-
readonly test: ProjectionExpression;
|
|
1433
|
-
readonly consequent: ProjectionBlockExpressionNode;
|
|
1434
|
-
readonly alternate?: ProjectionBlockExpressionNode | ProjectionIfExpressionNode;
|
|
1435
|
-
}
|
|
1436
|
-
export interface ProjectionBlockExpressionNode extends BaseNode {
|
|
1437
|
-
readonly kind: SyntaxKind.ProjectionBlockExpression;
|
|
1438
|
-
readonly statements: ProjectionStatementItem[];
|
|
1439
|
-
}
|
|
1440
|
-
export interface ProjectionLambdaExpressionNode extends BaseNode {
|
|
1441
|
-
readonly kind: SyntaxKind.ProjectionLambdaExpression;
|
|
1442
|
-
readonly parameters: readonly ProjectionLambdaParameterDeclarationNode[];
|
|
1443
|
-
readonly locals?: SymbolTable;
|
|
1444
|
-
readonly body: ProjectionBlockExpressionNode;
|
|
1445
|
-
}
|
|
1446
|
-
export interface ProjectionLambdaParameterDeclarationNode extends DeclarationNode, BaseNode {
|
|
1447
|
-
readonly kind: SyntaxKind.ProjectionLambdaParameterDeclaration;
|
|
1448
|
-
}
|
|
1449
|
-
export interface ProjectionNode extends BaseNode {
|
|
1450
|
-
readonly kind: SyntaxKind.Projection;
|
|
1451
|
-
readonly direction: "to" | "from" | "pre_to" | "pre_from" | "<error>";
|
|
1452
|
-
readonly directionId: IdentifierNode;
|
|
1453
|
-
readonly modifierIds: readonly IdentifierNode[];
|
|
1454
|
-
readonly parameters: ProjectionParameterDeclarationNode[];
|
|
1455
|
-
readonly body: readonly ProjectionStatementItem[];
|
|
1456
|
-
readonly locals?: SymbolTable;
|
|
1457
|
-
}
|
|
1458
|
-
/** @deprecated */
|
|
1459
|
-
export interface ProjectionStatementNode extends BaseNode, DeclarationNode {
|
|
1460
|
-
readonly kind: SyntaxKind.ProjectionStatement;
|
|
1461
|
-
readonly selector: ProjectionModelSelectorNode | ProjectionModelPropertySelectorNode | ProjectionScalarSelectorNode | ProjectionInterfaceSelectorNode | ProjectionOperationSelectorNode | ProjectionUnionSelectorNode | ProjectionUnionVariantSelectorNode | ProjectionEnumSelectorNode | ProjectionEnumMemberSelectorNode | MemberExpressionNode | IdentifierNode;
|
|
1462
|
-
readonly to?: ProjectionNode;
|
|
1463
|
-
readonly from?: ProjectionNode;
|
|
1464
|
-
readonly preTo?: ProjectionNode;
|
|
1465
|
-
readonly preFrom?: ProjectionNode;
|
|
1466
|
-
readonly projections: readonly ProjectionNode[];
|
|
1467
|
-
readonly parent?: TypeSpecScriptNode | NamespaceStatementNode;
|
|
1468
|
-
}
|
|
1469
|
-
/** @deprecated */
|
|
1470
|
-
export interface ProjectionDecoratorReferenceExpressionNode extends BaseNode {
|
|
1471
|
-
readonly kind: SyntaxKind.ProjectionDecoratorReferenceExpression;
|
|
1472
|
-
readonly target: MemberExpressionNode | IdentifierNode;
|
|
1473
|
-
}
|
|
1474
1241
|
export interface IdentifierContext {
|
|
1475
1242
|
kind: IdentifierKind;
|
|
1476
1243
|
node: Node;
|