Package net.bytebuddy.utility
Class JavaConstant.MethodHandle.Dispatcher.AbstractBase
- java.lang.Object
-
- net.bytebuddy.utility.JavaConstant.MethodHandle.Dispatcher.AbstractBase
-
- All Implemented Interfaces:
JavaConstant.MethodHandle.Dispatcher,JavaConstant.MethodHandle.Dispatcher.Initializable
- Direct Known Subclasses:
JavaConstant.MethodHandle.Dispatcher.ForJava7CapableVm,JavaConstant.MethodHandle.Dispatcher.ForJava8CapableVm
- Enclosing interface:
- JavaConstant.MethodHandle.Dispatcher
@Enhance public abstract static class JavaConstant.MethodHandle.Dispatcher.AbstractBase extends Object implements JavaConstant.MethodHandle.Dispatcher, JavaConstant.MethodHandle.Dispatcher.Initializable
An abstract base implementation of a dispatcher.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.bytebuddy.utility.JavaConstant.MethodHandle.Dispatcher
JavaConstant.MethodHandle.Dispatcher.AbstractBase, JavaConstant.MethodHandle.Dispatcher.CreationAction, JavaConstant.MethodHandle.Dispatcher.ForJava7CapableVm, JavaConstant.MethodHandle.Dispatcher.ForJava8CapableVm, JavaConstant.MethodHandle.Dispatcher.ForLegacyVm, JavaConstant.MethodHandle.Dispatcher.Initializable
-
-
Field Summary
Fields Modifier and Type Field Description protected MethodgetDeclaringClassA reference tojava.lang.invoke.MethodHandleInfo#getDeclaringClass.protected MethodgetMethodTypeA reference tojava.lang.invoke.MethodHandleInfo#getMethodType.protected MethodgetNameA reference tojava.lang.invoke.MethodHandleInfo#getName.protected MethodgetReferenceKindA reference tojava.lang.invoke.MethodHandleInfo#getReferenceKind.protected MethodlookupClassA reference tojava.lang.invoke.MethodHandles$Lookup#lookupClassmethod.protected MethodparameterArrayA reference tojava.lang.invoke.MethodType#parameterArray.protected MethodpublicLookupA reference tojava.lang.invoke.MethodHandles#publicLookup.protected MethodreturnTypeA reference tojava.lang.invoke.MethodType#returnType.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class<?>getDeclaringClass(Object methodHandleInfo)Returns the declaring class of the supplied method handle info.ObjectgetMethodType(Object methodHandleInfo)Returns a method handle info's method type.StringgetName(Object methodHandleInfo)Returns the method name of the supplied method handle info.intgetReferenceKind(Object methodHandleInfo)Returns the reference kind of the supplied method handle info.Class<?>lookupType(Object lookup)Returns the lookup type of a givenjava.lang.invoke.MethodHandles$Lookupinstance.List<? extends Class<?>>parameterArray(Object methodType)Returns the parameter types of the supplied method type.ObjectpublicLookup()Returns a publicjava.lang.invoke.MethodHandles.Lookupinstance.Class<?>returnType(Object methodType)Returns the return type of the supplied method type.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.bytebuddy.utility.JavaConstant.MethodHandle.Dispatcher
reveal
-
Methods inherited from interface net.bytebuddy.utility.JavaConstant.MethodHandle.Dispatcher.Initializable
initialize
-
-
-
-
Field Detail
-
publicLookup
protected final Method publicLookup
A reference tojava.lang.invoke.MethodHandles#publicLookup.
-
getName
protected final Method getName
A reference tojava.lang.invoke.MethodHandleInfo#getName.
-
getDeclaringClass
protected final Method getDeclaringClass
A reference tojava.lang.invoke.MethodHandleInfo#getDeclaringClass.
-
getReferenceKind
protected final Method getReferenceKind
A reference tojava.lang.invoke.MethodHandleInfo#getReferenceKind.
-
getMethodType
protected final Method getMethodType
A reference tojava.lang.invoke.MethodHandleInfo#getMethodType.
-
returnType
protected final Method returnType
A reference tojava.lang.invoke.MethodType#returnType.
-
parameterArray
protected final Method parameterArray
A reference tojava.lang.invoke.MethodType#parameterArray.
-
lookupClass
protected final Method lookupClass
A reference tojava.lang.invoke.MethodHandles$Lookup#lookupClassmethod.
-
-
Constructor Detail
-
AbstractBase
protected AbstractBase(Method publicLookup, Method getName, Method getDeclaringClass, Method getReferenceKind, Method getMethodType, Method returnType, Method parameterArray, Method lookupClass)
Creates a legal dispatcher.- Parameters:
publicLookup- A reference tojava.lang.invoke.MethodHandles#publicLookup.getName- A reference tojava.lang.invoke.MethodHandleInfo#getName.getDeclaringClass- A reference tojava.lang.invoke.MethodHandleInfo#getDeclaringClass.getReferenceKind- A reference tojava.lang.invoke.MethodHandleInfo#getReferenceKind.getMethodType- A reference tojava.lang.invoke.MethodHandleInfo#getMethodType.returnType- A reference tojava.lang.invoke.MethodType#returnType.parameterArray- A reference tojava.lang.invoke.MethodType#parameterArray.lookupClass- A reference tojava.lang.invoke.MethodHandles$Lookup#lookupClassmethod.
-
-
Method Detail
-
publicLookup
public Object publicLookup()
Returns a publicjava.lang.invoke.MethodHandles.Lookupinstance.- Specified by:
publicLookupin interfaceJavaConstant.MethodHandle.Dispatcher.Initializable- Returns:
- A public
java.lang.invoke.MethodHandles.Lookupinstance.
-
getMethodType
public Object getMethodType(Object methodHandleInfo)
Returns a method handle info's method type.- Specified by:
getMethodTypein interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodHandleInfo- The method handle info to introspect.- Returns:
- The
java.lang.invoke.MethodTypeinstance representing the method handle's type.
-
getReferenceKind
public int getReferenceKind(Object methodHandleInfo)
Returns the reference kind of the supplied method handle info.- Specified by:
getReferenceKindin interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodHandleInfo- The method handle to be introspected.- Returns:
- The method handle info's reference type.
-
getDeclaringClass
public Class<?> getDeclaringClass(Object methodHandleInfo)
Returns the declaring class of the supplied method handle info.- Specified by:
getDeclaringClassin interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodHandleInfo- The method handle to be introspected.- Returns:
- The method handle info's declaring class.
-
getName
public String getName(Object methodHandleInfo)
Returns the method name of the supplied method handle info.- Specified by:
getNamein interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodHandleInfo- The method handle to be introspected.- Returns:
- The method handle info's method name.
-
returnType
public Class<?> returnType(Object methodType)
Returns the return type of the supplied method type.- Specified by:
returnTypein interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodType- The method type to be introspected.- Returns:
- The method type's return type.
-
parameterArray
public List<? extends Class<?>> parameterArray(Object methodType)
Returns the parameter types of the supplied method type.- Specified by:
parameterArrayin interfaceJavaConstant.MethodHandle.Dispatcher- Parameters:
methodType- The method type to be introspected.- Returns:
- The method type's parameter types.
-
lookupType
public Class<?> lookupType(Object lookup)
Returns the lookup type of a givenjava.lang.invoke.MethodHandles$Lookupinstance.- Specified by:
lookupTypein interfaceJavaConstant.MethodHandle.Dispatcher.Initializable- Parameters:
lookup- Ajava.lang.invoke.MethodHandles$Lookupinstance.- Returns:
- The provided instance's lookup type.
-
-