Package org.spongepowered.asm.mixin.injection.code

## Interface IInsnListEx

- All Known Implementing Classes:
    `InsnListEx`

      public interface IInsnListEx

  Interface for extensions for InsnList which provide additional context for the InsnList. This is mainly to allow passing additional information to `InjectionPoint::`InjectionPoint.find(java.lang.String, org.objectweb.asm.tree.InsnList, java.util.Collection<org.objectweb.asm.tree.AbstractInsnNode>)`` without breaking backward compatibility.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface | Description
    --- | --- | ---
    `static class` | `IInsnListEx.SpecialNodeType` | Type of special nodes supported by `getSpecialNode(org.spongepowered.asm.mixin.injection.code.IInsnListEx.SpecialNodeType)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `<V> V` | `getDecoration​(java.lang.String key)` | Get the specified decoration
    `<V> V` | `getDecoration​(java.lang.String key, V defaultValue)` | Get the specified decoration or default value
    `org.objectweb.asm.tree.AbstractInsnNode` | `getSpecialNode​(IInsnListEx.SpecialNodeType type)` | Get - if available - the specified special node from the target.
    `int` | `getTargetAccess()` | Get the access flags from the target method
    `java.lang.String` | `getTargetDesc()` | Get the descriptor of the target method
    `java.lang.String` | `getTargetName()` | Get the name of the target method
    `java.lang.String` | `getTargetSignature()` | Get the signature of the target method
    `boolean` | `hasDecoration​(java.lang.String key)` | Get whether this list is decorated with the specified key
    `boolean` | `isTargetConstructor()` | Get whether the target method is a constructor
    `boolean` | `isTargetStatic()` | Get whether the target method is static
    `boolean` | `isTargetStaticInitialiser()` | Get whether the target method is a static initialiser

- - ### Method Detail

    - #### getTargetName

          java.lang.String getTargetName()

      Get the name of the target method

    - #### getTargetDesc

          java.lang.String getTargetDesc()

      Get the descriptor of the target method

    - #### getTargetSignature

          java.lang.String getTargetSignature()

      Get the signature of the target method

    - #### getTargetAccess

          int getTargetAccess()

      Get the access flags from the target method

    - #### isTargetStatic

          boolean isTargetStatic()

      Get whether the target method is static

    - #### isTargetConstructor

          boolean isTargetConstructor()

      Get whether the target method is a constructor

    - #### isTargetStaticInitialiser

          boolean isTargetStaticInitialiser()

      Get whether the target method is a static initialiser

    - #### getSpecialNode

          org.objectweb.asm.tree.AbstractInsnNode getSpecialNode​(IInsnListEx.SpecialNodeType type)

      Get - if available - the specified special node from the target. The returned node is not guaranteed to be non-null.
      Parameters:
        `type` - type of special node to fetch
      Returns:
        the special node or null if not available

    - #### hasDecoration

          boolean hasDecoration​(java.lang.String key)

      Get whether this list is decorated with the specified key
      Parameters:
        `key` - meta key
      Returns:
        true if the specified decoration exists

    - #### getDecoration

          <V> V getDecoration​(java.lang.String key)

      Get the specified decoration
      Type Parameters:
        `V` - value type
      Parameters:
        `key` - meta key
      Returns:
        decoration value or null if absent

    - #### getDecoration

          <V> V getDecoration​(java.lang.String key,
                              V defaultValue)

      Get the specified decoration or default value
      Type Parameters:
        `V` - value type
      Parameters:
        `key` - meta key
        `defaultValue` - default value to return
      Returns:
        decoration value or default value if absent