public override void VisitBranchExpression(AstBranchExpression branch) { Context.CodeBuilder.CsBuilder.WriteIndent(); Context.CodeBuilder.StartBranch(branch); if (branch.HasExpression) { branch.VisitChildren(this); } Context.CodeBuilder.CsBuilder.EndLine(); }
public void StartBranch(AstBranchExpression branch) { var br = branch.BranchKind switch { AstBranchKind.ExitFunction => BranchStatement.Return, AstBranchKind.ExitLoop => BranchStatement.Break, AstBranchKind.ExitIteration => BranchStatement.Continue, AstBranchKind.Conditional => BranchStatement.If, _ => throw new InternalErrorException("No BranchType set!") }; _csBuilder.StartBranch(br); }
public virtual void VisitBranchExpression(AstBranchExpression branch) { branch.VisitChildren(this); }
public override void VisitBranchExpression(AstBranchExpression branch) { branch.Parent.Should().NotBeNull(); branch.VisitChildren(this); }