Class RuntimeEnumExtender
java.lang.Object
net.minecraftforge.fml.common.asm.RuntimeEnumExtender
- All Implemented Interfaces:
cpw.mods.modlauncher.serviceapi.ILaunchPluginService
public class RuntimeEnumExtender
extends Object
implements cpw.mods.modlauncher.serviceapi.ILaunchPluginService
Modifies specified enums to allow runtime extension by making the $VALUES field non-final and
injecting constructor calls which are not valid in normal java code.
-
Nested Class Summary
Nested classes/interfaces inherited from interface cpw.mods.modlauncher.serviceapi.ILaunchPluginService
cpw.mods.modlauncher.serviceapi.ILaunchPluginService.ComputeFlags, cpw.mods.modlauncher.serviceapi.ILaunchPluginService.ITransformerLoader, cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Stringprivate final org.objectweb.asm.Typeprivate final Stringprivate final org.objectweb.asm.Typeprivate final Stringprivate static final org.slf4j.Loggerprivate final org.objectweb.asm.Typeprivate final Stringprivate static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>private final org.objectweb.asm.Typeprivate final org.objectweb.asm.Typeprivate static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionEnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>handlesClass(org.objectweb.asm.Type classType, boolean isEmpty) name()intprocessClassWithFlags(cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase phase, org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.Type classType, String reason) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface cpw.mods.modlauncher.serviceapi.ILaunchPluginService
addResources, customAuditConsumer, getExtension, handlesClass, initializeLaunch, offerResource, processClass, processClass
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
STRING
private final org.objectweb.asm.Type STRING -
ENUM
private final org.objectweb.asm.Type ENUM -
MARKER_IFACE
private final org.objectweb.asm.Type MARKER_IFACE -
ARRAY_UTILS
private final org.objectweb.asm.Type ARRAY_UTILS -
ADD_DESC
-
UNSAFE_HACKS
private final org.objectweb.asm.Type UNSAFE_HACKS -
CLEAN_DESC
-
NAME_DESC
-
EQUALS_DESC
-
YAY
-
NAY
-
-
Constructor Details
-
RuntimeEnumExtender
public RuntimeEnumExtender()
-
-
Method Details
-
name
- Specified by:
namein interfacecpw.mods.modlauncher.serviceapi.ILaunchPluginService
-
handlesClass
public EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase> handlesClass(org.objectweb.asm.Type classType, boolean isEmpty) - Specified by:
handlesClassin interfacecpw.mods.modlauncher.serviceapi.ILaunchPluginService
-
processClassWithFlags
public int processClassWithFlags(cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase phase, org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.Type classType, String reason) - Specified by:
processClassWithFlagsin interfacecpw.mods.modlauncher.serviceapi.ILaunchPluginService
-