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
Modifier and TypeFieldDescriptionprivate final String
private final org.objectweb.asm.Type
private final String
private final org.objectweb.asm.Type
private final String
private static final org.slf4j.Logger
private final org.objectweb.asm.Type
private final String
private static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
private final org.objectweb.asm.Type
private final org.objectweb.asm.Type
private static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionEnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
handlesClass
(org.objectweb.asm.Type classType, boolean isEmpty) name()
int
processClassWithFlags
(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, wait
Methods inherited from interface cpw.mods.modlauncher.serviceapi.ILaunchPluginService
addResources, customAuditConsumer, getExtension, handlesClass, initializeLaunch, 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:
name
in interfacecpw.mods.modlauncher.serviceapi.ILaunchPluginService
-
handlesClass
public EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase> handlesClass(org.objectweb.asm.Type classType, boolean isEmpty) - Specified by:
handlesClass
in 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:
processClassWithFlags
in interfacecpw.mods.modlauncher.serviceapi.ILaunchPluginService
-