MCPcopy Create free account
hub / github.com/microsoft/typescript-go / emitEmbeddedStatement

Method emitEmbeddedStatement

internal/printer/printer.go:4122–4138  ·  view source on GitHub ↗
(parentNode *ast.Node, node *ast.Statement)

Source from the content-addressed store, hash-verified

4120}
4121
4122func (p *Printer) emitEmbeddedStatement(parentNode *ast.Node, node *ast.Statement) {
4123 if ast.IsBlock(node) ||
4124 p.shouldEmitOnSingleLine(parentNode) ||
4125 p.Options.PreserveSourceNewlines && p.getLeadingLineTerminatorCount(parentNode, node, LFNone) == 0 {
4126 p.writeSpace()
4127 p.emitStatement(node)
4128 } else {
4129 p.writeLine()
4130 p.increaseIndent()
4131 if node.Kind == ast.KindEmptyStatement {
4132 p.emitEmptyStatement(node.AsEmptyStatement(), true /*isEmbeddedStatement*/)
4133 } else {
4134 p.emitStatement(node)
4135 }
4136 p.decreaseIndent()
4137 }
4138}
4139
4140func (p *Printer) emitStatement(node *ast.Statement) {
4141 switch node.Kind {

Callers 7

emitIfStatementMethod · 0.95
emitDoStatementMethod · 0.95
emitWhileStatementMethod · 0.95
emitForStatementMethod · 0.95
emitForInStatementMethod · 0.95
emitForOfStatementMethod · 0.95
emitWithStatementMethod · 0.95

Calls 10

writeSpaceMethod · 0.95
emitStatementMethod · 0.95
writeLineMethod · 0.95
increaseIndentMethod · 0.95
emitEmptyStatementMethod · 0.95
decreaseIndentMethod · 0.95
IsBlockFunction · 0.92
AsEmptyStatementMethod · 0.80

Tested by

no test coverage detected