Exemplo n.º 1
0
            protected internal override void VisitUnaryOp(UnaryOp node, object data)
            {
                StackTypes stack = data as StackTypes;
                switch(node.Op)
                {
                    case UnaryOp.ArithOp.NEG:
                    {
                        Verifier.ProcessNeg(stack);
                    } break;
                    case UnaryOp.ArithOp.NOT:
                    {
                        Verifier.ProcessNot(stack);
                    } break;
                    default: throw new VerifierException();
                }

                AddTask(node.Next,stack);
            }
Exemplo n.º 2
0
 protected internal virtual void VisitUnaryOp(UnaryOp node, object data)
 {
     throw new NodeNotSupportedException(node);
 }
Exemplo n.º 3
0
 protected override void VisitUnaryOp(UnaryOp upNode, object o)
 {
 }
Exemplo n.º 4
0
 protected override void VisitUnaryOp(UnaryOp upNode, object o)
 {
     State state = o as State;
     BTValue val = state.Stack[0] as PrimitiveBTValue;
     Annotation.SetNodeBTType(upNode, val.BTType);
 }
Exemplo n.º 5
0
 protected internal override void VisitUnaryOp(UnaryOp node, object data)
 {
     switch(node.Op)
     {
         case UnaryOp.ArithOp.NEG:
         {
             generator.Emit(OpCodes.Neg);
         } break;
         case UnaryOp.ArithOp.NOT:
         {
             generator.Emit(OpCodes.Not);
         } break;
         default: throw new EmissionException();
     }
     AddTask(node.Next,null);
 }