T
- the generic typeComparable<Operand<?>>
, org.refcodes.component.Resetable
, ArgsAccessor
, Operand<T>
, Option<T>
, Syntaxable
, SyntaxUsage
, org.refcodes.mixin.AliasAccessor
, org.refcodes.mixin.DescriptionAccessor
, org.refcodes.mixin.TypeAccessor<T>
, org.refcodes.mixin.ValueAccessor<T>
public class EnumOptionImpl<T extends Enum<T>> extends AbstractOption<T>
org.refcodes.mixin.AliasAccessor.AliasBuilder<B extends org.refcodes.mixin.AliasAccessor.AliasBuilder<B>>, org.refcodes.mixin.AliasAccessor.AliasMutator, org.refcodes.mixin.AliasAccessor.AliasProperty
ArgsAccessor.ArgsMutator, ArgsAccessor.ArgsProperty
org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B extends org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B>>, org.refcodes.mixin.DescriptionAccessor.DescriptionMutator, org.refcodes.mixin.DescriptionAccessor.DescriptionProperty
org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object>
org.refcodes.mixin.ValueAccessor.ValueBuilder<V extends Object,B extends org.refcodes.mixin.ValueAccessor.ValueBuilder<V,B>>, org.refcodes.mixin.ValueAccessor.ValueMutator<V extends Object>, org.refcodes.mixin.ValueAccessor.ValueProperty<V extends Object>
_value
Constructor | Description |
---|---|
EnumOptionImpl(String aShortOption,
String aLongOption,
Class<T> aType,
String aAlias,
String aDescription) |
Instantiates a new enum option impl.
|
EnumOptionImpl(org.refcodes.structure.Relation<String,T> aProperty,
Class<T> aType) |
Instantiates a new enum option impl.
|
Modifier and Type | Method | Description |
---|---|---|
String |
toUsage(SyntaxNotation aSyntaxNotation) |
Returns the human readable (verbose) syntax of implementing class
ATTENTION: As of different parenthesis settings for some notations
regarding the root
Syntaxable and the child Syntaxable s,
the method Syntaxable.toSyntax(SyntaxNotation) is called from
inside a Syntaxable hierarchy. |
protected T |
toValue(String aArg) |
Double dispatch hook to be implemented by subclasses of the
AbstractOperand for converting a command line argument to the
required Operand 's type. |
compareTo, getAlias, getArgs, getDescription, getType, getValue, reset, toString
getLongOption, getShortOption, parseArgs, setArgs, setValue, toState, toSyntax
compareTo
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
get, getAlias, getArgs, getValue, hasValue
toUsage, toUsage
public EnumOptionImpl(String aShortOption, String aLongOption, Class<T> aType, String aAlias, String aDescription)
aShortOption
- the short optionaLongOption
- the long optionaType
- the typeaAlias
- the option arg nameaDescription
- the descriptionprotected T toValue(String aArg) throws ParseArgsException
AbstractOperand
for converting a command line argument to the
required Operand
's type. In case conversion failed, then an
according exception is to be thrown.toValue
in class AbstractOperand<T extends Enum<T>>
aArg
- The command line argument to be converted to an instance of
the given type T.ParseArgsException
- Thrown in case the provided command line
arguments do not respect the required syntax or cannot be
converted to the required type.public String toUsage(SyntaxNotation aSyntaxNotation)
SyntaxUsage
Syntaxable
and the child Syntaxable
s,
the method Syntaxable.toSyntax(SyntaxNotation)
is called from
inside a Syntaxable
hierarchy. In case the syntax is to be
retrieved from the root Syntaxable
or an encapsulating and
different type, then the applicable method to be called is
SyntaxUsage.toUsage(SyntaxNotation)
, as for some notations it will for
example not create the most outer braces.toUsage
in interface SyntaxUsage
aSyntaxNotation
- The syntax notation used for generating the
command line arguments syntax.Copyright © 2018. All rights reserved.