Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 70e5c6b

Browse filesBrowse files
author
Andy
authored
Add some missing | undefined in parser.ts (microsoft#17407)
1 parent 3330f2a commit 70e5c6b
Copy full SHA for 70e5c6b

1 file changed

+14-16Lines changed: 14 additions & 16 deletions

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎src/compiler/parser.ts‎

Copy file name to clipboardExpand all lines: src/compiler/parser.ts
+14-16Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3161,7 +3161,7 @@ namespace ts {
31613161
return addJSDocComment(finishNode(node));
31623162
}
31633163

3164-
function tryParseParenthesizedArrowFunctionExpression(): Expression {
3164+
function tryParseParenthesizedArrowFunctionExpression(): Expression | undefined {
31653165
const triState = isParenthesizedArrowFunctionExpression();
31663166
if (triState === Tristate.False) {
31673167
// It's definitely not a parenthesized arrow function expression.
@@ -3324,7 +3324,7 @@ namespace ts {
33243324
return parseParenthesizedArrowFunctionExpressionHead(/*allowAmbiguity*/ false);
33253325
}
33263326

3327-
function tryParseAsyncSimpleArrowFunctionExpression(): ArrowFunction {
3327+
function tryParseAsyncSimpleArrowFunctionExpression(): ArrowFunction | undefined {
33283328
// We do a check here so that we won't be doing unnecessarily call to "lookAhead"
33293329
if (token() === SyntaxKind.AsyncKeyword) {
33303330
const isUnParenthesizedAsyncArrowFunction = lookAhead(isUnParenthesizedAsyncArrowFunctionWorker);
@@ -4398,7 +4398,7 @@ namespace ts {
43984398
return finishNode(node);
43994399
}
44004400

4401-
function tryParseAccessorDeclaration(fullStart: number, decorators: NodeArray<Decorator>, modifiers: NodeArray<Modifier>): AccessorDeclaration {
4401+
function tryParseAccessorDeclaration(fullStart: number, decorators: NodeArray<Decorator>, modifiers: NodeArray<Modifier>): AccessorDeclaration | undefined {
44024402
if (parseContextualModifier(SyntaxKind.GetKeyword)) {
44034403
return parseAccessorDeclaration(SyntaxKind.GetAccessor, fullStart, decorators, modifiers);
44044404
}
@@ -4511,7 +4511,7 @@ namespace ts {
45114511
return addJSDocComment(finishNode(node));
45124512
}
45134513

4514-
function parseOptionalIdentifier() {
4514+
function parseOptionalIdentifier(): Identifier | undefined {
45154515
return isIdentifier() ? parseIdentifier() : undefined;
45164516
}
45174517

@@ -5576,7 +5576,7 @@ namespace ts {
55765576
return addJSDocComment(finishNode(node));
55775577
}
55785578

5579-
function parseNameOfClassDeclarationOrExpression(): Identifier {
5579+
function parseNameOfClassDeclarationOrExpression(): Identifier | undefined {
55805580
// implements is a future reserved word so
55815581
// 'class implements' might mean either
55825582
// - class expression with omitted name, 'implements' starts heritage clause
@@ -6116,7 +6116,7 @@ namespace ts {
61166116
}
61176117

61186118
export namespace JSDocParser {
6119-
export function parseJSDocTypeExpressionForTests(content: string, start: number, length: number) {
6119+
export function parseJSDocTypeExpressionForTests(content: string, start: number, length: number): { jsDocTypeExpression: JSDocTypeExpression, diagnostics: Diagnostic[] } | undefined {
61206120
initializeState(content, ScriptTarget.Latest, /*_syntaxCursor:*/ undefined, ScriptKind.JS);
61216121
sourceFile = createSourceFile("file.js", ScriptTarget.Latest, ScriptKind.JS);
61226122
scanner.setText(content, start, length);
@@ -6141,7 +6141,7 @@ namespace ts {
61416141
return finishNode(result);
61426142
}
61436143

6144-
export function parseIsolatedJSDocComment(content: string, start: number, length: number) {
6144+
export function parseIsolatedJSDocComment(content: string, start: number, length: number): { jsDoc: JSDoc, diagnostics: Diagnostic[] } | undefined {
61456145
initializeState(content, ScriptTarget.Latest, /*_syntaxCursor:*/ undefined, ScriptKind.JS);
61466146
sourceFile = <SourceFile>{ languageVariant: LanguageVariant.Standard, text: content };
61476147
const jsDoc = parseJSDocCommentWorker(start, length);
@@ -6476,7 +6476,7 @@ namespace ts {
64766476
tags.end = tag.end;
64776477
}
64786478

6479-
function tryParseTypeExpression(): JSDocTypeExpression {
6479+
function tryParseTypeExpression(): JSDocTypeExpression | undefined {
64806480
return tryParse(() => {
64816481
skipWhitespace();
64826482
if (token() !== SyntaxKind.OpenBraceToken) {
@@ -6767,7 +6767,7 @@ namespace ts {
67676767
return false;
67686768
}
67696769

6770-
function parseTemplateTag(atToken: AtToken, tagName: Identifier): JSDocTemplateTag {
6770+
function parseTemplateTag(atToken: AtToken, tagName: Identifier): JSDocTemplateTag | undefined {
67716771
if (forEach(tags, t => t.kind === SyntaxKind.JSDocTemplateTag)) {
67726772
parseErrorAtPosition(tagName.pos, scanner.getTokenPos() - tagName.pos, Diagnostics._0_tag_already_specified, tagName.escapedText);
67736773
}
@@ -6829,12 +6829,10 @@ namespace ts {
68296829
return entity;
68306830
}
68316831

6832-
function parseJSDocIdentifierName(createIfMissing = false): Identifier {
6833-
return createJSDocIdentifier(tokenIsIdentifierOrKeyword(token()), createIfMissing);
6834-
}
6835-
6836-
function createJSDocIdentifier(isIdentifier: boolean, createIfMissing: boolean): Identifier {
6837-
if (!isIdentifier) {
6832+
function parseJSDocIdentifierName(): Identifier | undefined;
6833+
function parseJSDocIdentifierName(createIfMissing: true): Identifier;
6834+
function parseJSDocIdentifierName(createIfMissing = false): Identifier | undefined {
6835+
if (!tokenIsIdentifierOrKeyword(token())) {
68386836
if (createIfMissing) {
68396837
return createMissingNode<Identifier>(SyntaxKind.Identifier, /*reportAtCurrentPosition*/ true, Diagnostics.Identifier_expected);
68406838
}
@@ -7215,7 +7213,7 @@ namespace ts {
72157213
}
72167214
}
72177215

7218-
function getLastChildWorker(node: Node): Node {
7216+
function getLastChildWorker(node: Node): Node | undefined {
72197217
let last: Node = undefined;
72207218
forEachChild(node, child => {
72217219
if (nodeIsPresent(child)) {

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.