Class InjectorUtils

java.lang.Object
com.llamalad7.mixinextras.utils.InjectorUtils

public class InjectorUtils extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    checkForDupedNews(Map<org.spongepowered.asm.mixin.injection.struct.Target,List<org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode>> targets)
     
    static void
    checkForImmediatePops(Map<org.spongepowered.asm.mixin.injection.struct.Target,List<org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode>> targets)
     
    static void
    coerceReturnType(org.spongepowered.asm.mixin.injection.code.Injector.InjectorData data, org.objectweb.asm.tree.InsnList insns, org.objectweb.asm.Type expectedReturnType)
     
    static void
    decorateInjectorSpecific(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key, Object value)
     
    static org.objectweb.asm.tree.AbstractInsnNode
    findCoerce(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode target, org.objectweb.asm.Type expectedType)
     
    static <T> T
    getInjectorSpecificDecoration(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key)
     
    static org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator.Context
    getOrCreateLocalContext(org.spongepowered.asm.mixin.injection.struct.Target target, org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, org.objectweb.asm.Type targetType, boolean isArgsOnly)
     
    static boolean
    hasInjectorSpecificDecoration(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key)
     
    static boolean
    isDupedFactoryRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
     
    static boolean
    isDupedNew(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
     
    static boolean
    isDynamicInstanceofRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
     
    static boolean
    isVirtualRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
     
    static void
    printLocals(org.spongepowered.asm.mixin.injection.struct.Target target, org.objectweb.asm.tree.AbstractInsnNode node, org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator.Context context, org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator discriminator, org.objectweb.asm.Type targetType, boolean isArgsOnly)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • InjectorUtils

      public InjectorUtils()
  • Method Details

    • isVirtualRedirect

      public static boolean isVirtualRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
    • isDynamicInstanceofRedirect

      public static boolean isDynamicInstanceofRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
    • checkForDupedNews

      public static void checkForDupedNews(Map<org.spongepowered.asm.mixin.injection.struct.Target,List<org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode>> targets)
    • isDupedNew

      public static boolean isDupedNew(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
    • isDupedFactoryRedirect

      public static boolean isDupedFactoryRedirect(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node)
    • checkForImmediatePops

      public static void checkForImmediatePops(Map<org.spongepowered.asm.mixin.injection.struct.Target,List<org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode>> targets)
    • getOrCreateLocalContext

      public static org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator.Context getOrCreateLocalContext(org.spongepowered.asm.mixin.injection.struct.Target target, org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, org.objectweb.asm.Type targetType, boolean isArgsOnly)
    • printLocals

      public static void printLocals(org.spongepowered.asm.mixin.injection.struct.Target target, org.objectweb.asm.tree.AbstractInsnNode node, org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator.Context context, org.spongepowered.asm.mixin.injection.modify.LocalVariableDiscriminator discriminator, org.objectweb.asm.Type targetType, boolean isArgsOnly)
    • decorateInjectorSpecific

      public static void decorateInjectorSpecific(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key, Object value)
    • getInjectorSpecificDecoration

      public static <T> T getInjectorSpecificDecoration(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key)
    • hasInjectorSpecificDecoration

      public static boolean hasInjectorSpecificDecoration(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode node, org.spongepowered.asm.mixin.injection.struct.InjectionInfo info, String key)
    • coerceReturnType

      public static void coerceReturnType(org.spongepowered.asm.mixin.injection.code.Injector.InjectorData data, org.objectweb.asm.tree.InsnList insns, org.objectweb.asm.Type expectedReturnType)
    • findCoerce

      public static org.objectweb.asm.tree.AbstractInsnNode findCoerce(org.spongepowered.asm.mixin.injection.struct.InjectionNodes.InjectionNode target, org.objectweb.asm.Type expectedType)