Packages

t

org.opalj.tac.fpcf.analyses.pointsto

AbstractPointsToAnalysis

trait AbstractPointsToAnalysis extends PointsToAnalysisBase with ReachableMethodAnalysis

A context-insensitive points-to analysis, that uses an abstract PointsToSetLike in order to manage points-to sets.

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

Type Members

  1. type ContextType = cg.TypeIterator.ContextType
    Definition Classes
    TypeConsumerAnalysis
  2. type DependerType = AnyRef
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBaseAbstractPointsToBasedAnalysis
  3. abstract type ElementType
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  4. abstract type PointsToSet >: Null <: PointsToSetLike[ElementType, _, PointsToSet]
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  5. type PropertyType = cg.TypeIterator.PropertyType
    Definition Classes
    TypeConsumerAnalysis
  6. type State = PointsToAnalysisState[ElementType, PointsToSet, ContextType]
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBaseAbstractPointsToBasedAnalysis

Abstract Value Members

  1. abstract def createPointsToSet(pc: Int, callContext: ContextType, allocatedType: ReferenceType, isConstant: Boolean, isEmptyArray: Boolean = false): PointsToSet
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  2. abstract def emptyPointsToSet: PointsToSet
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  3. abstract def getTypeIdOf(element: ElementType): Int
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
    Annotations
    @inline()
  4. abstract def getTypeOf(element: ElementType): ReferenceType
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
    Annotations
    @inline()
  5. abstract def isEmptyArray(element: ElementType): Boolean
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
    Annotations
    @inline()
  6. abstract val pointsToPropertyKey: PropertyKey[PointsToSet]
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  7. abstract val project: SomeProject
    Definition Classes
    ProjectBasedAnalysis

Concrete 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. final def ch: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  7. implicit final def classHierarchy: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  9. def continuationForCallees(oldCalleeEOptP: EOptionP[DeclaredMethod, Callees], state: State)(eps: SomeEPS): ProperPropertyComputationResult
  10. def continuationForNewAllocationSitesAtArrayLoad(defSiteObject: Entity, arrayType: ArrayType, filter: (ReferenceType) => Boolean, dependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], state: State)(eps: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  11. def continuationForNewAllocationSitesAtArrayStore(knownPointsTo: PointsToSet, rhsDefSitesEPS: Map[SomeEPK, SomeEOptionP], arrayType: ArrayType, dependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], state: State)(eps: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  12. def continuationForNewAllocationSitesAtGetField(defSiteObject: Entity, fieldOpt: Option[Field], filter: (ReferenceType) => Boolean, dependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], state: State)(eps: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  13. def continuationForNewAllocationSitesAtPutField(knownPointsTo: PointsToSet, rhsDefSitesEPS: Map[SomeEPK, SomeEOptionP], fieldOpt: Option[Field], dependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], state: State)(eps: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  14. def continuationForShared(e: Entity, dependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], state: State)(eps: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToAnalysisPointsToAnalysisBase
  15. def continuationForTAC(declaredMethod: DeclaredMethod)(someEPS: SomeEPS): ProperPropertyComputationResult
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  16. def createPartialResults(e: Entity, newPointsToSet: PointsToSet, newDependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)], updatePointsTo: (PointsToSet) => PointsToSet, isUpdate: Boolean = false)(implicit state: State): Seq[ProperPropertyComputationResult]
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  17. def createResults(implicit state: State): ArrayBuffer[ProperPropertyComputationResult]
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToAnalysisPointsToAnalysisBase
  18. def currentPointsTo(depender: Entity, dependee: Entity, typeFilter: (ReferenceType) => Boolean)(implicit state: State): PointsToSet
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  19. def currentPointsToOfDefSite(depender: DependerType, dependeeDefSite: Int, typeFilter: (ReferenceType) => Boolean = PointsToSetLike.noFilter)(implicit state: State): PointsToSet
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  20. def currentPointsToOfDefSites(depender: DependerType, defSites: IntTrieSet, typeFilter: (ReferenceType) => Boolean = PointsToSetLike.noFilter)(implicit state: State): Iterator[PointsToSet]
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  21. implicit val declaredMethods: DeclaredMethods
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  22. implicit val definitionSites: DefinitionSites
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  23. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  25. implicit val formalParameters: VirtualFormalParameters
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
  26. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  27. def getDefSite(pc: Int)(implicit state: State): Entity
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  28. def getFormalParameter(index: Int, formalParameters: ArraySeq[VirtualFormalParameter], context: Context): Entity
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  29. def handleArrayLoad(arrayType: ArrayType, pc: Int, arrayDefSites: IntTrieSet, checkForCast: Boolean = true)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  30. def handleArrayStore(arrayType: ArrayType, arrayDefSites: IntTrieSet, rhsDefSites: IntTrieSet)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  31. def handleCallParameter(paramDefSites: IntTrieSet, paramIndex: Int, target: Context)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  32. def handleCallReceiver(receiverDefSites: IntTrieSet, target: Context, isNonVirtualCall: Boolean, indirectConstructorPCAndType: Option[(Int, ReferenceType)] = None)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  33. def handleGetField(fieldOpt: Option[Field], pc: Int, objRefDefSites: IntTrieSet, checkForCast: Boolean = true)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  34. def handleGetStatic(field: Field, pc: Int, checkForCast: Boolean = true)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  35. def handlePutField(fieldOpt: Option[Field], objRefDefSites: IntTrieSet, rhsDefSites: IntTrieSet)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  36. def handlePutStatic(field: Field, rhsDefSites: IntTrieSet)(implicit state: State): Unit
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
  37. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  38. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  39. implicit final def logContext: LogContext
    Definition Classes
    ProjectBasedAnalysis
  40. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  41. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  42. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  43. implicit final def p: SomeProject
    Definition Classes
    ProjectBasedAnalysis
  44. def pointsToUB(eOptP: EOptionP[Entity, PointsToSet]): PointsToSet
    Attributes
    protected[this]
    Definition Classes
    AbstractPointsToBasedAnalysis
    Annotations
    @inline()
  45. def processMethod(callContext: ContextType, tacEP: EPS[Method, properties.TACAI]): ProperPropertyComputationResult
  46. def processMethodWithoutBody(eOptP: EOptionP[DeclaredMethod, Callers]): PropertyComputationResult
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  47. val processesMethodsWithoutBody: Boolean
    Attributes
    protected
    Definition Classes
    ReachableMethodAnalysis
  48. implicit final val propertyStore: PropertyStore
    Definition Classes
    FPCFAnalysis
  49. final def ps: PropertyStore
    Definition Classes
    FPCFAnalysis
  50. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  51. def toEntity(defSite: Int)(implicit state: State): Entity
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  52. def toString(): String
    Definition Classes
    AnyRef → Any
  53. implicit val typeIterator: TypeIterator
    Definition Classes
    TypeConsumerAnalysis
  54. def updatedDependees(eps: SomeEPS, oldDependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)]): Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)]
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  55. def updatedPointsToSet(oldPointsToSet: PointsToSet, newDependeePointsToSet: PointsToSet, dependee: SomeEPS, oldDependees: Map[SomeEPK, (SomeEOptionP, (ReferenceType) => Boolean)]): PointsToSet
    Attributes
    protected[this]
    Definition Classes
    PointsToAnalysisBase
    Annotations
    @inline()
  56. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  57. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  58. 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 PointsToAnalysisBase

Inherited from TypeConsumerAnalysis

Inherited from ContextualAnalysis

Inherited from FPCFAnalysis

Inherited from ProjectBasedAnalysis

Inherited from AnyRef

Inherited from Any

Ungrouped