Ejemplo n.º 1
0
 public IfStmt(Expr cond, Stmt stmt) {
     this.Cond = cond;
     this.Stmt = stmt;
 }
Ejemplo n.º 2
0
 public CaseStmt(Int32 value, Stmt stmt) {
     this.Value = value;
     this.Stmt = stmt;
 }
Ejemplo n.º 3
0
 public DefaultStmt(Stmt stmt) {
     this.Stmt = stmt;
 }
Ejemplo n.º 4
0
 public override void Visit(Stmt stmt)
 {
     throw new InvalidOperationException("Cannot visit abstract Stmt");
 }
Ejemplo n.º 5
0
 public SwitchStmt(Expr expr, Stmt stmt) {
     this.Expr = expr;
     this.Stmt = stmt;
 }
Ejemplo n.º 6
0
 public FuncDef(String name, StorageClass scs, FunctionType type, Stmt stmt) {
     this.name = name;
     this.scs  = scs;
     this.type = type;
     this.stmt = stmt;
 }
Ejemplo n.º 7
0
 public static IReadOnlyList<String> GrabLabels(Stmt stmt) {
     GotoLabelsGrabber grabber = new GotoLabelsGrabber();
     stmt.Accept(grabber);
     return grabber.Labels;
 }
Ejemplo n.º 8
0
 public IfElseStmt(Expr cond, Stmt trueStmt, Stmt falseStmt)
 {
     this.Cond      = cond;
     this.TrueStmt  = trueStmt;
     this.FalseStmt = falseStmt;
 }
Ejemplo n.º 9
0
 public LabeledStmt(String label, Stmt stmt)
 {
     this.Label = label;
     this.Stmt  = stmt;
 }
Ejemplo n.º 10
0
 public DefaultStmt(Stmt stmt)
 {
     this.Stmt = stmt;
 }
Ejemplo n.º 11
0
 public IfStmt(Expr cond, Stmt stmt)
 {
     this.Cond = cond;
     this.Stmt = stmt;
 }
Ejemplo n.º 12
0
 public CaseStmt(Int32 value, Stmt stmt)
 {
     this.Value = value;
     this.Stmt  = stmt;
 }
Ejemplo n.º 13
0
 public SwitchStmt(Expr expr, Stmt stmt)
 {
     this.Expr = expr;
     this.Stmt = stmt;
 }
Ejemplo n.º 14
0
 public DoWhileStmt(Stmt body, Expr cond)
 {
     this.Body = body;
     this.Cond = cond;
 }
Ejemplo n.º 15
0
 public IfElseStmt(Expr cond, Stmt trueStmt, Stmt falseStmt) {
     this.Cond = cond;
     this.TrueStmt = trueStmt;
     this.FalseStmt = falseStmt;
 }
Ejemplo n.º 16
0
 public WhileStmt(Expr cond, Stmt body) {
     if (!cond.Type.IsScalar) {
         throw new InvalidProgramException();
     }
     this.Cond = cond;
     this.Body = body;
 }
Ejemplo n.º 17
0
 public LabeledStmt(String label, Stmt stmt) {
     this.Label = label;
     this.Stmt = stmt;
 }
Ejemplo n.º 18
0
 public DoWhileStmt(Stmt body, Expr cond) {
     this.Body = body;
     this.Cond = cond;
 }
Ejemplo n.º 19
0
 public virtual void Visit(Stmt stmt) {}
Ejemplo n.º 20
0
 public ForStmt(Option<Expr> init, Option<Expr> cond, Option<Expr> loop, Stmt body) {
     this.Init = init;
     this.Cond = cond;
     this.Loop = loop;
     this.Body = body;
 }
Ejemplo n.º 21
0
 public override void Visit(Stmt stmt) {
     throw new InvalidOperationException("Cannot visit abstract Stmt");
 }
Ejemplo n.º 22
0
 public virtual void Visit(Stmt stmt)
 {
 }