trait MethodCallsDomainWithMethodLockup extends MethodCallsHandling
- Self Type
- MethodCallsDomainWithMethodLockup with ValuesFactory with ReferenceValuesDomain with Configuration with TheProject with TheCode
- Source
- RefinedTypeLevelInvokeInstructions.scala
- Alphabetic
- By Inheritance
- MethodCallsDomainWithMethodLockup
- MethodCallsHandling
- MethodCallsDomain
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type MethodCallResult = Computation[(MethodCallsDomainWithMethodLockup.this)#DomainValue, (MethodCallsDomainWithMethodLockup.this)#ExceptionValues]
- Definition Classes
- MethodCallsDomain
Abstract Value Members
- abstract def doInvoke(pc: PC, invokeMethodDescriptor: MethodDescriptor, method: Method, operands: (MethodCallsDomainWithMethodLockup.this)#Operands, fallback: () => (MethodCallsDomainWithMethodLockup.this)#MethodCallResult): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
Invokes the specified method.
Invokes the specified method.
- invokeMethodDescriptor
The descriptor specified by the invoke instruction.
- method
The called method. In case of MethodHandles, the invoked method's descriptor will most likely not match the descriptor specified by the invoke instruction.
- Attributes
- protected[this]
- abstract def invokedynamic(pc: Int, bootstrapMethod: BootstrapMethod, name: String, methodDescriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Definition Classes
- MethodCallsDomain
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 MethodCallResult(potentialExceptions: Iterable[(MethodCallsDomainWithMethodLockup.this)#ExceptionValue]): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
Factory method called to create a MethodCallResult.
Factory method called to create a MethodCallResult.
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- def MethodCallResult(returnValue: (MethodCallsDomainWithMethodLockup.this)#DomainValue, exceptions: Iterable[(MethodCallsDomainWithMethodLockup.this)#ExceptionValue]): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
Factory method called to create a MethodCallResult.
Factory method called to create a MethodCallResult.
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- 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 doNonVirtualInvoke(pc: PC, declaringType: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands, fallback: () => (MethodCallsDomainWithMethodLockup.this)#MethodCallResult): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Attributes
- protected[this]
- def doVirtualInvoke(pc: PC, declaringType: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands, fallback: () => (MethodCallsDomainWithMethodLockup.this)#MethodCallResult): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
Currently, if we have multiple targets,
fallback
is called and that result is returned.Currently, if we have multiple targets,
fallback
is called and that result is returned.- Attributes
- protected[this]
- 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 getPotentialExceptions(pc: Int): List[(MethodCallsDomainWithMethodLockup.this)#ExceptionValue]
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- def handleInstanceBasedInvoke(pc: Int, methodDescriptor: MethodDescriptor, targetMethods: Set[Method], receiverIsNull: Answer, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- 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
- def handleInstanceBasedInvoke(pc: Int, methodDescriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- def handleInstanceBasedInvoke(pc: Int, methodDescriptor: MethodDescriptor, receiverIsNull: Answer): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- def handleInvoke(pc: Int, methodDescriptor: MethodDescriptor): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Attributes
- protected[this]
- Definition Classes
- MethodCallsHandling
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def invokeinterface(pc: PC, declaringType: ObjectType, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Definition Classes
- MethodCallsDomainWithMethodLockup → MethodCallsDomain
- def invokespecial(pc: PC, declaringType: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Definition Classes
- MethodCallsDomainWithMethodLockup → MethodCallsDomain
- def invokestatic(pc: PC, declaringType: ObjectType, isInterface: Boolean, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
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 have a recursive invocation are delegated to the super class.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 have a recursive invocation are delegated to the super class.- Definition Classes
- MethodCallsDomainWithMethodLockup → MethodCallsDomain
- def invokevirtual(pc: PC, declaringType: ReferenceType, name: String, descriptor: MethodDescriptor, operands: (MethodCallsDomainWithMethodLockup.this)#Operands): (MethodCallsDomainWithMethodLockup.this)#MethodCallResult
- Definition Classes
- MethodCallsDomainWithMethodLockup → MethodCallsDomain
- 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()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def tryLookup(declaringType: ObjectType, name: String, descriptor: MethodDescriptor): Boolean
Returns
true
for those methods for which we try to lookup the target method.Returns
true
for those methods for which we try to lookup the target method. This filter is collaboratively implemented (stackable trait).- returns
The default is to return
false
.
- Attributes
- protected[this]
- Note
Domains reusing this template domain have to be able to cope with ALL methods; this filter is only intended to provide performance optimizations if not all method lookups are actually required by all clients of this domain.
- 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