Package org.codehaus.janino.util

# Class ClassFile.EnumConstValue

java.lang.Object
org.codehaus.janino.util.ClassFile.EnumConstValue

All Implemented Interfaces:
  `ClassFile.ElementValue`

Enclosing class:
  `ClassFile`

public static final class ClassFile.EnumConstValue extends Object implements ClassFile.ElementValue
Representation of the "enum_const_value" element in the "element_value" structure.

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.codehaus.janino.util.ClassFile.ElementValue

`ClassFile.ElementValue.Visitor<R,EX extends Throwable>`

## Field Summary

Fields
Modifier and Type
Field
Description
`final short`
`constNameIndex`
`const_name_index`; index of a `ClassFile.ConstantUtf8Info` giveing the simple name of the enum constant represented by this `element_value` structure.
`final short`
`typeNameIndex`
`type_name_index`; index of a `ClassFile.ConstantUtf8Info` representing a field descriptor.

## Constructor Summary

Constructors
Constructor
Description
`EnumConstValue(short typeNameIndex, short constNameIndex)`

## Method Summary

Modifier and Type
Method
Description
`<R, EX extends Throwable>
R`
`accept(ClassFile.ElementValue.Visitor<R,EX> visitor)`
Invokes the respective method of the `ClassFile.ElementValue.Visitor`.
`byte`
`getTag()`
`void`
`store(DataOutputStream dos)`
Writes this element value in an element-value-type dependent way; see JVMS8 4.7.16.1.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### typeNameIndex

public final short typeNameIndex
`type_name_index`; index of a `ClassFile.ConstantUtf8Info` representing a field descriptor.

### constNameIndex

public final short constNameIndex
`const_name_index`; index of a `ClassFile.ConstantUtf8Info` giveing the simple name of the enum constant represented by this `element_value` structure.

## Constructor Details

### EnumConstValue

public EnumConstValue(short typeNameIndex, short constNameIndex)

Parameters:
  `typeNameIndex` - `type_name_index`; index of a `ClassFile.ConstantUtf8Info` representing a field descriptor
  `constNameIndex` - `const_name_index`; index of a `ClassFile.ConstantUtf8Info` giveing the simple name of the enum constant represented by this `element_value` structure

## Method Details

### getTag

public byte getTag()

Specified by:
  `getTag` in interface `ClassFile.ElementValue`
Returns:
  The "tag" byte to use when storing this "value" in an "element_value" structure

### store

public void store(DataOutputStream dos) throws IOException
Description copied from interface: `ClassFile.ElementValue`
Writes this element value in an element-value-type dependent way; see JVMS8 4.7.16.1. The "tag" byte is snot part of this writing!

Specified by:
  `store` in interface `ClassFile.ElementValue`
Throws:
  `IOException`

### accept

@Nullable public <R, EX extends Throwable> R accept(ClassFile.ElementValue.Visitor<R,EX> visitor) throws EX
Description copied from interface: `ClassFile.ElementValue`
Invokes the respective method of the `ClassFile.ElementValue.Visitor`.

Specified by:
  `accept` in interface `ClassFile.ElementValue`
Throws:
  `EX`