Object

org.opalj.ai.common

SimpleAIKey

Related Doc: package common

Permalink

object SimpleAIKey extends AIKey

Key to get the result of the abstract interpretation of a method using a configured domain factory.

Source
AIKey.scala
Example:
  1. To get the index use the org.opalj.br.analyses.Project's get method and pass in this object.

Linear Supertypes
AIKey, ProjectInformationKey[(Method) ⇒ AIResult { val domain: org.opalj.ai.Domain with org.opalj.ai.domain.RecordDefUse }, Nothing], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SimpleAIKey
  2. AIKey
  3. ProjectInformationKey
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def compute(project: SomeProject): (Method) ⇒ AIResult { val domain: org.opalj.ai.Domain with org.opalj.ai.domain.RecordDefUse }

    Permalink

    Returns an object which performs and caches the result of the abstract interpretation of a method when required.

    Returns an object which performs and caches the result of the abstract interpretation of a method when required.

    All methods belonging to a project are analyzed using the same domainFactory. Hence, the domainFactory 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.

    Attributes
    protected
    Definition Classes
    SimpleAIKeyProjectInformationKey
  7. var domainFactory: (SomeProject, Method) ⇒ Domain with RecordDefUse

    Permalink
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. def requirements: Seq[ProjectInformationKey[Nothing, Nothing]]

    Permalink

    The SimpleAIKey has no special prerequisites.

    The SimpleAIKey has no special prerequisites.

    Attributes
    protected
    Definition Classes
    SimpleAIKeyProjectInformationKey
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  19. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  20. final val uniqueId: Int

    Permalink

    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
  21. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AIKey

Inherited from ProjectInformationKey[(Method) ⇒ AIResult { val domain: org.opalj.ai.Domain with org.opalj.ai.domain.RecordDefUse }, Nothing]

Inherited from AnyRef

Inherited from Any

Ungrouped