trait PointsToBasedAliasAnalysisState[ElementType, AliasSet <: AliasSetLike[ElementType, AliasSet], PointsToSet >: Null <: PointsToSetLike[_, _, PointsToSet]] extends TacBasedAliasAnalysisState with SetBasedAliasAnalysisState[ElementType, AliasSet]
Encapsulates the current state of an points-to based alias analysis.
It additionally contains the following information:
- The current dependees for each of the AliasSourceElement.
- The last points-to set for a given points-to entity that has been completely handled for am AliasSourceElement.
- The current field dependees for each AliasSourceElement. A field dependee is a definition site of an uVar that is used to access the field.
- Alphabetic
- By Inheritance
- PointsToBasedAliasAnalysisState
- SetBasedAliasAnalysisState
- TacBasedAliasAnalysisState
- AliasAnalysisState
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def createAliasSet(): AliasSet
Creates a new AliasSetLike of the used type
Creates a new AliasSetLike of the used type
- Attributes
- protected[this]
- Definition Classes
- SetBasedAliasAnalysisState
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
- def addElementDependency(ase: AliasSourceElement, dependency: EOptionP[Entity, Property])(implicit context: AliasAnalysisContext): Unit
Adds the given entity property pair to the set of dependees of the given AliasSourceElement and the set of all dependees.
- def addField1Dependency(dependency: EOptionP[Entity, Property]): Unit
adds the given entity property pair to the set of field dependees of the first AliasSourceElement.
- def addField2Dependency(dependency: EOptionP[Entity, Property]): Unit
adds the given entity property pair to the set of field dependees of the second AliasSourceElement.
- def addFieldDependency(ase: AliasSourceElement, dependency: EOptionP[Entity, Property])(implicit context: AliasAnalysisContext): Unit
Adds the given entity property pair to the set of field dependees of the given AliasSourceElement.
- def addPointsTo(ase: AliasSourceElement, element: ElementType)(implicit aliasContext: AliasAnalysisContext): Unit
adds the given element set to the AliasSetLike of the given AliasSourceElement.
adds the given element set to the AliasSetLike of the given AliasSourceElement.
- Definition Classes
- SetBasedAliasAnalysisState
- def addTacEPSToMethod(eps: SomeEPS, m: Method): Unit
Associates the given TAC EPS with the given method.
Associates the given TAC EPS with the given method.
- Definition Classes
- TacBasedAliasAnalysisState
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def element1Dependees: Set[Entity]
- returns
A set containing all elements that the first AliasSourceElement depends on.
- def element1HasDependency(dependency: EOptionP[Entity, Property]): Boolean
- returns
trueif the given AliasSourceElement has a dependency on the given entity property pair.
- def element2Dependees: Set[Entity]
- returns
A set containing all elements that the second AliasSourceElement depends on.
- def element2HasDependency(dependency: EOptionP[Entity, Property]): Boolean
- returns
trueif the given AliasSourceElement has a dependency on the given entity property pair.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def field1HasDependency(dependency: EOptionP[Entity, Property]): Boolean
- returns
trueif the first AliasSourceElement has a field dependency on the given entity property pair.
- def field2HasDependency(dependency: EOptionP[Entity, Property]): Boolean
- returns
trueif the second AliasSourceElement has a field dependency on the given entity property pair.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getMethodForTacEPS(eps: SomeEPS): Method
Returns the method that is represented by the given TAC EPS.
Returns the method that is represented by the given TAC EPS.
- Definition Classes
- TacBasedAliasAnalysisState
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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()
- def oldPointsToSet(ase: AliasSourceElement, e: Entity)(implicit context: AliasAnalysisContext): Option[PointsToSet]
- returns
The most recent points-to set of the given points-to entity that has been completely handled for the given AliasSourceElement.
- def pointsTo1: AliasSet
- returns
The current AliasSetLike for the first AliasSourceElement.
- Definition Classes
- SetBasedAliasAnalysisState
- def pointsTo2: AliasSet
- returns
The current AliasSetLike for the second AliasSourceElement.
- Definition Classes
- SetBasedAliasAnalysisState
- def removeElementDependency(dependency: EOptionP[Entity, Property]): Unit
Removes the given entity property pair from element dependency set and the set of all dependencies.
- def removeFieldDependency(dependency: EOptionP[Entity, Property]): Unit
Removes the given entity property pair from the set of field dependees of all AliasSourceElements.
- def setOldPointsToSet(ase: AliasSourceElement, e: Entity, pointsToSet: PointsToSet)(implicit context: AliasAnalysisContext): Unit
Updates the points-to set of the given points-to entity that has been completely handled for the given AliasSourceElement.
- def setPointsToAny(ase: AliasSourceElement)(implicit context: AliasAnalysisContext): Unit
Marks that the given AliasSourceElement can point to any arbitrary element
Marks that the given AliasSourceElement can point to any arbitrary element
- Definition Classes
- SetBasedAliasAnalysisState
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def tacai1: Option[TACode[TACMethodParameter, V]]
Returns the TACAI for the first alias source element.
Returns the TACAI for the first alias source element.
If the element is not method bound,
Noneis returned.- returns
The TACAI for the first alias source element.
- Definition Classes
- TacBasedAliasAnalysisState
- def tacai2: Option[TACode[TACMethodParameter, V]]
Returns the TACAI for the second alias source element.
Returns the TACAI for the second alias source element.
If the element is not method bound,
Noneis returned.- returns
The TACAI for the second alias source element.
- Definition Classes
- TacBasedAliasAnalysisState
- 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