Class EnumArgument<C,E extends Enum<E>>

java.lang.Object
cloud.commandframework.arguments.CommandArgument<C,E>
cloud.commandframework.arguments.standard.EnumArgument<C,E>
Type Parameters:
C - Argument sender
E - Enum type
All Implemented Interfaces:
CloudKeyHolder<E>, Comparable<CommandArgument<?,?>>

@API(status=STABLE) public class EnumArgument<C,E extends Enum<E>> extends CommandArgument<C,E>
Argument type that recognizes enums
  • Constructor Details

  • Method Details

    • builder

      @API(status=STABLE, since="1.8.0") public static <C, E extends Enum<E>> @NonNull EnumArgument.Builder<C,E> builder(@NonNull Class<E> enumClass, @NonNull String name)
      Create a new EnumArgument.Builder.
      Type Parameters:
      C - sender type
      E - enum type
      Parameters:
      enumClass - enum class
      name - argument name
      Returns:
      new EnumArgument.Builder
      Since:
      1.8.0
    • newBuilder

      @API(status=DEPRECATED, since="1.8.0") @Deprecated public static <C, E extends Enum<E>> @NonNull EnumArgument.Builder<C,E> newBuilder(@NonNull Class<E> enumClass, @NonNull String name)
      Deprecated.
      Create a new builder
      Type Parameters:
      C - Command sender type
      E - enum type
      Parameters:
      enumClass - enum class
      name - Name of the argument
      Returns:
      Created builder
    • of

      public static <C, E extends Enum<E>> @NonNull CommandArgument<C,E> of(@NonNull Class<E> enumClass, @NonNull String name)
      Create a new required command argument
      Type Parameters:
      C - Command sender type
      E - Enum type
      Parameters:
      enumClass - Enum class
      name - Name of the argument
      Returns:
      Created argument
    • optional

      public static <C, E extends Enum<E>> @NonNull CommandArgument<C,E> optional(@NonNull Class<E> enumClass, @NonNull String name)
      Create a new optional command argument
      Type Parameters:
      C - Command sender type
      E - Enum type
      Parameters:
      enumClass - Enum class
      name - Name of the argument
      Returns:
      Created argument
    • optional

      public static <C, E extends Enum<E>> @NonNull CommandArgument<C,E> optional(@NonNull Class<E> enumClass, @NonNull String name, @NonNull E defaultValue)
      Create a new optional command argument with a default value
      Type Parameters:
      C - Command sender type
      E - Enum type
      Parameters:
      enumClass - Enum class
      name - Name of the argument
      defaultValue - Default value
      Returns:
      Created argument