Class InjectionPointData

java.lang.Object
org.spongepowered.asm.mixin.injection.struct.InjectionPointData

public class InjectionPointData
extends java.lang.Object
Data read from an At annotation and passed into an InjectionPoint ctor
  • Constructor Summary

    Constructors
    Constructor Description
    InjectionPointData​(IInjectionPointContext context, java.lang.String at, java.util.List<java.lang.String> args, java.lang.String target, java.lang.String slice, int ordinal, int opcode, java.lang.String id)  
  • Method Summary

    Modifier and Type Method Description
    ITargetSelector get​(java.lang.String key)
    Get the supplied value from the named args as a target selector, throws an exception if the argument cannot be parsed as a target selector
    boolean get​(java.lang.String key, boolean defaultValue)
    Get the supplied value from the named args, return defaultValue if the arg is not set
    int get​(java.lang.String key, int defaultValue)
    Get the supplied value from the named args, return defaultValue if the arg is not set
    java.lang.String get​(java.lang.String key, java.lang.String defaultValue)
    Get the supplied value from the named args, return defaultValue if the arg is not set
    java.lang.String getAt()
    Get the at value on the injector
    IMixinContext getContext()
    Get the context
    java.lang.String getDescription()
    Get a description of this injector for use in error messages
    java.lang.String getId()
    Get the id specified on the injection point (or null if not specified)
    LocalVariableDiscriminator getLocalVariableDiscriminator()  
    IMessageSink getMessageSink()
    Get the message sink for this injection point
    org.objectweb.asm.tree.MethodNode getMethod()
    Get the annotated method
    org.objectweb.asm.Type getMethodReturnType()
    Get the return type of the annotated method
    int getOpcode()
    Get the opcode specified on the injection point
    int getOpcode​(int defaultOpcode)
    Get the opcode specified on the injection point or return the default if no opcode was specified
    int getOpcode​(int defaultOpcode, int... validOpcodes)
    Get the opcode specified on the injection point or return the default if no opcode was specified or if the specified opcode does not appear in the supplied list of valid opcodes
    int getOrdinal()
    Get the ordinal specified on the injection point
    org.objectweb.asm.tree.AnnotationNode getParent()
    Get the root annotation (eg.
    InjectionPoint.Selector getSelector()
    Get the selector value parsed from the injector
    java.lang.String getSlice()
    Get the slice id specified on the injector
    ITargetSelector getTarget()
    Get the target value specified on the injector
    java.lang.String getType()
    Get the parsed constructor type for this injector
    static java.lang.String parseType​(java.lang.String at)
    Parse a constructor type from the supplied at string
    java.lang.String toString()  

    Methods inherited from class java.lang.Object

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

    • InjectionPointData

      public InjectionPointData​(IInjectionPointContext context, java.lang.String at, java.util.List<java.lang.String> args, java.lang.String target, java.lang.String slice, int ordinal, int opcode, java.lang.String id)
  • Method Details

    • getMessageSink

      public IMessageSink getMessageSink()
      Get the message sink for this injection point
    • getAt

      public java.lang.String getAt()
      Get the at value on the injector
    • getType

      public java.lang.String getType()
      Get the parsed constructor type for this injector
    • getSelector

      public InjectionPoint.Selector getSelector()
      Get the selector value parsed from the injector
    • getContext

      public IMixinContext getContext()
      Get the context
    • getMethod

      public org.objectweb.asm.tree.MethodNode getMethod()
      Get the annotated method
    • getMethodReturnType

      public org.objectweb.asm.Type getMethodReturnType()
      Get the return type of the annotated method
    • getParent

      public org.objectweb.asm.tree.AnnotationNode getParent()
      Get the root annotation (eg. Inject)
    • getSlice

      public java.lang.String getSlice()
      Get the slice id specified on the injector
    • getLocalVariableDiscriminator

      public LocalVariableDiscriminator getLocalVariableDiscriminator()
    • get

      public java.lang.String get​(java.lang.String key, java.lang.String defaultValue)
      Get the supplied value from the named args, return defaultValue if the arg is not set
      Parameters:
      key - argument name
      defaultValue - value to return if the arg is not set
      Returns:
      argument value or default if not set
    • get

      public int get​(java.lang.String key, int defaultValue)
      Get the supplied value from the named args, return defaultValue if the arg is not set
      Parameters:
      key - argument name
      defaultValue - value to return if the arg is not set
      Returns:
      argument value or default if not set
    • get

      public boolean get​(java.lang.String key, boolean defaultValue)
      Get the supplied value from the named args, return defaultValue if the arg is not set
      Parameters:
      key - argument name
      defaultValue - value to return if the arg is not set
      Returns:
      argument value or default if not set
    • get

      public ITargetSelector get​(java.lang.String key)
      Get the supplied value from the named args as a target selector, throws an exception if the argument cannot be parsed as a target selector
      Parameters:
      key - argument name
      Returns:
      argument value as a target selector
    • getTarget

      public ITargetSelector getTarget()
      Get the target value specified on the injector
    • getDescription

      public java.lang.String getDescription()
      Get a description of this injector for use in error messages
    • getOrdinal

      public int getOrdinal()
      Get the ordinal specified on the injection point
    • getOpcode

      public int getOpcode()
      Get the opcode specified on the injection point
    • getOpcode

      public int getOpcode​(int defaultOpcode)
      Get the opcode specified on the injection point or return the default if no opcode was specified
      Parameters:
      defaultOpcode - opcode to return if none specified
      Returns:
      opcode or default
    • getOpcode

      public int getOpcode​(int defaultOpcode, int... validOpcodes)
      Get the opcode specified on the injection point or return the default if no opcode was specified or if the specified opcode does not appear in the supplied list of valid opcodes
      Parameters:
      defaultOpcode - opcode to return if none specified
      validOpcodes - valid opcodes
      Returns:
      opcode or default
    • getId

      public java.lang.String getId()
      Get the id specified on the injection point (or null if not specified)
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
    • parseType

      public static java.lang.String parseType​(java.lang.String at)
      Parse a constructor type from the supplied at string
      Parameters:
      at - at to parse
      Returns:
      parsed constructor type