Class CallGraphVertex

java.lang.Object
com.pnfsoftware.jeb.core.units.code.asm.analyzer.BranchTarget
com.pnfsoftware.jeb.core.units.code.asm.analyzer.CallGraphVertex
All Implemented Interfaces:
IBranchTarget

@Immutable @Ser public class CallGraphVertex extends BranchTarget
Vertex in a callgraph. A vertex object is built from:
  • Method Details

    • buildFromInternalTarget

      public static CallGraphVertex buildFromInternalTarget(CodePointer epDescription)
      Create a vertex for an internal target.
      Parameters:
      epDescription - internal target address
      Returns:
      call graph vertex
    • buildFromExternalTarget

      public static CallGraphVertex buildFromExternalTarget(INativeMethodItem externalRtn)
      Create a vertex for an external target routine.
      Parameters:
      externalRtn - external routine
      Returns:
      call graph vertex
    • buildFromUnresolvedTarget

      public static CallGraphVertex buildFromUnresolvedTarget(long dereferencedAddress)
      Create a vertex for an unresolved target.
      Parameters:
      dereferencedAddress - dereferenced target address
      Returns:
      call graph vertex
    • isResolved

      public boolean isResolved()
      Determine whether this vertex has a resolved target.
      Returns:
      true if the target is resolved
    • getDereferencedAddress

      public long getDereferencedAddress()
      Get the dereferenced address for unresolved targets.
      Returns:
      dereferenced address, or -1 for resolved targets
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class BranchTarget
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class BranchTarget