Skip to content

Commit 45a77c0

Browse files
author
Arthur Ozga
committed
visit question token
1 parent aeb5264 commit 45a77c0

3 files changed

Lines changed: 17 additions & 1 deletion

File tree

src/compiler/factory.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -314,10 +314,11 @@ namespace ts {
314314
return node;
315315
}
316316

317-
export function updateProperty(node: PropertyDeclaration, decorators: Decorator[] | undefined, modifiers: Modifier[] | undefined, name: PropertyName, type: TypeNode | undefined, initializer: Expression | undefined) {
317+
export function updateProperty(node: PropertyDeclaration, decorators: Decorator[] | undefined, modifiers: Modifier[] | undefined, name: string | PropertyName, questionToken: QuestionToken | undefined, type: TypeNode | undefined, initializer: Expression | undefined) {
318318
return node.decorators !== decorators
319319
|| node.modifiers !== modifiers
320320
|| node.name !== name
321+
|| node.questionToken !== questionToken
321322
|| node.type !== type
322323
|| node.initializer !== initializer
323324
? updateNode(createProperty(decorators, modifiers, name, node.questionToken, type, initializer), node)
@@ -360,6 +361,7 @@ namespace ts {
360361
|| node.modifiers !== modifiers
361362
|| node.asteriskToken !== asteriskToken
362363
|| node.name !== name
364+
|| node.questionToken !== questionToken
363365
|| node.typeParameters !== typeParameters
364366
|| node.parameters !== parameters
365367
|| node.type !== type

src/compiler/visitor.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@ namespace ts {
270270
nodesVisitor((<PropertyDeclaration>node).decorators, visitor, isDecorator),
271271
nodesVisitor((<PropertyDeclaration>node).modifiers, visitor, isModifier),
272272
visitNode((<PropertyDeclaration>node).name, visitor, isPropertyName),
273+
visitNode((<PropertyDeclaration>node).questionToken, tokenVisitor, isToken),
273274
visitNode((<PropertyDeclaration>node).type, visitor, isTypeNode),
274275
visitNode((<PropertyDeclaration>node).initializer, visitor, isExpression));
275276

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
/// <reference path='fourslash.ts' />
2+
3+
//// interface IPerson {
4+
//// name: string;
5+
//// birthday?: string;
6+
//// }
7+
////
8+
//// class Person implements IPerson {[| |]}
9+
10+
verify.rangeAfterCodeFix(`
11+
name: string;
12+
birthday?: string;
13+
`);

0 commit comments

Comments
 (0)