Package org.codehaus.janino.util

# Interface ClassFile.ElementValue

All Known Implementing Classes:
  `ClassFile.Annotation`, `ClassFile.ArrayElementValue`, `ClassFile.BooleanElementValue`, `ClassFile.ByteElementValue`, `ClassFile.CharElementValue`, `ClassFile.ClassElementValue`, `ClassFile.ConstantElementValue`, `ClassFile.DoubleElementValue`, `ClassFile.EnumConstValue`, `ClassFile.FloatElementValue`, `ClassFile.IntElementValue`, `ClassFile.LongElementValue`, `ClassFile.ShortElementValue`, `ClassFile.StringElementValue`

Enclosing class:
  `ClassFile`

public static interface ClassFile.ElementValue
Representation of the "element_value" structure (see JVMS8 4.7.16.1).

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static interface`
`ClassFile.ElementValue.Visitor<R,EX extends Throwable>`
The visitor interface for the implementation of the "visitor" pattern.

## 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.

## Method Details

### getTag

byte getTag()

Returns:
  The "tag" byte to use when storing this "value" in an "element_value" structure

### store

void store(DataOutputStream dos) throws IOException
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!

Throws:
  `IOException`

### accept

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

Throws:
  `EX`