Packages

c

org.opalj.tac.fpcf.analyses.cg

LoadedClassesAnalysis

class LoadedClassesAnalysis extends FPCFAnalysis

For a reachable methods (see Callers) this class computes the classes that are being loaded (e.g. due to static field accesses).

Source
LoadedClassesAnalysis.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LoadedClassesAnalysis
  2. FPCFAnalysis
  3. ProjectBasedAnalysis
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LoadedClassesAnalysis(project: SomeProject)

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 asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. final def ch: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  6. implicit final def classHierarchy: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  11. def handleCaller(declaredMethod: DeclaredMethod): PropertyComputationResult

    If the method in callersOfMethod has no callers (NoCallers), it is not reachable, and its declaring class will not be loaded (at least not via this call).

    If the method in callersOfMethod has no callers (NoCallers), it is not reachable, and its declaring class will not be loaded (at least not via this call).

    If it is not yet known, we register a dependency to it.

    In case there are definitively some callers, we remove the potential existing dependency and handle the method as being newly reachable (i.e. analyse the field accesses of the method and update its declaring class type as reachable) Here we add ne classes as being loaded.

  12. def handleNewReachableMethod(declClassType: ObjectType, stmts: Array[Stmt[V]]): UIDSet[ObjectType]

    For a reachable method, its declaring class will be loaded by the VM (if not done already).

    For a reachable method, its declaring class will be loaded by the VM (if not done already). In order to ensure this, the state will be updated.

    Furthermore, the method may access static fields, which again may lead to class loading.

    returns

    The set of classes being loaded.

  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. implicit final def logContext: LogContext
    Definition Classes
    ProjectBasedAnalysis
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  19. implicit final def p: SomeProject
    Definition Classes
    ProjectBasedAnalysis
  20. val project: SomeProject
  21. implicit final val propertyStore: PropertyStore
    Definition Classes
    FPCFAnalysis
  22. final def ps: PropertyStore
    Definition Classes
    FPCFAnalysis
  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. 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

Inherited from FPCFAnalysis

Inherited from ProjectBasedAnalysis

Inherited from AnyRef

Inherited from Any

Ungrouped