- AbstractCallSiteDescriptor - Class in org.dynalang.dynalink.support
-
A base class for call site descriptor implementations.
- AbstractCallSiteDescriptor() - Constructor for class org.dynalang.dynalink.support.AbstractCallSiteDescriptor
-
- AbstractRelinkableCallSite - Class in org.dynalang.dynalink.support
-
- AbstractRelinkableCallSite(CallSiteDescriptor) - Constructor for class org.dynalang.dynalink.support.AbstractRelinkableCallSite
-
Creates a new relinkable call site.
- assertType(MethodType) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Asserts that the invocation is of the specified type, and the guard (if present) is of the specified type with a
boolean return type.
- asType(MethodType) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Changes the type of the invocation, as if MethodHandle.asType(MethodType) was applied to its invocation
and its guard, if it has one (with return type changed to boolean, and parameter count potentially truncated for
the guard).
- asType(LinkerServices, MethodType) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Changes the type of the invocation, as if
LinkerServices.asType(MethodHandle, MethodType) was applied to
its invocation and its guard, if it has one (with return type changed to boolean, and parameter count potentially
truncated for the guard).
- asType(CallSiteDescriptor) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Changes the type of the invocation, as if MethodHandle.asType(MethodType) was applied to its invocation
and its guard, if it has one (with return type changed to boolean for guard).
- asType(MethodHandle, MethodType) - Method in interface org.dynalang.dynalink.linker.LinkerServices
-
Similar to
MethodHandle.asType(MethodType) except it also hooks in method handles produced by
GuardingTypeConverterFactory implementations, providing for language-specific type coercing of
parameters.
- asType(MethodHandle, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Takes a guard-test method handle, and adapts it to the requested type, returning a boolean.
- asType(LinkerServices, MethodHandle, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Takes a guard-test method handle, and adapts it to the requested type, returning a boolean.
- asType(MethodHandle, MethodType) - Method in class org.dynalang.dynalink.support.LinkerServicesImpl
-
- asType(MethodHandle, MethodType) - Method in class org.dynalang.dynalink.support.TypeConverterFactory
-
Similar to
MethodHandle.asType(MethodType) except it also hooks in method handles produced by
GuardingTypeConverterFactory implementations, providing for language-specific type coercing of
parameters.
- AutoDiscovery - Class in org.dynalang.dynalink.support
-
Provides methods for automatic discovery of all guarding dynamic linkers listed in the
/META-INF/services/org.dynalang.dynalink.linker.GuardingDynamicLinker resources of all JAR files for a
particular class loader.
- CallSiteDescriptor - Interface in org.dynalang.dynalink
-
An immutable descriptor of a call site.
- CallSiteDescriptorFactory - Class in org.dynalang.dynalink.support
-
Usable as a default factory for call site descriptor implementations.
- canConvert(Class<?>, Class<?>) - Method in interface org.dynalang.dynalink.linker.LinkerServices
-
Returns true if there might exist a conversion between the requested types (either an automatic JVM conversion,
or one provided by any available
GuardingTypeConverterFactory), or false if there definitely does not
exist a conversion between the requested types.
- canConvert(Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.LinkerServicesImpl
-
- canConvert(Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.TypeConverterFactory
-
Returns true if there might exist a conversion between the requested types (either an automatic JVM conversion,
or one provided by any available
GuardingTypeConverterFactory), or false if there definitely does not
exist a conversion between the requested types.
- canLinkType(Class<?>) - Method in interface org.dynalang.dynalink.linker.TypeBasedGuardingDynamicLinker
-
Returns true if the linker can link an invocation where the first argument (receiver) is of the specified type.
- canLinkType(Class<?>) - Method in class org.dynalang.dynalink.support.BottomGuardingDynamicLinker
-
- canLinkType(Class<?>) - Method in class org.dynalang.dynalink.support.CompositeTypeBasedGuardingDynamicLinker
-
- canReferenceDirectly(ClassLoader, ClassLoader) - Static method in class org.dynalang.dynalink.support.Guards
-
Return true if it is safe to strongly reference a class from the referred class loader from a class associated
with the referring class loader without risking a class loader memory leak.
- ChainedCallSite - Class in org.dynalang.dynalink
-
A relinkable call site that maintains a chain of linked method handles.
- ChainedCallSite(CallSiteDescriptor) - Constructor for class org.dynalang.dynalink.ChainedCallSite
-
Creates a new chained call site.
- changeMethodType(MethodType) - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
Creates a new call site descriptor from this descriptor, which is identical to this, except it changes the method
type.
- changeParameterType(CallSiteDescriptor, int, Class<?>) - Static method in class org.dynalang.dynalink.support.CallSiteDescriptorFactory
-
Returns a new call site descriptor that is identical to the passed one, except that it has a single parameter
type changed in its method type.
- changeReturnType(CallSiteDescriptor, Class<?>) - Static method in class org.dynalang.dynalink.support.CallSiteDescriptorFactory
-
Returns a new call site descriptor that is identical to the passed one, except that it has the return type
changed in its method type.
- ClassMap<T> - Class in org.dynalang.dynalink.support
-
A dual map that can either strongly or weakly reference a given class depending on whether the class is visible from
a class loader or not.
- ClassMap(ClassLoader) - Constructor for class org.dynalang.dynalink.support.ClassMap
-
Creates a new class map.
- compareConversion(Class<?>, Class<?>, Class<?>) - Method in interface org.dynalang.dynalink.linker.ConversionComparator
-
Determines which of the two target types is the preferred conversion target from a source type.
- compareConversion(Class<?>, Class<?>, Class<?>) - Method in interface org.dynalang.dynalink.linker.LinkerServices
-
Determines which of the two type conversions from a source type to the two target types is preferred.
- compareConversion(Class<?>, Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.LinkerServicesImpl
-
- compareConversion(Class<?>, Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.TypeConverterFactory
-
Determines which of the two type conversions from a source type to the two target types is preferred.
- compose(MethodHandle) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Composes the invocation, switchpoint, and the guard into a composite method handle that knows how to fall back.
- compose(MethodHandle, MethodHandle) - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Composes the invocation, switchpoint, and the guard into a composite method handle that knows how to fall back.
- CompositeGuardingDynamicLinker - Class in org.dynalang.dynalink.support
-
- CompositeGuardingDynamicLinker(Iterable<? extends GuardingDynamicLinker>) - Constructor for class org.dynalang.dynalink.support.CompositeGuardingDynamicLinker
-
Creates a new composite linker.
- CompositeTypeBasedGuardingDynamicLinker - Class in org.dynalang.dynalink.support
-
A composite type-based guarding dynamic linker.
- CompositeTypeBasedGuardingDynamicLinker(Iterable<? extends TypeBasedGuardingDynamicLinker>) - Constructor for class org.dynalang.dynalink.support.CompositeTypeBasedGuardingDynamicLinker
-
Creates a new composite type-based linker.
- computeValue(Class<?>) - Method in class org.dynalang.dynalink.support.ClassMap
-
Compute the value associated with the given class.
- ConversionComparator - Interface in org.dynalang.dynalink.linker
-
- ConversionComparator.Comparison - Enum in org.dynalang.dynalink.linker
-
Enumeration of possible outcomes of comparing one conversion to another.
- convertToType(Class<?>, Class<?>) - Method in interface org.dynalang.dynalink.linker.GuardingTypeConverterFactory
-
Returns a guarded invocation that receives an Object of the specified source type and returns an Object converted
to the specified target type.
- create(MethodHandles.Lookup, String, MethodType) - Static method in class org.dynalang.dynalink.support.CallSiteDescriptorFactory
-
Creates a new call site descriptor instance.
- createLinker() - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Creates a new dynamic linker consisting of all the prioritized, autodiscovered, and fallback linkers.
- get(Class<?>) - Method in class org.dynalang.dynalink.support.ClassMap
-
Returns the value associated with the class
- getArguments() - Method in interface org.dynalang.dynalink.linker.LinkRequest
-
Returns the arguments for the invocation being linked.
- getArguments() - Method in class org.dynalang.dynalink.support.LinkRequestImpl
-
- getCallSiteDescriptor() - Method in interface org.dynalang.dynalink.linker.LinkRequest
-
Returns the call site descriptor for the call site being linked.
- getCallSiteDescriptor() - Method in class org.dynalang.dynalink.support.LinkRequestImpl
-
- getClassGuard(Class<?>) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a guard method that tests its only argument for being of an exact particular class.
- getClassLoader() - Method in class org.dynalang.dynalink.support.ClassMap
-
Returns the class loader that governs the strong referenceability of this class map.
- getDescriptor() - Method in interface org.dynalang.dynalink.RelinkableCallSite
-
Returns the descriptor for this call site.
- getDescriptor() - Method in class org.dynalang.dynalink.support.AbstractRelinkableCallSite
-
- getGuard() - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Returns the guard method handle.
- getGuardedInvocation(LinkRequest, LinkerServices) - Method in class org.dynalang.dynalink.beans.BeansLinker
-
- getGuardedInvocation(LinkRequest, LinkerServices) - Method in interface org.dynalang.dynalink.linker.GuardingDynamicLinker
-
Creates a guarded invocation appropriate for a particular invocation with the specified arguments at a call site.
- getGuardedInvocation(LinkRequest) - Method in interface org.dynalang.dynalink.linker.LinkerServices
-
Creates a guarded invocation using the
DynamicLinker that exposes this linker services interface.
- getGuardedInvocation(LinkRequest, LinkerServices) - Method in class org.dynalang.dynalink.support.BottomGuardingDynamicLinker
-
- getGuardedInvocation(LinkRequest, LinkerServices) - Method in class org.dynalang.dynalink.support.CompositeGuardingDynamicLinker
-
- getGuardedInvocation(LinkRequest, LinkerServices) - Method in class org.dynalang.dynalink.support.CompositeTypeBasedGuardingDynamicLinker
-
- getGuardedInvocation(LinkRequest) - Method in class org.dynalang.dynalink.support.LinkerServicesImpl
-
- getIdentityGuard(Object) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a guard method that tests its only argument for being referentially identical to another object
- getInstanceOfGuard(Class<?>) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a guard method that tests its only argument for being an instance of a particular class.
- getInvocation() - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Returns the invocation method handle.
- getLinkerForClass(Class<?>) - Static method in class org.dynalang.dynalink.beans.BeansLinker
-
Returns a bean linker for a particular single class.
- getLinkerServices() - Method in class org.dynalang.dynalink.DynamicLinker
-
Returns the object representing the lower level linker services of this class that are normally exposed to
individual language-specific linkers.
- getLookup() - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
Returns the lookup passed to the bootstrap method.
- getLookup() - Method in class org.dynalang.dynalink.support.AbstractCallSiteDescriptor
-
- getMaxChainLength() - Method in class org.dynalang.dynalink.ChainedCallSite
-
The maximum number of method handles in the chain.
- getMethodType() - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
The type of the method at the call site.
- getMostSpecificCommonType(Class<?>, Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
Given two types represented by c1 and c2, returns a type that is their most specific common superclass or
superinterface.
- getName() - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
Returns the name of the method at the call site.
- getName() - Method in class org.dynalang.dynalink.support.AbstractCallSiteDescriptor
-
- getNameToken(int) - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
Returns the ith token in the method name at the call site.
- getNameTokenCount() - Method in interface org.dynalang.dynalink.CallSiteDescriptor
-
Returns the number of tokens in the name of the method at the call site.
- getPrimitiveType(Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
When passed a class representing a wrapper for a primitive type, returns the class representing the corresponding
primitive type.
- getPrimitiveTypeByName(String) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
Given a name of a primitive type (except "void"), returns the class representing it.
- getReceiver() - Method in interface org.dynalang.dynalink.linker.LinkRequest
-
Returns the 0th argument for the invocation being linked; this is typically the receiver object.
- getReceiver() - Method in class org.dynalang.dynalink.support.LinkRequestImpl
-
- getRelinkedCallSiteLocation() - Static method in class org.dynalang.dynalink.DynamicLinker
-
Returns a stack trace element describing the location of the call site currently being relinked on the current
thread.
- getRepresentedClass() - Method in class org.dynalang.dynalink.beans.StaticClass
-
Returns the represented Java class.
- getSwitchPoint() - Method in class org.dynalang.dynalink.linker.GuardedInvocation
-
Returns the switch point that can be used to invalidate the invocation handle.
- getTypeConverter(Class<?>, Class<?>) - Method in interface org.dynalang.dynalink.linker.LinkerServices
-
Given a source and target type, returns a method handle that converts between them.
- getTypeConverter(Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.LinkerServicesImpl
-
- getTypeConverter(Class<?>, Class<?>) - Method in class org.dynalang.dynalink.support.TypeConverterFactory
-
Given a source and target type, returns a method handle that converts between them.
- getWrapperType(Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
When passed a class representing a primitive type, returns the class representing the corresponding
wrapper type.
- GuardedInvocation - Class in org.dynalang.dynalink.linker
-
Represents a conditionally valid method handle.
- GuardedInvocation(MethodHandle, MethodHandle) - Constructor for class org.dynalang.dynalink.linker.GuardedInvocation
-
Creates a new guarded invocation.
- GuardedInvocation(MethodHandle, MethodHandle, SwitchPoint) - Constructor for class org.dynalang.dynalink.linker.GuardedInvocation
-
Creates a new guarded invocation.
- GuardedInvocation(MethodHandle, SwitchPoint, MethodHandle) - Constructor for class org.dynalang.dynalink.linker.GuardedInvocation
-
Creates a new guarded invocation.
- GuardingDynamicLinker - Interface in org.dynalang.dynalink.linker
-
The base interface for language-specific dynamic linkers.
- GuardingTypeConverterFactory - Interface in org.dynalang.dynalink.linker
-
Optional interface that can be implemented by
GuardingDynamicLinker implementations to provide
language-runtime specific implicit type conversion capabilities.
- Guards - Class in org.dynalang.dynalink.support
-
Utility methods for creating typical guards.
- initialize(MethodHandle) - Method in interface org.dynalang.dynalink.RelinkableCallSite
-
Initializes the relinkable call site by setting a relink-and-invoke method handle.
- initialize(MethodHandle) - Method in class org.dynalang.dynalink.support.AbstractRelinkableCallSite
-
- insertParameterTypes(CallSiteDescriptor, int, Class<?>...) - Static method in class org.dynalang.dynalink.support.CallSiteDescriptorFactory
-
Returns a new call site descriptor that is identical to the passed one, except that it has additional parameter
types inserted into its method type.
- insertParameterTypes(CallSiteDescriptor, int, List<Class<?>>) - Static method in class org.dynalang.dynalink.support.CallSiteDescriptorFactory
-
Returns a new call site descriptor that is identical to the passed one, except that it has additional parameter
types inserted into its method type.
- INSTANCE - Static variable in class org.dynalang.dynalink.support.BottomGuardingDynamicLinker
-
The sole instance of this stateless linker.
- inUse - Static variable in class org.dynalang.dynalink.support.Backport
-
True if Remi's JSR-292 backport agent is active; false if we're using native OpenJDK JSR-292 support.
- isArray(int, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a method handle that returns true if the argument in the specified position is a Java array.
- isCallSiteUnstable() - Method in interface org.dynalang.dynalink.linker.LinkRequest
-
- isCallSiteUnstable() - Method in class org.dynalang.dynalink.support.LinkRequestImpl
-
- isInstance(Class<?>, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a method handle with arguments of a specified type, but with boolean return value.
- isInstance(Class<?>, int, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a method handle with arguments of a specified type, but with boolean return value.
- isMethodInvocationConvertible(Class<?>, Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
Determines whether one type can be converted to another type using a method invocation conversion, as per JLS 5.3
"Method Invocation Conversion".
- isNotNull() - Static method in class org.dynalang.dynalink.support.Guards
-
Returns a guard that tests whether the first argument is not null.
- isNull() - Static method in class org.dynalang.dynalink.support.Guards
-
Returns a guard that tests whether the first argument is null.
- isOfClass(Class<?>, MethodType) - Static method in class org.dynalang.dynalink.support.Guards
-
Creates a guard method handle with arguments of a specified type, but with boolean return value.
- isPotentiallyConvertible(Class<?>, Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
Determines whether one type can be potentially converted to another type at runtime.
- isSubtype(Class<?>, Class<?>) - Static method in class org.dynalang.dynalink.support.TypeUtilities
-
Determines whether one type is a subtype of another type, as per JLS 4.10 "Subtyping".
- SCHEME - Static variable in interface org.dynalang.dynalink.CallSiteDescriptor
-
The index of the name token that will carry the operation scheme prefix (usually, "dyn").
- setClassLoader(ClassLoader) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the class loader for automatic discovery of available linkers.
- setFallbackLinkers(List<? extends GuardingDynamicLinker>) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the fallback linkers.
- setFallbackLinkers(GuardingDynamicLinker...) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the fallback linkers.
- setPrioritizedLinker(GuardingDynamicLinker) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets a single prioritized linker.
- setPrioritizedLinkers(List<? extends GuardingDynamicLinker>) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the prioritized linkers.
- setPrioritizedLinkers(GuardingDynamicLinker...) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the prioritized linkers.
- setRuntimeContextArgCount(int) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the number of arguments in the call sites that represent the stack context of the language runtime creating
the linker.
- setSyncOnRelink(boolean) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets whether the linker created by this factory will invoke MutableCallSite.syncAll(MutableCallSite[])
after a call site is relinked.
- setUnstableRelinkThreshold(int) - Method in class org.dynalang.dynalink.DynamicLinkerFactory
-
Sets the unstable relink threshold; the number of times a call site is relinked after which it will be
considered unstable, and subsequent link requests for it will indicate this.
- StaticClass - Class in org.dynalang.dynalink.beans
-
Object that represents the static facet of a class (its static methods, properties, and fields, as well as
construction of instances using "dyn:new").