Class JvmTransferRelation<ContentT extends AbstractState<ContentT>>

    • Constructor Detail

      • JvmTransferRelation

        public JvmTransferRelation()
    • Method Detail

      • calculateArithmeticInstruction

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

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

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

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

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

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

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

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

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

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

        public ContentT 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<ContentT> state,
                                   Call call)
        Pops the arguments from the operand stack and passes them to invokeMethod.
      • invokeMethod

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

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

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