@@ -2192,16 +2192,16 @@ namespace ts {
2192
2192
}
2193
2193
2194
2194
function buildBindingPatternDisplay(bindingPattern: BindingPattern, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags, symbolStack?: Symbol[]) {
2195
- // We have to explicitly emit square bracket and bracket because these tokens are not store inside the node.
2195
+ // We have to explicitly emit square bracket and bracket because these tokens are not stored inside the node.
2196
2196
if (bindingPattern.kind === SyntaxKind.ObjectBindingPattern) {
2197
2197
writePunctuation(writer, SyntaxKind.OpenBraceToken);
2198
- buildDisplayForCommaSeparatedList(bindingPattern.elements, writer, enclosingDeclaration, flags, symbolStack, buildBindingElementDisplay );
2198
+ buildDisplayForCommaSeparatedList(bindingPattern.elements, writer, e => buildBindingElementDisplay(e, writer, enclosingDeclaration, flags, symbolStack) );
2199
2199
writePunctuation(writer, SyntaxKind.CloseBraceToken);
2200
2200
}
2201
2201
else if (bindingPattern.kind === SyntaxKind.ArrayBindingPattern) {
2202
2202
writePunctuation(writer, SyntaxKind.OpenBracketToken);
2203
2203
const elements = bindingPattern.elements;
2204
- buildDisplayForCommaSeparatedList(elements, writer, enclosingDeclaration, flags, symbolStack, buildBindingElementDisplay );
2204
+ buildDisplayForCommaSeparatedList(elements, writer, e => buildBindingElementDisplay(e, writer, enclosingDeclaration, flags, symbolStack) );
2205
2205
if (elements && elements.hasTrailingComma) {
2206
2206
writePunctuation(writer, SyntaxKind.CommaToken);
2207
2207
}
@@ -2217,35 +2217,34 @@ namespace ts {
2217
2217
if (bindingElement.propertyName) {
2218
2218
writer.writeSymbol(getTextOfNode(bindingElement.propertyName), bindingElement.symbol);
2219
2219
writePunctuation(writer, SyntaxKind.ColonToken);
2220
+ writeSpace(writer);
2220
2221
}
2221
- if (bindingElement.name) {
2222
- if (isBindingPattern(bindingElement.name)) {
2223
- buildBindingPatternDisplay(<BindingPattern>bindingElement.name, writer, enclosingDeclaration, flags, symbolStack);
2224
- }
2225
- else {
2226
- if (bindingElement.dotDotDotToken) {
2227
- writePunctuation(writer, SyntaxKind.DotDotDotToken);
2228
- }
2229
- appendSymbolNameOnly(bindingElement.symbol, writer);
2222
+ if (isBindingPattern(bindingElement.name)) {
2223
+ buildBindingPatternDisplay(<BindingPattern>bindingElement.name, writer, enclosingDeclaration, flags, symbolStack);
2224
+ }
2225
+ else {
2226
+ if (bindingElement.dotDotDotToken) {
2227
+ writePunctuation(writer, SyntaxKind.DotDotDotToken);
2230
2228
}
2229
+ appendSymbolNameOnly(bindingElement.symbol, writer);
2231
2230
}
2232
2231
}
2233
2232
2234
2233
function buildDisplayForTypeParametersAndDelimiters(typeParameters: TypeParameter[], writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags, symbolStack?: Symbol[]) {
2235
2234
if (typeParameters && typeParameters.length) {
2236
2235
writePunctuation(writer, SyntaxKind.LessThanToken);
2237
- buildDisplayForCommaSeparatedList(typeParameters, writer, enclosingDeclaration, flags, symbolStack, buildTypeParameterDisplay );
2236
+ buildDisplayForCommaSeparatedList(typeParameters, writer, p => buildTypeParameterDisplay(p, writer, enclosingDeclaration, flags, symbolStack) );
2238
2237
writePunctuation(writer, SyntaxKind.GreaterThanToken);
2239
2238
}
2240
2239
}
2241
2240
2242
- function buildDisplayForCommaSeparatedList<T>(list: T[], writer: SymbolWriter, enclosingDeclaration: Node, flags: TypeFormatFlags, symbolStack: Symbol[], action: (item: T, writer: SymbolWriter, enclosingDeclaration: Node, flags: TypeFormatFlags, symbolStack: Symbol[] ) => void) {
2241
+ function buildDisplayForCommaSeparatedList<T>(list: T[], writer: SymbolWriter, action: (item: T) => void) {
2243
2242
for (let i = 0; i < list.length; i++) {
2244
2243
if (i > 0) {
2245
2244
writePunctuation(writer, SyntaxKind.CommaToken);
2246
2245
writeSpace(writer);
2247
2246
}
2248
- action(list[i], writer, enclosingDeclaration, flags, symbolStack );
2247
+ action(list[i]);
2249
2248
}
2250
2249
}
2251
2250
0 commit comments