Package org.spongepowered.asm.mixin.injection.selectors

## Enum ElementNode.NodeType

- java.lang.Object
- - java.lang.Enum<ElementNode.NodeType>
  - - org.spongepowered.asm.mixin.injection.selectors.ElementNode.NodeType

All Implemented Interfaces:
  `java.io.Serializable`, `java.lang.Comparable<ElementNode.NodeType>`

Enclosing class:
  ElementNode<TNode>

    public static enum ElementNode.NodeType
    extends java.lang.Enum<ElementNode.NodeType>

Element node type, returned by `getType` so consumers don't need to do instanceof checks, and allows switching on element type in a more expressive way

### Enum Constant Summary

Enum Constants
`FIELD` A field node
`FIELD_INSN` A get or put field instruction
`INVOKEDYNAMIC_INSN` An INVOKEDYNAMIC instruction
`METHOD` A method node
`METHOD_INSN` An invoke instruction
`UNDEFINED` None or unknown type

### Field Summary

Fields
`boolean` `hasField` Whether this node holds a field, implies that calling `getField` will return a value
`boolean` `hasInsn` Whether this node holds an insn, implies that calling `getInsn` will return a value
`boolean` `hasMethod` Whether this node holds a method, implies that calling `getMethod` will return a value

### Method Summary

All Methods Static Methods Concrete Methods
`static ElementNode.NodeType` `valueOf​(java.lang.String name)` Returns the enum constant of this type with the specified name.
`static ElementNode.NodeType[]` `values()` Returns an array containing the constants of this enum type, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

### Enum Constant Detail

#### UNDEFINED

    public static final ElementNode.NodeType UNDEFINED

None or unknown type

#### METHOD

    public static final ElementNode.NodeType METHOD

A method node

#### FIELD

    public static final ElementNode.NodeType FIELD

A field node

#### METHOD_INSN

    public static final ElementNode.NodeType METHOD_INSN

An invoke instruction

#### FIELD_INSN

    public static final ElementNode.NodeType FIELD_INSN

A get or put field instruction

#### INVOKEDYNAMIC_INSN

    public static final ElementNode.NodeType INVOKEDYNAMIC_INSN

An INVOKEDYNAMIC instruction

### Field Detail

#### hasMethod

    public final boolean hasMethod

Whether this node holds a method, implies that calling `getMethod` will return a value

#### hasField

    public final boolean hasField

Whether this node holds a field, implies that calling `getField` will return a value

#### hasInsn

    public final boolean hasInsn

Whether this node holds an insn, implies that calling `getInsn` will return a value

### Method Detail

#### values

    public static ElementNode.NodeType[] values()

Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

    for (ElementNode.NodeType c : ElementNode.NodeType.values())
        System.out.println(c);

Returns:
  an array containing the constants of this enum type, in the order they are declared

#### valueOf

    public static ElementNode.NodeType valueOf​(java.lang.String name)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
  `java.lang.NullPointerException` - if the argument is null