Class GenerateEnumDirective<C extends CodegenContext<S,?,?>,S>
- java.lang.Object
-
- software.amazon.smithy.codegen.core.directed.Directive<S>
-
- software.amazon.smithy.codegen.core.directed.ContextualDirective<C,S>
-
- software.amazon.smithy.codegen.core.directed.ShapeDirective<Shape,C,S>
-
- software.amazon.smithy.codegen.core.directed.GenerateEnumDirective<C,S>
-
- Type Parameters:
C
- CodegenContext type.S
- Codegen settings type.
public final class GenerateEnumDirective<C extends CodegenContext<S,?,?>,S> extends ShapeDirective<Shape,C,S>
Directive used to generate an enum shape or enum string shape.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GenerateEnumDirective.EnumType
Represents the type of enum to generate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EnumShape
expectEnumShape()
EnumTrait
getEnumTrait()
Gets theEnumTrait
of the shape.GenerateEnumDirective.EnumType
getEnumType()
Gets the type of enum being generated, whether it's a string shape marked with the enum trait or, in Smithy IDL 2.0, an actual enum shape.-
Methods inherited from class software.amazon.smithy.codegen.core.directed.ShapeDirective
shape, symbol
-
Methods inherited from class software.amazon.smithy.codegen.core.directed.ContextualDirective
context, fileManifest, symbolProvider
-
Methods inherited from class software.amazon.smithy.codegen.core.directed.Directive
connectedShapes, model, operations, service, settings
-
-
-
-
Method Detail
-
getEnumType
public GenerateEnumDirective.EnumType getEnumType()
Gets the type of enum being generated, whether it's a string shape marked with the enum trait or, in Smithy IDL 2.0, an actual enum shape.Note that Smithy IDL 2.0 generators can perform a pre-processing transform to convert eligible string shape enums to proper enums, removing the need to check this property.
- Returns:
- Gets the type of enum being generated.
- See Also:
getEnumTrait()
-
getEnumTrait
public EnumTrait getEnumTrait()
Gets theEnumTrait
of the shape.- Returns:
- Returns the enum trait.
-
expectEnumShape
public EnumShape expectEnumShape()
-
-