Package groovy.cli

Annotation Type Option


@Documented
@Retention(RUNTIME)
@Target({METHOD,FIELD})
public @interface Option
Indicates that a method or property can be used to set a CLI option.
  • Element Details

    • description

      String description
      The description of this option
      Returns:
      the description of this option
      Default:
      ""
    • shortName

      String shortName
      The short name of this option. Defaults to the name of member being annotated if the longName is empty.
      Returns:
      the short name of this option
      Default:
      ""
    • longName

      String longName
      The long name of this option. Defaults to the name of member being annotated.
      Returns:
      the long name of this option
      Default:
      ""
    • valueSeparator

      String valueSeparator
      The value separator for this multi-valued option. Only allowed for array-typed arguments.
      Returns:
      the value separator for this multi-valued option
      Default:
      ""
    • optionalArg

      boolean optionalArg
      Whether this option can have an optional argument. Only supported for array-typed arguments to indicate that the array may be empty.
      Returns:
      true if this array-typed option can have an optional argument (i.e. could be empty)
      Default:
      false
    • numberOfArguments

      int numberOfArguments
      How many arguments this option has. A value greater than 1 is only allowed for array-typed arguments. Ignored for boolean options which are assumed to have a default of 0 or if numberOfArgumentsString is set.
      Returns:
      the number of arguments
      Default:
      1
    • numberOfArgumentsString

      String numberOfArgumentsString
      How many arguments this option has represented as a String. Only allowed for array-typed arguments. Overrides numberOfArguments if set. The special values of '+' means one or more and '*' as 0 or more.
      Returns:
      the number of arguments (as a String)
      Default:
      ""
    • defaultValue

      String defaultValue
      The default value for this option as a String; subject to type conversion and 'convert'. Ignored for Boolean options.
      Returns:
      the default value for this option
      Default:
      ""
    • convert

      Class convert
      A conversion closure to convert the incoming String into the desired object
      Returns:
      the closure to convert this option's argument(s)
      Default:
      groovy.transform.Undefined.CLASS.class