From 82121b770ac03b2df361f5b9705cc8bcda2d9412 Mon Sep 17 00:00:00 2001 From: mgechev Date: Wed, 6 Jul 2016 14:55:30 +0300 Subject: [PATCH] feat: support typescript 2.0 Fix #63 --- src/util/syntaxKind.ts | 327 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 326 insertions(+), 1 deletion(-) diff --git a/src/util/syntaxKind.ts b/src/util/syntaxKind.ts index 0b88befb2..ad9913903 100644 --- a/src/util/syntaxKind.ts +++ b/src/util/syntaxKind.ts @@ -311,7 +311,16 @@ module SyntaxKind { GlobalModuleExportDeclaration?: number, NonNullExpression?: number, UndefinedKeyword?: number, - ReadonlyKeyword?: number + ReadonlyKeyword?: number, + NeverKeyword?: number; // 2.0, + NamespaceExportDeclaration?: number // 2.0 + JSDocTypedefTag?: number, // 2.0 + JSDocPropertyTag?: number, // 2.0 + JSDocTypeLiteral?: number, // 2.0 + FirstJSDocNode?: number, // 2.0 + LastJSDocNode?: number, // 2.0 + FirstJSDocTagNode?: number, // 2.0 + LastJSDocTagNode?: number, // 2.0 } var cachedKinds: SyntaxKind.SyntaxKind; @@ -1785,6 +1794,320 @@ module SyntaxKind { ReadonlyKeyword: 127 }; + var SyntaxKind_2_0: SyntaxKind = { + Unknown: 0, + EndOfFileToken: 1, + SingleLineCommentTrivia: 2, + MultiLineCommentTrivia: 3, + NewLineTrivia: 4, + WhitespaceTrivia: 5, + ShebangTrivia: 6, + ConflictMarkerTrivia: 7, + NumericLiteral: 8, + StringLiteral: 9, + RegularExpressionLiteral: 10, + NoSubstitutionTemplateLiteral: 11, + TemplateHead: 12, + TemplateMiddle: 13, + TemplateTail: 14, + OpenBraceToken: 15, + CloseBraceToken: 16, + OpenParenToken: 17, + CloseParenToken: 18, + OpenBracketToken: 19, + CloseBracketToken: 20, + DotToken: 21, + DotDotDotToken: 22, + SemicolonToken: 23, + CommaToken: 24, + LessThanToken: 25, + LessThanSlashToken: 26, + GreaterThanToken: 27, + LessThanEqualsToken: 28, + GreaterThanEqualsToken: 29, + EqualsEqualsToken: 30, + ExclamationEqualsToken: 31, + EqualsEqualsEqualsToken: 32, + ExclamationEqualsEqualsToken: 33, + EqualsGreaterThanToken: 34, + PlusToken: 35, + MinusToken: 36, + AsteriskToken: 37, + AsteriskAsteriskToken: 38, + SlashToken: 39, + PercentToken: 40, + PlusPlusToken: 41, + MinusMinusToken: 42, + LessThanLessThanToken: 43, + GreaterThanGreaterThanToken: 44, + GreaterThanGreaterThanGreaterThanToken: 45, + AmpersandToken: 46, + BarToken: 47, + CaretToken: 48, + ExclamationToken: 49, + TildeToken: 50, + AmpersandAmpersandToken: 51, + BarBarToken: 52, + QuestionToken: 53, + ColonToken: 54, + AtToken: 55, + EqualsToken: 56, + PlusEqualsToken: 57, + MinusEqualsToken: 58, + AsteriskEqualsToken: 59, + AsteriskAsteriskEqualsToken: 60, + SlashEqualsToken: 61, + PercentEqualsToken: 62, + LessThanLessThanEqualsToken: 63, + GreaterThanGreaterThanEqualsToken: 64, + GreaterThanGreaterThanGreaterThanEqualsToken: 65, + AmpersandEqualsToken: 66, + BarEqualsToken: 67, + CaretEqualsToken: 68, + Identifier: 69, + BreakKeyword: 70, + CaseKeyword: 71, + CatchKeyword: 72, + ClassKeyword: 73, + ConstKeyword: 74, + ContinueKeyword: 75, + DebuggerKeyword: 76, + DefaultKeyword: 77, + DeleteKeyword: 78, + DoKeyword: 79, + ElseKeyword: 80, + EnumKeyword: 81, + ExportKeyword: 82, + ExtendsKeyword: 83, + FalseKeyword: 84, + FinallyKeyword: 85, + ForKeyword: 86, + FunctionKeyword: 87, + IfKeyword: 88, + ImportKeyword: 89, + InKeyword: 90, + InstanceOfKeyword: 91, + NewKeyword: 92, + NullKeyword: 93, + ReturnKeyword: 94, + SuperKeyword: 95, + SwitchKeyword: 96, + ThisKeyword: 97, + ThrowKeyword: 98, + TrueKeyword: 99, + TryKeyword: 100, + TypeOfKeyword: 101, + VarKeyword: 102, + VoidKeyword: 103, + WhileKeyword: 104, + WithKeyword: 105, + ImplementsKeyword: 106, + InterfaceKeyword: 107, + LetKeyword: 108, + PackageKeyword: 109, + PrivateKeyword: 110, + ProtectedKeyword: 111, + PublicKeyword: 112, + StaticKeyword: 113, + YieldKeyword: 114, + AbstractKeyword: 115, + AsKeyword: 116, + AnyKeyword: 117, + AsyncKeyword: 118, + AwaitKeyword: 119, + BooleanKeyword: 120, + ConstructorKeyword: 121, + DeclareKeyword: 122, + GetKeyword: 123, + IsKeyword: 124, + ModuleKeyword: 125, + NamespaceKeyword: 126, + NeverKeyword: 127, + ReadonlyKeyword: 128, + RequireKeyword: 129, + NumberKeyword: 130, + SetKeyword: 131, + StringKeyword: 132, + SymbolKeyword: 133, + TypeKeyword: 134, + UndefinedKeyword: 135, + FromKeyword: 136, + GlobalKeyword: 137, + OfKeyword: 138, + QualifiedName: 139, + ComputedPropertyName: 140, + TypeParameter: 141, + Parameter: 142, + Decorator: 143, + PropertySignature: 144, + PropertyDeclaration: 145, + MethodSignature: 146, + MethodDeclaration: 147, + Constructor: 148, + GetAccessor: 149, + SetAccessor: 150, + CallSignature: 151, + ConstructSignature: 152, + IndexSignature: 153, + TypePredicate: 154, + TypeReference: 155, + FunctionType: 156, + ConstructorType: 157, + TypeQuery: 158, + TypeLiteral: 159, + ArrayType: 160, + TupleType: 161, + UnionType: 162, + IntersectionType: 163, + ParenthesizedType: 164, + ThisType: 165, + StringLiteralType: 166, + ObjectBindingPattern: 167, + ArrayBindingPattern: 168, + BindingElement: 169, + ArrayLiteralExpression: 170, + ObjectLiteralExpression: 171, + PropertyAccessExpression: 172, + ElementAccessExpression: 173, + CallExpression: 174, + NewExpression: 175, + TaggedTemplateExpression: 176, + TypeAssertionExpression: 177, + ParenthesizedExpression: 178, + FunctionExpression: 179, + ArrowFunction: 180, + DeleteExpression: 181, + TypeOfExpression: 182, + VoidExpression: 183, + AwaitExpression: 184, + PrefixUnaryExpression: 185, + PostfixUnaryExpression: 186, + BinaryExpression: 187, + ConditionalExpression: 188, + TemplateExpression: 189, + YieldExpression: 190, + SpreadElementExpression: 191, + ClassExpression: 192, + OmittedExpression: 193, + ExpressionWithTypeArguments: 194, + AsExpression: 195, + NonNullExpression: 196, + TemplateSpan: 197, + SemicolonClassElement: 198, + Block: 199, + VariableStatement: 200, + EmptyStatement: 201, + ExpressionStatement: 202, + IfStatement: 203, + DoStatement: 204, + WhileStatement: 205, + ForStatement: 206, + ForInStatement: 207, + ForOfStatement: 208, + ContinueStatement: 209, + BreakStatement: 210, + ReturnStatement: 211, + WithStatement: 212, + SwitchStatement: 213, + LabeledStatement: 214, + ThrowStatement: 215, + TryStatement: 216, + DebuggerStatement: 217, + VariableDeclaration: 218, + VariableDeclarationList: 219, + FunctionDeclaration: 220, + ClassDeclaration: 221, + InterfaceDeclaration: 222, + TypeAliasDeclaration: 223, + EnumDeclaration: 224, + ModuleDeclaration: 225, + ModuleBlock: 226, + CaseBlock: 227, + NamespaceExportDeclaration: 228, + ImportEqualsDeclaration: 229, + ImportDeclaration: 230, + ImportClause: 231, + NamespaceImport: 232, + NamedImports: 233, + ImportSpecifier: 234, + ExportAssignment: 235, + ExportDeclaration: 236, + NamedExports: 237, + ExportSpecifier: 238, + MissingDeclaration: 239, + ExternalModuleReference: 240, + JsxElement: 241, + JsxSelfClosingElement: 242, + JsxOpeningElement: 243, + JsxText: 244, + JsxClosingElement: 245, + JsxAttribute: 246, + JsxSpreadAttribute: 247, + JsxExpression: 248, + CaseClause: 249, + DefaultClause: 250, + HeritageClause: 251, + CatchClause: 252, + PropertyAssignment: 253, + ShorthandPropertyAssignment: 254, + EnumMember: 255, + SourceFile: 256, + JSDocTypeExpression: 257, + JSDocAllType: 258, + JSDocUnknownType: 259, + JSDocArrayType: 260, + JSDocUnionType: 261, + JSDocTupleType: 262, + JSDocNullableType: 263, + JSDocNonNullableType: 264, + JSDocRecordType: 265, + JSDocRecordMember: 266, + JSDocTypeReference: 267, + JSDocOptionalType: 268, + JSDocFunctionType: 269, + JSDocVariadicType: 270, + JSDocConstructorType: 271, + JSDocThisType: 272, + JSDocComment: 273, + JSDocTag: 274, + JSDocParameterTag: 275, + JSDocReturnTag: 276, + JSDocTypeTag: 277, + JSDocTemplateTag: 278, + JSDocTypedefTag: 279, + JSDocPropertyTag: 280, + JSDocTypeLiteral: 281, + SyntaxList: 282, + Count: 283, + FirstAssignment: 56, + LastAssignment: 68, + FirstReservedWord: 70, + LastReservedWord: 105, + FirstKeyword: 70, + LastKeyword: 138, + FirstFutureReservedWord: 106, + LastFutureReservedWord: 114, + FirstTypeNode: 154, + LastTypeNode: 166, + FirstPunctuation: 15, + LastPunctuation: 68, + FirstToken: 0, + LastToken: 138, + FirstTriviaToken: 2, + LastTriviaToken: 7, + FirstLiteralToken: 8, + LastLiteralToken: 11, + FirstTemplateToken: 11, + LastTemplateToken: 14, + FirstBinaryOperator: 25, + LastBinaryOperator: 68, + FirstNode: 139, + FirstJSDocNode: 257, + LastJSDocNode: 281, + FirstJSDocTagNode: 273, + LastJSDocTagNode: 281, + }; + export function current(): SyntaxKind.SyntaxKind { if (cachedKinds == null) { if (/1\.5\..*/.test(ts.version)) { @@ -1797,6 +2120,8 @@ module SyntaxKind { cachedKinds = SyntaxKind_1_8; } else if (/1\.9\..*/.test(ts.version)) { cachedKinds = SyntaxKind_1_9; + } else if (/2\.0\..*/.test(ts.version)) { + cachedKinds = SyntaxKind_2_0; } else { throw new Error('Unsupported TypeScript version: ' + ts.version); }