Class JvmCfaEdge

java.lang.Object
proguard.analysis.cpa.jvm.cfa.edges.JvmCfaEdge
All Implemented Interfaces:
CfaEdge<JvmCfaNode>
Direct Known Subclasses:
JvmAssumeExceptionCfaEdge, JvmCallCfaEdge, JvmInstructionCfaEdge

public abstract class JvmCfaEdge extends Object implements CfaEdge<JvmCfaNode>
Default implementation of CfaEdge for JVM instructions.
  • Constructor Details

    • JvmCfaEdge

      public JvmCfaEdge()
      Create a disconnected JVM CFA edge.
    • JvmCfaEdge

      public JvmCfaEdge(JvmCfaNode source, JvmCfaNode target)
      Create a JVM CFA 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
  • Method Details

    • getSource

      public JvmCfaNode getSource()
      Description copied from interface: CfaEdge
      Returns its source node.
      Specified by:
      getSource in interface CfaEdge<JvmCfaNode>
    • getTarget

      public JvmCfaNode getTarget()
      Description copied from interface: CfaEdge
      Returns its target node.
      Specified by:
      getTarget in interface CfaEdge<JvmCfaNode>
    • setSource

      public void setSource(JvmCfaNode source)
      Sets a node as the predecessor of the edge and adds the edge as leaving edge of the node.
    • setTarget

      public void setTarget(JvmCfaNode target)
      Sets a node as the successor of the edge and adds the edge as entering edge of the node.
    • targetSignature

      public MethodSignature targetSignature()
      Returns the signature of the target method. This is the current method or, for call edges, the target method of the call.