()
| 33946 | return token() === 8 /* SyntaxKind.NumericLiteral */ || token() === 9 /* SyntaxKind.BigIntLiteral */; |
| 33947 | } |
| 33948 | function parseNonArrayType() { |
| 33949 | switch (token()) { |
| 33950 | case 130 /* SyntaxKind.AnyKeyword */: |
| 33951 | case 155 /* SyntaxKind.UnknownKeyword */: |
| 33952 | case 150 /* SyntaxKind.StringKeyword */: |
| 33953 | case 147 /* SyntaxKind.NumberKeyword */: |
| 33954 | case 158 /* SyntaxKind.BigIntKeyword */: |
| 33955 | case 151 /* SyntaxKind.SymbolKeyword */: |
| 33956 | case 133 /* SyntaxKind.BooleanKeyword */: |
| 33957 | case 153 /* SyntaxKind.UndefinedKeyword */: |
| 33958 | case 143 /* SyntaxKind.NeverKeyword */: |
| 33959 | case 148 /* SyntaxKind.ObjectKeyword */: |
| 33960 | // If these are followed by a dot, then parse these out as a dotted type reference instead. |
| 33961 | return tryParse(parseKeywordAndNoDot) || parseTypeReference(); |
| 33962 | case 66 /* SyntaxKind.AsteriskEqualsToken */: |
| 33963 | // If there is '*=', treat it as * followed by postfix = |
| 33964 | scanner.reScanAsteriskEqualsToken(); |
| 33965 | // falls through |
| 33966 | case 41 /* SyntaxKind.AsteriskToken */: |
| 33967 | return parseJSDocAllType(); |
| 33968 | case 60 /* SyntaxKind.QuestionQuestionToken */: |
| 33969 | // If there is '??', treat it as prefix-'?' in JSDoc type. |
| 33970 | scanner.reScanQuestionToken(); |
| 33971 | // falls through |
| 33972 | case 57 /* SyntaxKind.QuestionToken */: |
| 33973 | return parseJSDocUnknownOrNullableType(); |
| 33974 | case 98 /* SyntaxKind.FunctionKeyword */: |
| 33975 | return parseJSDocFunctionType(); |
| 33976 | case 53 /* SyntaxKind.ExclamationToken */: |
| 33977 | return parseJSDocNonNullableType(); |
| 33978 | case 14 /* SyntaxKind.NoSubstitutionTemplateLiteral */: |
| 33979 | case 10 /* SyntaxKind.StringLiteral */: |
| 33980 | case 8 /* SyntaxKind.NumericLiteral */: |
| 33981 | case 9 /* SyntaxKind.BigIntLiteral */: |
| 33982 | case 110 /* SyntaxKind.TrueKeyword */: |
| 33983 | case 95 /* SyntaxKind.FalseKeyword */: |
| 33984 | case 104 /* SyntaxKind.NullKeyword */: |
| 33985 | return parseLiteralTypeNode(); |
| 33986 | case 40 /* SyntaxKind.MinusToken */: |
| 33987 | return lookAhead(nextTokenIsNumericOrBigIntLiteral) ? parseLiteralTypeNode(/*negative*/ true) : parseTypeReference(); |
| 33988 | case 114 /* SyntaxKind.VoidKeyword */: |
| 33989 | return parseTokenNode(); |
| 33990 | case 108 /* SyntaxKind.ThisKeyword */: { |
| 33991 | var thisKeyword = parseThisTypeNode(); |
| 33992 | if (token() === 139 /* SyntaxKind.IsKeyword */ && !scanner.hasPrecedingLineBreak()) { |
| 33993 | return parseThisTypePredicate(thisKeyword); |
| 33994 | } |
| 33995 | else { |
| 33996 | return thisKeyword; |
| 33997 | } |
| 33998 | } |
| 33999 | case 112 /* SyntaxKind.TypeOfKeyword */: |
| 34000 | return lookAhead(isStartOfTypeOfImportType) ? parseImportType() : parseTypeQuery(); |
| 34001 | case 18 /* SyntaxKind.OpenBraceToken */: |
| 34002 | return lookAhead(isStartOfMappedType) ? parseMappedType() : parseTypeLiteral(); |
| 34003 | case 22 /* SyntaxKind.OpenBracketToken */: |
| 34004 | return parseTupleType(); |
| 34005 | case 20 /* SyntaxKind.OpenParenToken */: |
no test coverage detected
searching dependent graphs…