trait AllocationSiteAndTacBasedAliasAnalysis extends AllocationSiteBasedAliasAnalysis with TacBasedAliasAnalysis
- Alphabetic
- By Inheritance
- AllocationSiteAndTacBasedAliasAnalysis
- TacBasedAliasAnalysis
- AllocationSiteBasedAliasAnalysis
- SetBasedAliasAnalysis
- AbstractAliasAnalysis
- FPCFAnalysis
- ProjectBasedAnalysis
- FPCFAnalysis
- ProjectBasedAnalysis
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type AliasElementType = (Context, PC)
- Attributes
- protected[this]
- Definition Classes
- AllocationSiteBasedAliasAnalysis → SetBasedAliasAnalysis
- type AliasSet = AllocationSiteBasedAliasSet
- Attributes
- protected[this]
- Definition Classes
- AllocationSiteBasedAliasAnalysis → SetBasedAliasAnalysis
- abstract type AnalysisContext <: AliasAnalysisContext
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
- abstract type AnalysisState <: AllocationSiteBasedAliasAnalysisState with TacBasedAliasAnalysisState
- Attributes
- protected[this]
- Definition Classes
- AllocationSiteAndTacBasedAliasAnalysis → TacBasedAliasAnalysis → AllocationSiteBasedAliasAnalysis → SetBasedAliasAnalysis → AbstractAliasAnalysis
- type Tac = TACode[TACMethodParameter, DUVar[ValueInformation]]
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
Abstract Value Members
- abstract def analyzeTAC()(implicit context: AnalysisContext, state: AnalysisState): ProperPropertyComputationResult
Computes the alias relation of the org.opalj.br.fpcf.properties.alias.AliasEntity using the TAC representation of the corresponding methods.
Computes the alias relation of the org.opalj.br.fpcf.properties.alias.AliasEntity using the TAC representation of the corresponding methods.
This method is called when the TACs of the methods of both elements are available. If an element is not method bound, it is not considered.
- returns
The result of the computation.
- Attributes
- protected[this]
- Definition Classes
- TacBasedAliasAnalysis
- abstract def createContext(entity: AliasEntity): AnalysisContext
Creates the context to use for the computation.
Creates the context to use for the computation.
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
- abstract def createState: AnalysisState
Creates the state to use for the computation.
Creates the state to use for the computation.
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
- abstract val project: SomeProject
- Definition Classes
- ProjectBasedAnalysis → ProjectBasedAnalysis
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def ch: ClassHierarchy
- Definition Classes
- ProjectBasedAnalysis
- def checkMustAlias(intersectingElement: AliasElementType)(implicit state: AnalysisState, context: AnalysisContext): Boolean
Checks if the current analysis state allows for a MustAlias relation between the two elements.
Checks if the current analysis state allows for a MustAlias relation between the two elements. It assumes the the given element is the only intersection between the two points-to sets.
This method always returns false and should be overriden if more precise must alias checks can be performed.
- intersectingElement
The only between the two points-to sets.
- returns
trueif the two elements can be a MustAlias,falseotherwise.
- Attributes
- protected[this]
- Definition Classes
- AllocationSiteAndTacBasedAliasAnalysis → SetBasedAliasAnalysis
- implicit final def classHierarchy: ClassHierarchy
- Definition Classes
- ProjectBasedAnalysis
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def continuation(someEPS: SomeEPS)(implicit context: AnalysisContext, state: AnalysisState): ProperPropertyComputationResult
Continues the computation when a TACAI property is updated.
Continues the computation when a TACAI property is updated.
- Attributes
- protected[this]
- Definition Classes
- TacBasedAliasAnalysis → AbstractAliasAnalysis
- def createResult()(implicit state: AnalysisState, context: AnalysisContext): ProperPropertyComputationResult
Creates the result of the analysis based on the current state.
Creates the result of the analysis based on the current state.
- Attributes
- protected[this]
- Definition Classes
- SetBasedAliasAnalysis → AbstractAliasAnalysis
- def determineAlias(e: Entity): ProperPropertyComputationResult
Determines the alias relation for the given entity.
Determines the alias relation for the given entity.
- e
The entity to determine the aliasing information for.
- returns
The result of the computation.
- Definition Classes
- AbstractAliasAnalysis
- def doDetermineAlias(implicit context: AnalysisContext, state: AnalysisState): ProperPropertyComputationResult
Called to determine the alias relation for the given entity.
Called to determine the alias relation for the given entity.
This method is implemented by the concrete alias analysis.
- context
The context to determine the aliasing information for.
- state
The state to use for the computation.
- Definition Classes
- TacBasedAliasAnalysis → AbstractAliasAnalysis
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def interimResult(lb: Alias, ub: Alias)(implicit context: AnalysisContext, state: AnalysisState): ProperPropertyComputationResult
Creates a intermediate result for the given upper and lower bounds of the alias properties.
Creates a intermediate result for the given upper and lower bounds of the alias properties.
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- implicit final def logContext: LogContext
- Definition Classes
- ProjectBasedAnalysis
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- implicit def p: SomeProject
- Definition Classes
- ProjectBasedAnalysis → ProjectBasedAnalysis
- implicit final val propertyStore: PropertyStore
- Definition Classes
- FPCFAnalysis
- final def ps: PropertyStore
- Definition Classes
- FPCFAnalysis
- def result(alias: Alias)(implicit context: AnalysisContext): ProperPropertyComputationResult
Creates a final Result with the given alias property.
Creates a final Result with the given alias property.
- Attributes
- protected[this]
- Definition Classes
- AbstractAliasAnalysis
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated @Deprecated
- Deprecated