File tree Expand file tree Collapse file tree 4 files changed +31
-42
lines changed Expand file tree Collapse file tree 4 files changed +31
-42
lines changed Original file line number Diff line number Diff line change @@ -2208,13 +2208,13 @@ namespace ts {
2208
2208
const parameterDeclaration = parameterSymbol.declarations[0] as ParameterDeclaration;
2209
2209
const parameterType = getTypeOfSymbol(parameterSymbol);
2210
2210
const parameterTypeNode = typeToTypeNode(parameterType, enclosingDeclaration);
2211
- // TODO: how should we clone members/modifiers?
2212
2211
// TODO: check initializer accessibility correctly.
2213
2212
const parameterNode = createParameter(
2214
2213
parameterDeclaration.decorators,
2215
2214
parameterDeclaration.modifiers,
2216
2215
parameterDeclaration.dotDotDotToken && createToken(SyntaxKind.DotDotDotToken),
2217
- parameterDeclaration.name,
2216
+ // Clone name to remove trivia.
2217
+ getSynthesizedClone(parameterDeclaration.name),
2218
2218
parameterDeclaration.questionToken && createToken(SyntaxKind.QuestionToken),
2219
2219
parameterTypeNode,
2220
2220
parameterDeclaration.initializer);
Original file line number Diff line number Diff line change @@ -62,7 +62,8 @@ namespace ts.codefix {
62
62
}
63
63
64
64
const declaration = declarations [ 0 ] as Declaration ;
65
- const name = < PropertyName > declaration . name ;
65
+ // Clone name to remove leading trivia.
66
+ const name = getSynthesizedClone ( < PropertyName > declaration . name ) ;
66
67
const visibilityModifier = createVisibilityModifier ( getModifierFlags ( declaration ) ) ;
67
68
const modifiers = visibilityModifier ? createNodeArray ( [ visibilityModifier ] ) : undefined ;
68
69
const type = checker . getWidenedType ( checker . getTypeOfSymbolAtLocation ( symbol , enclosingDeclaration ) ) ;
@@ -227,4 +228,12 @@ namespace ts.codefix {
227
228
}
228
229
return undefined ;
229
230
}
231
+
232
+ function stripComments ( node : Node ) : Node {
233
+ if ( node === undefined ) {
234
+ return node ;
235
+ }
236
+ const strippedChildren = visitEachChild ( node , stripComments , nullTransformationContext ) ;
237
+ return strippedChildren === node ? getSynthesizedClone ( strippedChildren ) : strippedChildren ;
238
+ }
230
239
}
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 2
2
3
3
// @lib : es2017
4
4
5
- //// /** interface prefix */
6
- //// interface /**interface name prefix */ I /**open-brace prefix*/{
7
- //// /** property prefix*/ x /**colon prefix*/: /**number prefix*/ number;
8
- ////
5
+ //// namespace N {
6
+ //// /**enum prefix */
7
+ //// export enum /**enum identifier prefix */ E /**open-brace prefix*/ {
8
+ //// /* literal prefix */ a /** comma prefix */,
9
+ //// /* literal prefix */ b /** comma prefix */,
10
+ //// /* literal prefix */ c
11
+ //// /** close brace prefix */ }
12
+ //// /** interface prefix */
13
+ //// export interface /**interface name prefix */ I /**open-brace prefix*/ {
14
+ //// /** property prefix */ a /** colon prefix */: /** enum literal prefix 1*/ E /** dot prefix */. /** enum literal prefix 2*/a;
15
+ //// /** property prefix */ b /** colon prefix */: /** enum prefix */ E;
16
+ //// /**method signature prefix */foo /**open angle prefix */< /**type parameter name prefix */ X /** closing angle prefix */> /**open paren prefix */(/** parameter prefix */ a/** colon prefix */: /** parameter type prefix */ X /** close paren prefix */) /** colon prefix */: /** return type prefix */ string /** semicolon prefix */;
17
+ //// /**close-brace prefix*/ }
9
18
//// /**close-brace prefix*/ }
10
- //// class C implements I {[| |]}
19
+ //// class C implements N. I {[| |]}
11
20
12
21
verify . rangeAfterCodeFix ( `
13
- x: number;
22
+ a: N.E.a;
23
+ b: N.E;
24
+ foo<X>(a: X): string {
25
+ throw new Error("Method not implemented.");
26
+ }
14
27
` ) ;
You can’t perform that action at this time.
0 commit comments