MCPcopy
hub / github.com/microsoft/typescript-go / newNodeBuilderImpl

Function newNodeBuilderImpl

internal/checker/nodebuilderimpl.go:119–126  ·  view source on GitHub ↗

Node builder utility functions

(ch *Checker, e *printer.EmitContext, idToSymbol map[*ast.IdentifierNode]*ast.Symbol)

Source from the content-addressed store, hash-verified

117// Node builder utility functions
118
119func newNodeBuilderImpl(ch *Checker, e *printer.EmitContext, idToSymbol map[*ast.IdentifierNode]*ast.Symbol) *NodeBuilderImpl {
120 if idToSymbol == nil {
121 idToSymbol = make(map[*ast.IdentifierNode]*ast.Symbol)
122 }
123 b := &NodeBuilderImpl{f: e.Factory.AsNodeFactory(), ch: ch, e: e, idToSymbol: idToSymbol, pc: pseudochecker.NewPseudoChecker(ch.strictNullChecks, ch.exactOptionalPropertyTypes)}
124 b.cloneBindingNameVisitor = ast.NewNodeVisitor(b.cloneBindingName, b.f, ast.NodeVisitorHooks{})
125 return b
126}
127
128func (b *NodeBuilderImpl) saveRestoreFlags() func() {
129 flags := b.ctx.flags

Callers 1

NewNodeBuilderExFunction · 0.85

Calls 4

NewPseudoCheckerFunction · 0.92
NewNodeVisitorFunction · 0.92
AsNodeFactoryMethod · 0.65
makeFunction · 0.50

Tested by

no test coverage detected