net.sf.jexpel.internal.expr.arithmetic
Class UnaryMinus

java.lang.Object
  extended by net.sf.jexpel.internal.expr.UnaryExpression
      extended by net.sf.jexpel.internal.expr.arithmetic.UnaryMinus
All Implemented Interfaces:
Expression, Compilable, MessageCodes, org.objectweb.asm.Opcodes

public class UnaryMinus
extends UnaryExpression


Field Summary
 
Fields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6
 
Fields inherited from interface net.sf.jexpel.messages.MessageCodes
ARRAY_ACCESS, C_NOT_FOUND, COND_TYPES, CONDITIONAL, CONSTANT, EXPECTED, INVALID, INVALID_ARG, LBRA_WO_RBRA, LPAR_WO_RPAR, M_NOT_FOUND, NEAR_TOKEN, NO_ARRAY, PROP_RO, PROP_WO, READ_ONLY
 
Constructor Summary
UnaryMinus(Expression exp)
           
 
Method Summary
 void compileGet(org.objectweb.asm.MethodVisitor mv)
           
 java.lang.Object get(java.lang.Object scope)
          Executes the expression and returns its value
 
Methods inherited from class net.sf.jexpel.internal.expr.UnaryExpression
calculeGet, calculeSet, compileSet, getType, isConstant, set, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UnaryMinus

public UnaryMinus(Expression exp)
           throws ExpressionException
Throws:
ExpressionException
Method Detail

get

public java.lang.Object get(java.lang.Object scope)
                     throws java.lang.Exception
Description copied from interface: Expression
Executes the expression and returns its value

Parameters:
scope - the object where the expression will be executed
Returns:
the result
Throws:
java.lang.Exception - all exceptions. No exceptions are treated for better performance.

compileGet

public void compileGet(org.objectweb.asm.MethodVisitor mv)
                throws java.lang.Exception
Throws:
java.lang.Exception