Package org.codehaus.janino

# Interface Java.EnumDeclaration

All Superinterfaces:
  `Java.Annotatable`, `Java.ClassDeclaration`, `Java.DocCommentable`, `Java.Locatable`, `Java.NamedTypeDeclaration`, `Java.Scope`, `Java.TypeDeclaration`

All Known Implementing Classes:
  `Java.MemberEnumDeclaration`, `Java.PackageMemberEnumDeclaration`

Enclosing class:
  `Java`

public static interface Java.EnumDeclaration extends Java.ClassDeclaration, Java.NamedTypeDeclaration, Java.DocCommentable
Base for package member (a.k.a. "top-level") enum declarations and nested enum declarations.

## Method Summary

Modifier and Type
Method
Description
`void`
`addConstant(Java.EnumConstant ec)`
Adds another constant to this enum declaration.
`List<Java.EnumConstant>`
`getConstants()`
`Java.Type[]`
`getImplementedTypes()`
`Java.Modifier[]`
`getModifiers()`
`String`
`getName()`

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

`getAnnotations`

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

`getSyntheticFields, getVariableDeclaratorsAndInitializers`

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

`getDocComment, hasDeprecatedDocTag`

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

`getLocation, throwCompileException`

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

`getOptionalTypeParameters`

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

`getEnclosingScope`

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

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

## Method Details

### getModifiers

Java.Modifier[] getModifiers()

Returns:
  The `Java.Modifier`s declared for this enum

### getName

String getName()

Specified by:
  `getName` in interface `Java.NamedTypeDeclaration`
Returns:
  The declared (not the fully qualified) name of the class or interface

### getImplementedTypes

Java.Type[] getImplementedTypes()

Returns:
  The interfaces that this enum implements

### getConstants

List<Java.EnumConstant> getConstants()

Returns:
  The constants that this enum declares

### addConstant

void addConstant(Java.EnumConstant ec)
Adds another constant to this enum declaration.