Class JvmAssumeCfaEdge

  • All Implemented Interfaces:
    CfaEdge<JvmCfaNode>

    public class JvmAssumeCfaEdge
    extends JvmInstructionCfaEdge
    An edge representing an assumption on a JVM branch instruction that can be either taken or not taken.
    • Constructor Detail

      • JvmAssumeCfaEdge

        public JvmAssumeCfaEdge​(CodeAttribute methodCode,
                                int offset,
                                boolean isSatisfied)
        Create a disconnected JVM CFA assume branch edge.
        Parameters:
        methodCode - the code attribute of the method the edge belongs to
        offset - the offset of the instruction represented by the edge
        isSatisfied - an assumption on the branch result
      • JvmAssumeCfaEdge

        public JvmAssumeCfaEdge​(JvmCfaNode source,
                                JvmCfaNode target,
                                CodeAttribute methodCode,
                                int offset,
                                boolean isSatisfied)
        Create a JVM CFA assume branch edge. Also sets it as the entering and leaving edge of the source and target nodes.
        Parameters:
        source - the source node of the edge
        target - the target node of the edge
        methodCode - the code attribute of the method the edge belongs to
        offset - the offset of the instruction represented by the edge
        isSatisfied - an assumption on hte branch result
    • Method Detail

      • isSatisfied

        public boolean isSatisfied()
        Returns the assumption on the branch statement result made on this edge.