Annotation Type Argument


@Retention(RUNTIME) @Target(PARAMETER) public @interface Argument
Annotation used to indicate that a method parameter is a command argument
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    @NonNull String
    Get the default value
    @NonNull String
    The argument description
    @NonNull String
    Name of the argument parser
    @NonNull String
    Name of the suggestions provider to use.
    @NonNull String
    The name of the argument that this parameter is bound to.
  • Element Details

    • value

      @NonNull String value
      The name of the argument that this parameter is bound to. This value must be overridden unless you have explicitly enabled the preservation of parameter names in your compiler options.

      If the parameter names are preserved and the name of the bound argument is the same as the parameter name, the default value may be used.

      Returns:
      Argument name
      Default:
      "__INFERRED_ARGUMENT_NAME__"
    • parserName

      @NonNull String parserName
      Name of the argument parser
      Returns:
      Argument name
      Default:
      ""
    • suggestions

      @NonNull String suggestions
      Name of the suggestions provider to use. If the string is left empty, the default provider for the argument parser will be used. Otherwise, the ParserRegistry instance in the CommandManager will be queried for a matching suggestion provider.

      For this to work, the suggestion needs to be registered in the parser registry. To do this, use ParserRegistry.registerSuggestionProvider(String, BiFunction). The registry instance can be retrieved using CommandManager.parserRegistry().

      Returns:
      The name of the suggestion provider, or "" if the default suggestion provider for the argument parser should be used instead
      Since:
      1.1.0
      Default:
      ""
    • defaultValue

      @NonNull String defaultValue
      Get the default value
      Returns:
      Default value
      Default:
      ""
    • description

      @NonNull String description
      The argument description
      Returns:
      Argument description
      Default:
      ""