Class JvmTransferRelation<StateT extends LatticeAbstractState<StateT>>

    • Constructor Detail

      • JvmTransferRelation

        public JvmTransferRelation()
    • Method Detail

      • calculateArithmeticInstruction

        protected StateT calculateArithmeticInstruction​(Instruction instruction,
                                                        java.util.List<StateT> operands)
        Calculates the result of the instruction application. The default implementation computes join over its arguments.
      • computeIncrement

        protected StateT computeIncrement​(StateT state,
                                          int value)
        Returns the abstract state of the incremented input state by value. The default implementation computes the join.
      • getAbstractByteConstant

        public StateT getAbstractByteConstant​(byte b)
        Returns an abstract representation of a byte constant b.
      • getAbstractDefault

        public abstract StateT getAbstractDefault()
        Returns a default abstract state. In case of lattice abstract domains, it should be the bottom element.
      • getAbstractDoubleConstant

        public java.util.List<StateT> getAbstractDoubleConstant​(double d)
        Returns an abstract representation of a double constant d.
      • getAbstractFloatConstant

        public StateT getAbstractFloatConstant​(float f)
        Returns an abstract representation of a float constant f.
      • getAbstractIntegerConstant

        public StateT getAbstractIntegerConstant​(int i)
        Returns an abstract representation of an integer constant i.
      • getAbstractLongConstant

        public java.util.List<StateT> getAbstractLongConstant​(long l)
        Returns an abstract representation of a long constant l.
      • getAbstractNull

        public StateT getAbstractNull()
        Returns an abstract representation of a null reference.
      • getAbstractShortConstant

        public StateT getAbstractShortConstant​(short s)
        Returns an abstract representation of a short constant s.
      • getAbstractReferenceValue

        public StateT getAbstractReferenceValue​(java.lang.String className)
        Returns an abstract representation of a reference value object.
      • getAbstractReferenceValue

        public StateT getAbstractReferenceValue​(java.lang.String className,
                                                Clazz referencedClazz,
                                                boolean mayBeExtension,
                                                boolean mayBeNull)
        Returns an abstract representation of a reference value object.
      • getAbstractReferenceValue

        public StateT getAbstractReferenceValue​(java.lang.String className,
                                                Clazz referencedClazz,
                                                boolean mayBeExtension,
                                                boolean mayBeNull,
                                                Clazz creationClass,
                                                Method creationMethod,
                                                int creationOffset,
                                                java.lang.Object value)
        Returns an abstract representation of a reference value object.
      • processCall

        protected void processCall​(JvmAbstractState<StateT> state,
                                   Call call)
        Pops the arguments from the operand stack and passes them to invokeMethod.
      • invokeMethod

        public void invokeMethod​(JvmAbstractState<StateT> state,
                                 Call call,
                                 java.util.List<StateT> operands)
        The default implementation computes join over its arguments.
      • isInstanceOf

        protected StateT isInstanceOf​(StateT state,
                                      java.lang.String type)
        Returns an abstract state representing the result of the instanceof operation.
      • handleCheckCast

        protected StateT handleCheckCast​(StateT state,
                                         java.lang.String typeName)
        Returns an abstract state representing the result of the checkcast operation.