Packages

c

org.opalj.tac.fpcf.analyses.cg

CallGraphAnalysis

class CallGraphAnalysis extends ReachableMethodAnalysis with TypeConsumerAnalysis

Generates call graphs based on the used TypeIterator. It uses the AI information of the three-address code to get the most precise information for virtual calls. handleImpreciseCall will be invoked for each virtual call, that could not be resolved precisely.

Source
CallGraphAnalysis.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CallGraphAnalysis
  2. ReachableMethodAnalysis
  3. TypeConsumerAnalysis
  4. FPCFAnalysis
  5. ProjectBasedAnalysis
  6. FPCFAnalysis
  7. ProjectBasedAnalysis
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. type ContextType = TypeIterator.ContextType
    Definition Classes
    TypeConsumerAnalysis
  2. type PropertyType = TypeIterator.PropertyType
    Definition Classes
    TypeConsumerAnalysis

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def analyze(declaredMethod: DeclaredMethod): PropertyComputationResult
    Definition Classes
    ReachableMethodAnalysis
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def c(state: TACAIBasedCGState[ContextType])(eps: SomeEPS): ProperPropertyComputationResult
  7. final def ch: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  8. implicit final def classHierarchy: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  10. implicit val contextProvider: ContextProvider
    Definition Classes
    TypeConsumerAnalysis
  11. def continuationForTAC(declaredMethod: DeclaredMethod)(someEPS: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  12. implicit val declaredMethods: DeclaredMethods
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  13. def doHandleVirtualCall(callContext: ContextType, call: Call[V] with VirtualCall[V], pc: Int, specializedDeclaringClassType: ReferenceType, isPrecise: Boolean, calleesAndCallers: DirectCalls)(implicit state: TACAIBasedCGState[ContextType]): Unit
    Attributes
    protected[this]
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  16. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  17. final def handleCall(callContext: ContextType, callName: String, callDescriptor: MethodDescriptor, callDeclaringClass: ReferenceType, isStatic: Boolean, receiverType: ReferenceType, pc: Int, target: Result[Method], calleesAndCallers: DirectCalls): Unit
    Attributes
    protected
  18. def handlePreciseCall(calleeType: ClassType, callContext: ContextType, call: Call[V] with VirtualCall[V], pc: Int, calleesAndCallers: DirectCalls)(implicit state: TACAIBasedCGState[ContextType]): Unit
    Attributes
    protected[this]
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  20. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  21. implicit final def logContext: LogContext
    Definition Classes
    ProjectBasedAnalysis
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  25. implicit def p: SomeProject
  26. final def processMethod(state: TACAIBasedCGState[ContextType], calls: DirectCalls): ProperPropertyComputationResult
    Attributes
    protected
  27. final def processMethod(callContext: ContextType, tacEP: EPS[Method, properties.TACAI]): ProperPropertyComputationResult
  28. final def processMethodWithoutBody(callContext: ContextType): ProperPropertyComputationResult
  29. val project: SomeProject
  30. implicit final val propertyStore: PropertyStore
    Definition Classes
    FPCFAnalysis
  31. final def ps: PropertyStore
    Definition Classes
    FPCFAnalysis
  32. def returnResult(calleesAndCallers: DirectCalls, enforceCalleesResult: Boolean = false)(implicit state: TACAIBasedCGState[ContextType]): ProperPropertyComputationResult
    Attributes
    protected[this]
  33. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. implicit val typeIterator: TypeIterator
    Definition Classes
    TypeConsumerAnalysis
  36. final def unknownLibraryCall(callContext: ContextType, callName: String, callDescriptor: MethodDescriptor, callDeclaringClass: ReferenceType, isStatic: Boolean, runtimeReceiverType: ReferenceType, packageName: String, pc: Int, calleesAndCallers: DirectCalls): Unit
    Attributes
    protected
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  39. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated @Deprecated
    Deprecated

Inherited from TypeConsumerAnalysis

Inherited from FPCFAnalysis

Inherited from ProjectBasedAnalysis

Inherited from FPCFAnalysis

Inherited from ProjectBasedAnalysis

Inherited from AnyRef

Inherited from Any

Ungrouped