@@ -182,17 +182,18 @@ func (c *Checker) typeToStringEx(t *Type, enclosingDeclaration *ast.Node, flags
182
182
if noTruncation {
183
183
combinedFlags = combinedFlags | nodebuilder .FlagsNoTruncation
184
184
}
185
- typeNode := c .nodeBuilder .TypeToTypeNode (t , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil )
185
+ nodeBuilder := c .getNodeBuilder ()
186
+ typeNode := nodeBuilder .TypeToTypeNode (t , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil )
186
187
if typeNode == nil {
187
188
panic ("should always get typenode" )
188
189
}
189
190
// The unresolved type gets a synthesized comment on `any` to hint to users that it's not a plain `any`.
190
191
// Otherwise, we always strip comments out.
191
192
var printer * printer.Printer
192
193
if t == c .unresolvedType {
193
- printer = createPrinterWithDefaults (c . diagnosticConstructionContext )
194
+ printer = createPrinterWithDefaults (nodeBuilder . EmitContext () )
194
195
} else {
195
- printer = createPrinterWithRemoveComments (c . diagnosticConstructionContext )
196
+ printer = createPrinterWithRemoveComments (nodeBuilder . EmitContext () )
196
197
}
197
198
var sourceFile * ast.SourceFile
198
199
if enclosingDeclaration != nil {
@@ -245,22 +246,23 @@ func (c *Checker) symbolToStringEx(symbol *ast.Symbol, enclosingDeclaration *ast
245
246
internalNodeFlags |= nodebuilder .InternalFlagsWriteComputedProps
246
247
}
247
248
249
+ nodeBuilder := c .getNodeBuilder ()
248
250
var sourceFile * ast.SourceFile
249
251
if enclosingDeclaration != nil {
250
252
sourceFile = ast .GetSourceFileOfNode (enclosingDeclaration )
251
253
}
252
254
var printer_ * printer.Printer
253
255
if enclosingDeclaration != nil && enclosingDeclaration .Kind == ast .KindSourceFile {
254
- printer_ = createPrinterWithRemoveCommentsNeverAsciiEscape (c . diagnosticConstructionContext )
256
+ printer_ = createPrinterWithRemoveCommentsNeverAsciiEscape (nodeBuilder . EmitContext () )
255
257
} else {
256
- printer_ = createPrinterWithRemoveComments (c . diagnosticConstructionContext )
258
+ printer_ = createPrinterWithRemoveComments (nodeBuilder . EmitContext () )
257
259
}
258
260
259
261
var builder func (symbol * ast.Symbol , meaning ast.SymbolFlags , enclosingDeclaration * ast.Node , flags nodebuilder.Flags , internalFlags nodebuilder.InternalFlags , tracker nodebuilder.SymbolTracker ) * ast.Node
260
262
if flags & SymbolFormatFlagsAllowAnyNodeKind != 0 {
261
- builder = c . nodeBuilder .SymbolToNode
263
+ builder = nodeBuilder .SymbolToNode
262
264
} else {
263
- builder = c . nodeBuilder .SymbolToEntityName
265
+ builder = nodeBuilder .SymbolToEntityName
264
266
}
265
267
entity := builder (symbol , meaning , enclosingDeclaration , nodeFlags , internalNodeFlags , nil ) // TODO: GH#18217
266
268
printer_ .Write (entity /*sourceFile*/ , sourceFile , getTrailingSemicolonDeferringWriter (writer ), nil ) // TODO: GH#18217
@@ -294,9 +296,10 @@ func (c *Checker) signatureToStringEx(signature *Signature, enclosingDeclaration
294
296
writer , putWriter := printer .GetSingleLineStringWriter ()
295
297
defer putWriter ()
296
298
299
+ nodeBuilder := c .getNodeBuilder ()
297
300
combinedFlags := toNodeBuilderFlags (flags ) | nodebuilder .FlagsIgnoreErrors | nodebuilder .FlagsWriteTypeParametersInQualifiedName
298
- sig := c . nodeBuilder .SignatureToSignatureDeclaration (signature , sigOutput , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil )
299
- printer_ := createPrinterWithRemoveCommentsOmitTrailingSemicolon (c . diagnosticConstructionContext )
301
+ sig := nodeBuilder .SignatureToSignatureDeclaration (signature , sigOutput , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil )
302
+ printer_ := createPrinterWithRemoveCommentsOmitTrailingSemicolon (nodeBuilder . EmitContext () )
300
303
var sourceFile * ast.SourceFile
301
304
if enclosingDeclaration != nil {
302
305
sourceFile = ast .GetSourceFileOfNode (enclosingDeclaration )
@@ -312,9 +315,10 @@ func (c *Checker) typePredicateToString(typePredicate *TypePredicate) string {
312
315
func (c * Checker ) typePredicateToStringEx (typePredicate * TypePredicate , enclosingDeclaration * ast.Node , flags TypeFormatFlags ) string {
313
316
writer , putWriter := printer .GetSingleLineStringWriter ()
314
317
defer putWriter ()
318
+ nodeBuilder := c .getNodeBuilder ()
315
319
combinedFlags := toNodeBuilderFlags (flags ) | nodebuilder .FlagsIgnoreErrors | nodebuilder .FlagsWriteTypeParametersInQualifiedName
316
- predicate := c . nodeBuilder .TypePredicateToTypePredicateNode (typePredicate , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil ) // TODO: GH#18217
317
- printer_ := createPrinterWithRemoveComments (c . diagnosticConstructionContext )
320
+ predicate := nodeBuilder .TypePredicateToTypePredicateNode (typePredicate , enclosingDeclaration , combinedFlags , nodebuilder .InternalFlagsNone , nil ) // TODO: GH#18217
321
+ printer_ := createPrinterWithRemoveComments (nodeBuilder . EmitContext () )
318
322
var sourceFile * ast.SourceFile
319
323
if enclosingDeclaration != nil {
320
324
sourceFile = ast .GetSourceFileOfNode (enclosingDeclaration )
0 commit comments