Class ObjectHolderDefinalize

java.lang.Object
net.minecraftforge.fml.common.asm.ObjectHolderDefinalize
All Implemented Interfaces:
cpw.mods.modlauncher.serviceapi.ILaunchPluginService

public class ObjectHolderDefinalize extends Object implements cpw.mods.modlauncher.serviceapi.ILaunchPluginService
Removes the final modifier from fields with the @ObjectHolder annotation, prevents the JITer from in lining them so our runtime replacements can work. Will also de-finalize all fields in on class level annotations.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    private static final record 
     

    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

    Fields
    Modifier and Type
    Field
    Description
    private static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
     
    private final String
     
     
    private static final EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private String
    getValue(List<org.objectweb.asm.tree.AnnotationNode> lst)
     
    EnumSet<cpw.mods.modlauncher.serviceapi.ILaunchPluginService.Phase>
    handlesClass(org.objectweb.asm.Type classType, boolean isEmpty)
     
    private boolean
    hasHolder(List<org.objectweb.asm.tree.AnnotationNode> lst)
     
     
    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, offerResource, processClass, processClass
  • Field Details

  • Constructor Details

    • ObjectHolderDefinalize

      public ObjectHolderDefinalize()
  • Method Details

    • name

      public String name()
      Specified by:
      name in interface cpw.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 interface cpw.mods.modlauncher.serviceapi.ILaunchPluginService
    • hasHolder

      private boolean hasHolder(List<org.objectweb.asm.tree.AnnotationNode> lst)
    • getValue

      private String getValue(List<org.objectweb.asm.tree.AnnotationNode> lst)
    • 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 interface cpw.mods.modlauncher.serviceapi.ILaunchPluginService