Beispiel #1
0
        public Statement DecompileCase()
        {
            PopByte();
            var offs = ReadUInt16(); // MemOff
            Statement statement = null;

            if (offs == (UInt16)0xFFFF)
            {
                statement = new DefaultStatement(null, null);
            }
            else
            {
                var expr = DecompileExpression();
                if (expr == null)
                    return null; //ERROR ?

                statement = new CaseStatement(expr, null, null);
            }

            StatementLocations.Add(StartPositions.Pop(), statement);
            return statement;
        }
 public bool VisitNode(CaseStatement node)
 {
     throw new NotImplementedException();
 }
Beispiel #3
0
 public bool VisitNode(CaseStatement node)
 {
     // case expression:
     NestingLevel--; // de-indent this line only
     Write("case ");
     node.Value.AcceptVisitor(this);
     Append(":");
     NestingLevel++;
     return true;
 }