Ejemplo n.º 1
0
        public override void VisitBranchExpression(AstBranchExpression branch)
        {
            Context.CodeBuilder.CsBuilder.WriteIndent();
            Context.CodeBuilder.StartBranch(branch);

            if (branch.HasExpression)
            {
                branch.VisitChildren(this);
            }

            Context.CodeBuilder.CsBuilder.EndLine();
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
 public virtual void VisitBranchExpression(AstBranchExpression branch)
 {
     branch.VisitChildren(this);
 }
Ejemplo n.º 4
0
 public override void VisitBranchExpression(AstBranchExpression branch)
 {
     branch.Parent.Should().NotBeNull();
     branch.VisitChildren(this);
 }