net.minecraft.util.codegen

public abstract class MonomorphizableDelegate<Interface, Target extends Interface>

net.minecraft.util.monomorphizer.MonomorphizableDelegate
net.minecraft.class_1_1874
net.minecraft.util.codegen.MonomorphizableDelegate

Field summary

Modifier and TypeField
private static final ConcurrentMap<Class<?>, Monomorph<?>>
TEMPLATES
field_1_12106
MONOMORPH_CACHE
protected final Target
target
field_1_12108
target
private final Monomorph<Target>
delegateTemplate
field_1_12107
monomorph

Constructor summary

ModifierConstructor
protected (Target target)

Method summary

Modifier and TypeMethod
private static Monomorph<?>
validateAndCreateTemplate(Class<?> delegateClass)
method_1_11917(Class<?> arg0)
createMonomorph(Class<?> delegateClass)
private static void
validateReferenceDelegate(Class<?> delegateClass, Class<?> interfaceClass)
method_1_11918(Class<?> arg0, Class<?> arg1)
assertDelegateImplementsInterface(Class<?> delegateClass, Class<?> interfaceClass)
public Interface
asInterface()
method_1_11914()
getPolymorphicTarget()
public Interface
makeMonomorphic(MethodHandles$Lookup lookup)
method_1_11916(MethodHandles$Lookup arg0)
monomorphize(MethodHandles$Lookup lookup)
private static boolean
lambda$validateReferenceDelegate$0(Method arg0, Method arg1)
method_1_11915(Method arg0, Method arg1)
method_1_11915(Method arg0, Method delegateMethod)