Package org.codehaus.janino

# Class Java.EnumConstant

java.lang.Object
org.codehaus.janino.Java.AbstractTypeDeclaration
org.codehaus.janino.Java.AbstractClassDeclaration
org.codehaus.janino.Java.EnumConstant

All Implemented Interfaces:
  `Java.Annotatable`, `Java.ClassDeclaration`, `Java.DocCommentable`, `Java.Locatable`, `Java.Scope`, `Java.TypeDeclaration`

Enclosing class:
  `Java`

public static final class Java.EnumConstant extends Java.AbstractClassDeclaration implements Java.DocCommentable
Representation of an "enum constant", see JLS7 8.9.1.

## Field Summary

Fields
Modifier and Type
Field
Description
`final Java.Rvalue[]`
`arguments`
The optional arguments that appear after the enum constant name iff the enum declares constructors with one or more parameters.
`final String`
`docComment`
The optional "doc comment" that appeared in the compilation unit immediately before this enum constant declaration.
`final String`
`name`
The name of the declared enum constant.

### Fields inherited from class org.codehaus.janino.Java.AbstractClassDeclaration

`constructors, fieldDeclarationsAndInitializers`

### Fields inherited from class org.codehaus.janino.Java.AbstractTypeDeclaration

`anonymousClassCount, localClassCount`

## Constructor Summary

Constructors
Constructor
Description
`EnumConstant(Location location, String docComment, Java.Modifier[] modifiers, String name, Java.Rvalue[] arguments)`

## Method Summary

Modifier and Type
Method
Description
`<R, EX extends Throwable>
R`
`accept(Visitor.TypeDeclarationVisitor<R,EX> visitor)`
Invokes the "`visit...()`" method of `Visitor.TypeDeclarationVisitor` for the concrete `Java.TypeDeclaration` type.
`String`
`getClassName()`
Determines the effective class name, e.g.
`String`
`getDocComment()`
`boolean`
`hasDeprecatedDocTag()`
Returns `true` if the object has a doc comment and the `&#64;deprecated` tag appears in the doc comment.
`String`
`toString()`

### Methods inherited from class org.codehaus.janino.Java.AbstractClassDeclaration

`addConstructor, addFieldDeclaration, addFieldDeclarationOrInitializer, addInitializer, defineSyntheticField, getSyntheticFields, getVariableDeclaratorsAndInitializers`

### Methods inherited from class org.codehaus.janino.Java.AbstractTypeDeclaration

`addDeclaredMethod, addMemberTypeDeclaration, createAnonymousClassName, createLocalTypeName, getAnnotations, getEnclosingScope, getLocation, getMemberTypeDeclaration, getMemberTypeDeclarations, getMethodDeclaration, getMethodDeclarations, getModifiers, getOptionalTypeParameters, invalidateMethodCaches, setEnclosingScope, throwCompileException`

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

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

### Methods inherited from interface org.codehaus.janino.Java.Annotatable

`getAnnotations`

### Methods inherited from interface org.codehaus.janino.Java.Locatable

`getLocation, throwCompileException`

### Methods inherited from interface org.codehaus.janino.Java.Scope

`getEnclosingScope`

### Methods inherited from interface org.codehaus.janino.Java.TypeDeclaration

`createAnonymousClassName, createLocalTypeName, getMemberTypeDeclaration, getMemberTypeDeclarations, getMethodDeclaration, getMethodDeclarations`

## Field Details

### docComment

@Nullable public final String docComment
The optional "doc comment" that appeared in the compilation unit immediately before this enum constant declaration.

### name

public final String name
The name of the declared enum constant.

### arguments

@Nullable public final Java.Rvalue[] arguments
The optional arguments that appear after the enum constant name iff the enum declares constructors with one or more parameters.

## Constructor Details

### EnumConstant

public EnumConstant(Location location, @Nullable String docComment, Java.Modifier[] modifiers, String name, @Nullable Java.Rvalue[] arguments)

## Method Details

### getClassName

public String getClassName()
Description copied from interface: `Java.TypeDeclaration`
Determines the effective class name, e.g. "pkg.Outer$Inner".

Specified by:
  `getClassName` in interface `Java.TypeDeclaration`

### getDocComment

@Nullable public String getDocComment()

Specified by:
  `getDocComment` in interface `Java.DocCommentable`
Returns:
  The doc comment of the object or `null`

### hasDeprecatedDocTag

public boolean hasDeprecatedDocTag()
Description copied from interface: `Java.DocCommentable`
Returns `true` if the object has a doc comment and the `&#64;deprecated` tag appears in the doc comment.

Specified by:
  `hasDeprecatedDocTag` in interface `Java.DocCommentable`

### accept

@Nullable public <R, EX extends Throwable> R accept(Visitor.TypeDeclarationVisitor<R,EX> visitor) throws EX
Description copied from interface: `Java.TypeDeclaration`
Invokes the "`visit...()`" method of `Visitor.TypeDeclarationVisitor` for the concrete `Java.TypeDeclaration` type.

Specified by:
  `accept` in interface `Java.TypeDeclaration`
Throws:
  `EX`

### toString

public String toString()

Specified by:
  `toString` in class `Java.AbstractTypeDeclaration`