Trait

org.opalj.ai.domain.l2

ChildPerformInvocationsWithRecursionDetection

Related Doc: package l2

Permalink

trait ChildPerformInvocationsWithRecursionDetection extends PerformInvocationsWithRecursionDetection

Self Type
ChildPerformInvocationsWithRecursionDetection with ValuesFactory with ReferenceValuesDomain with TheClassHierarchy with Configuration with TheProject with TheMethod
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ChildPerformInvocationsWithRecursionDetection
  2. PerformInvocationsWithRecursionDetection
  3. TheMemoryLayout
  4. PerformInvocations
  5. MethodCallsHandling
  6. MethodCallsDomain
  7. AnyRef
  8. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract type CalledMethodDomain <: TargetDomain with ChildPerformInvocationsWithRecursionDetection with MethodCallResults

    Permalink
  2. type MethodCallResult = Computation[(ChildPerformInvocationsWithRecursionDetection.this)#DomainValue, (ChildPerformInvocationsWithRecursionDetection.this)#ExceptionValues]

    Permalink
    Definition Classes
    MethodCallsDomain

Abstract Value Members

  1. abstract def calledMethodAI: AI[_ >: (ChildPerformInvocationsWithRecursionDetection.this)#CalledMethodDomain]

    Permalink

    The abstract interpreter that will be used for the abstract interpretation.

    The abstract interpreter that will be used for the abstract interpretation.

    Definition Classes
    PerformInvocations
  2. abstract def calledMethodDomain(method: Method): (ChildPerformInvocationsWithRecursionDetection.this)#CalledMethodDomain

    Permalink

    The domain that will be used to perform the abstract interpretation of the called method.

    The domain that will be used to perform the abstract interpretation of the called method.

    In general, explicit support is required to identify recursive calls if the domain also follows method invocations,

    Attributes
    protected[this]
    Definition Classes
    PerformInvocations
  3. abstract val callerDomain: PerformInvocationsWithRecursionDetection

    Permalink
  4. abstract def invokedynamic(pc: PC, bootstrapMethod: BootstrapMethod, name: String, methodDescriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Definition Classes
    MethodCallsDomain
  5. abstract def shouldInvocationBePerformed(method: Method): Boolean

    Permalink

    Returns true if the given method should be invoked.

    Returns true if the given method should be invoked.

    Definition Classes
    PerformInvocations

Concrete Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to any2stringadd[ChildPerformInvocationsWithRecursionDetection] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ChildPerformInvocationsWithRecursionDetection, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to ArrowAssoc[ChildPerformInvocationsWithRecursionDetection] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. def MethodCallResult(potentialExceptions: Iterable[(ChildPerformInvocationsWithRecursionDetection.this)#ExceptionValue]): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  7. def MethodCallResult(returnValue: (ChildPerformInvocationsWithRecursionDetection.this)#DomainValue, exceptions: Iterable[(ChildPerformInvocationsWithRecursionDetection.this)#ExceptionValue]): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. final def calledMethodsStore: CalledMethodsStore { val domain: org.opalj.ai.domain.l2.CalledMethodsStore.<refinement>.type }

    Permalink
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. final val coordinatingDomain: PerformInvocationsWithRecursionDetection.coordinatingDomain

    Permalink
  12. def doInvoke(pc: PC, method: Method, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands, fallback: () ⇒ (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink

    Performs the invocation of the given method using the given operands.

    Performs the invocation of the given method using the given operands.

    Attributes
    protected[this]
    Definition Classes
    PerformInvocationsWithRecursionDetectionPerformInvocations
  13. def doInvoke(method: Method, calledMethodDomain: (ChildPerformInvocationsWithRecursionDetection.this)#CalledMethodDomain)(parameters: PerformInvocations.CalledMethodDomain.Locals): AIResult { val domain: calledMethodDomain.type }

    Permalink
    Attributes
    protected[this]
    Definition Classes
    PerformInvocations
  14. def doInvokeNonVirtual(pc: PC, declaringClass: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands, fallback: () ⇒ (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    PerformInvocations
  15. def doInvokeVirtual(pc: PC, declaringClass: ReferenceType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands, fallback: () ⇒ (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink

    The default implementation only supports the case where we can precisely resolve the target.

    The default implementation only supports the case where we can precisely resolve the target.

    Definition Classes
    PerformInvocations
  16. def ensuring(cond: (ChildPerformInvocationsWithRecursionDetection) ⇒ Boolean, msg: ⇒ Any): ChildPerformInvocationsWithRecursionDetection

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to Ensuring[ChildPerformInvocationsWithRecursionDetection] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: (ChildPerformInvocationsWithRecursionDetection) ⇒ Boolean): ChildPerformInvocationsWithRecursionDetection

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to Ensuring[ChildPerformInvocationsWithRecursionDetection] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean, msg: ⇒ Any): ChildPerformInvocationsWithRecursionDetection

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to Ensuring[ChildPerformInvocationsWithRecursionDetection] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. def ensuring(cond: Boolean): ChildPerformInvocationsWithRecursionDetection

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to Ensuring[ChildPerformInvocationsWithRecursionDetection] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  20. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to StringFormat[ChildPerformInvocationsWithRecursionDetection] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  24. def frequentEvaluationWarningLevel: Int

    Permalink
  25. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  26. def getPotentialExceptions(pc: PC): List[(ChildPerformInvocationsWithRecursionDetection.this)#ExceptionValue]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  27. def handleInstanceBasedInvoke(pc: PC, methodDescriptor: MethodDescriptor, targetMethods: Set[Method], receiverIsNull: Answer, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink

    methodDescriptor

    The method descriptor as specified by the invoke instruction. In case of the invocation of a signature polymorphic method using org.opalj.br.instructions.INVOKEVIRTUAL the descriptor of the invoked method may differ from the descriptor used by the method. Nevertheless, the MethodCallResult has to satisfy the requirements of the caller. In particular regarding the return type.

    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  28. def handleInstanceBasedInvoke(pc: PC, methodDescriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  29. def handleInstanceBasedInvoke(pc: PC, methodDescriptor: MethodDescriptor, receiverIsNull: Answer): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  30. def handleInvoke(pc: PC, targetMethod: Method, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  31. def handleInvoke(pc: PC, methodDescriptor: MethodDescriptor): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MethodCallsHandling
  32. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  33. def invokeinterface(pc: PC, declaringClass: ObjectType, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Definition Classes
    PerformInvocationsMethodCallsDomain
  34. def invokespecial(pc: PC, declaringClass: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Definition Classes
    PerformInvocationsMethodCallsDomain
  35. def invokestatic(pc: PC, declaringClass: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink

    For those invokestatic calls for which we have no concrete method (e.g., the respective class file was never loaded or the method is native) or if we have a recursive invocation, the super implementation is called.

    For those invokestatic calls for which we have no concrete method (e.g., the respective class file was never loaded or the method is native) or if we have a recursive invocation, the super implementation is called.

    Definition Classes
    PerformInvocationsMethodCallsDomain
  36. def invokevirtual(pc: PC, declaringClass: ReferenceType, name: String, descriptor: MethodDescriptor, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Definition Classes
    PerformInvocationsMethodCallsDomain
  37. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  38. def localsArray: (ChildPerformInvocationsWithRecursionDetection.this)#LocalsArray

    Permalink
    Definition Classes
    TheMemoryLayout
  39. def memoryLayoutBeforeSubroutineCall: Chain[((ChildPerformInvocationsWithRecursionDetection.this)#OperandsArray, (ChildPerformInvocationsWithRecursionDetection.this)#LocalsArray)]

    Permalink
    Definition Classes
    TheMemoryLayout
  40. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  43. def operandsArray: (ChildPerformInvocationsWithRecursionDetection.this)#OperandsArray

    Permalink
    Definition Classes
    TheMemoryLayout
  44. def subroutinesLocalsArray: (ChildPerformInvocationsWithRecursionDetection.this)#LocalsArray

    Permalink
    Definition Classes
    TheMemoryLayout
  45. def subroutinesOperandsArray: (ChildPerformInvocationsWithRecursionDetection.this)#OperandsArray

    Permalink
    Definition Classes
    TheMemoryLayout
  46. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  47. def testAndDoInvoke(pc: PC, method: Method, operands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands, fallback: () ⇒ (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink
    Attributes
    protected[this]
    Definition Classes
    PerformInvocations
  48. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  49. def transformResult(callerPC: PC, calledMethod: Method, originalOperands: (ChildPerformInvocationsWithRecursionDetection.this)#Operands, calledMethodDomain: (ChildPerformInvocationsWithRecursionDetection.this)#CalledMethodDomain)(passedParameters: PerformInvocations.CalledMethodDomain.Locals, result: AIResult { val domain: calledMethodDomain.type }): (ChildPerformInvocationsWithRecursionDetection.this)#MethodCallResult

    Permalink

    Converts the results (DomainValues) of the evaluation of the called method into the calling domain.

    Converts the results (DomainValues) of the evaluation of the called method into the calling domain.

    If the returned value is one of the parameters (determined using reference identity), then the parameter is mapped back to the original operand.

    Attributes
    protected[this]
    Definition Classes
    PerformInvocations
  50. def useExceptionsThrownByCalledMethod: Boolean

    Permalink

    If true the exceptions thrown by the called method are will be used during the evaluation of the calling method.

    If true the exceptions thrown by the called method are will be used during the evaluation of the calling method.

    Definition Classes
    PerformInvocations
  51. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  54. def [B](y: B): (ChildPerformInvocationsWithRecursionDetection, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ChildPerformInvocationsWithRecursionDetection to ArrowAssoc[ChildPerformInvocationsWithRecursionDetection] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from TheMemoryLayout

Inherited from PerformInvocations

Inherited from MethodCallsHandling

Inherited from MethodCallsDomain

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ChildPerformInvocationsWithRecursionDetection to any2stringadd[ChildPerformInvocationsWithRecursionDetection]

Inherited by implicit conversion StringFormat from ChildPerformInvocationsWithRecursionDetection to StringFormat[ChildPerformInvocationsWithRecursionDetection]

Inherited by implicit conversion Ensuring from ChildPerformInvocationsWithRecursionDetection to Ensuring[ChildPerformInvocationsWithRecursionDetection]

Inherited by implicit conversion ArrowAssoc from ChildPerformInvocationsWithRecursionDetection to ArrowAssoc[ChildPerformInvocationsWithRecursionDetection]

Ungrouped