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

Method bindDoStatement

internal/binder/binder.go:1871–1883  ·  view source on GitHub ↗
(node *ast.Node)

Source from the content-addressed store, hash-verified

1869}
1870
1871func (b *Binder) bindDoStatement(node *ast.Node) {
1872 stmt := node.AsDoStatement()
1873 preDoLabel := b.createLoopLabel()
1874 preConditionLabel := b.setContinueTarget(node, b.createBranchLabel())
1875 postDoLabel := b.createBranchLabel()
1876 b.addAntecedent(preDoLabel, b.currentFlow)
1877 b.currentFlow = preDoLabel
1878 b.bindIterativeStatement(stmt.Statement, postDoLabel, preConditionLabel)
1879 b.addAntecedent(preConditionLabel, b.currentFlow)
1880 b.currentFlow = b.finishFlowLabel(preConditionLabel)
1881 b.bindCondition(stmt.Expression, preDoLabel, postDoLabel)
1882 b.currentFlow = b.finishFlowLabel(postDoLabel)
1883}
1884
1885func (b *Binder) bindForStatement(node *ast.Node) {
1886 stmt := node.AsForStatement()

Callers 1

bindChildrenMethod · 0.95

Calls 8

createLoopLabelMethod · 0.95
setContinueTargetMethod · 0.95
createBranchLabelMethod · 0.95
addAntecedentMethod · 0.95
finishFlowLabelMethod · 0.95
bindConditionMethod · 0.95
AsDoStatementMethod · 0.80

Tested by

no test coverage detected