示例#1
0
        public readonly Statement otherwise; // Empty statement if there was no else part.

        public IfStatement(ComponentReader reader)
        {
            fileOffset = new FileOffset(reader);
            condition  = reader.ReadExpression();
            then       = reader.ReadStatement();
            otherwise  = reader.ReadStatement();
        }
示例#2
0
 public AssertInitializer(ComponentReader reader)
 {
     // #V12 - This is in the Binary.MD but not in the actual code.
     isSynthetic = reader.ReadByte();
     // statement = new AssertStatement(reader);
     statement = reader.ReadStatement() as AssertStatement;
 }
示例#3
0
 public Catch(ComponentReader reader)
 {
     fileOffset = new FileOffset(reader);
     guard      = reader.ReadDartType();
     exception  = reader.ReadOption(r => new VariableDeclaration(r));
     stackTrace = reader.ReadOption(r => new VariableDeclaration(r));
     body       = reader.ReadStatement();
 }
示例#4
0
 public AsyncForInStatement(ComponentReader reader)
 {
     fileOffset = new FileOffset(reader);
     bodyOffset = new FileOffset(reader);
     variable   = new VariableDeclaration(reader);
     iterable   = reader.ReadExpression();
     body       = reader.ReadStatement();
 }
示例#5
0
 public ForStatement(ComponentReader reader)
 {
     fileOffset = new FileOffset(reader);
     variables  = reader.ReadList(r => new VariableDeclaration(r));
     condition  = reader.ReadOption(r => r.ReadExpression());
     updates    = reader.ReadList(r => r.ReadExpression());
     body       = reader.ReadStatement();
 }
示例#6
0
 public TryFinally(ComponentReader reader)
 {
     body      = reader.ReadStatement();
     finalizer = reader.ReadStatement();
 }
示例#7
0
 public TryCatch(ComponentReader reader)
 {
     body    = reader.ReadStatement();
     flags   = (Flag)reader.ReadByte();
     catches = reader.ReadList(r => new Catch(r));
 }
示例#8
0
 public SwitchCase(ComponentReader reader)
 {
     expressions = reader.ReadList(r => new Pair <FileOffset, Expression>(new FileOffset(r), r.ReadExpression()));
     isDefault   = reader.ReadByte();
     body        = reader.ReadStatement();
 }
示例#9
0
 public DoStatement(ComponentReader reader)
 {
     fileOffset = new FileOffset(reader);
     body       = reader.ReadStatement();
     condition  = reader.ReadExpression();
 }
示例#10
0
 public LabeledStatement(ComponentReader reader)
 {
     body = reader.ReadStatement();
 }