object LazyTACUsingAIKey extends TACAIKey[Nothing]
Key to get the 3-address based code of a method computed using the result of the
data-flow analysis performed by SimpleAIKey
.
- Source
- LazyTACUsingAIKey.scala
To get the index use the org.opalj.br.analyses.Project's
get
method and pass inthis
object.
- Alphabetic
- By Inheritance
- LazyTACUsingAIKey
- TACAIKey
- ProjectInformationKey
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- def compute(project: SomeProject): (Method) => AITACode[TACMethodParameter, ValueInformation]
Returns an object which computes and caches the 3-address code of a method when required.
Returns an object which computes and caches the 3-address code of a method when required.
All methods belonging to a project are converted using the same
domainFactory
. Hence, thedomainFactory
needs to be set before compute is called/this key is passed to a specific project. If multiple projects are instead concurrently, external synchronization is necessary (e.g., on the ProjectInformationKey) to ensure that each project is instantiated using the desired domain.- Definition Classes
- LazyTACUsingAIKey → ProjectInformationKey
- def requirements(project: SomeProject): Seq[ProjectInformationKey[(Method) => AIResult { val domain: org.opalj.ai.Domain with org.opalj.ai.domain.RecordDefUse }, _ <: AnyRef]]
The TACAI code is created using the results of the abstract interpretation of the underlying methods using the SimpleAIKey.
The TACAI code is created using the results of the abstract interpretation of the underlying methods using the SimpleAIKey.
- Definition Classes
- LazyTACUsingAIKey → ProjectInformationKey
- final val uniqueId: Int
The unique id of this key.
The unique id of this key. The key is used to enable efficient access and is automatically assigned by OPAL and will not change after that.
- Definition Classes
- ProjectInformationKey