Class CollectionArgument<S extends CommandSource,E,C extends Collection<E>>

java.lang.Object
studio.mevera.imperat.util.TypeCapturer
studio.mevera.imperat.command.arguments.type.ArgumentType<S,C>
studio.mevera.imperat.command.arguments.type.CollectionArgument<S,E,C>
All Implemented Interfaces:
Prioritizable

public class CollectionArgument<S extends CommandSource,E,C extends Collection<E>> extends ArgumentType<S,C>
  • Constructor Details

  • Method Details

    • parse

      public C parse(@NotNull @NotNull CommandContext<S> context, @NotNull @NotNull Argument<S> argument, @NotNull @NotNull String input) throws CommandException
      Description copied from class: ArgumentType
      Parses the argument value from the given input string, using the provided execution context. This method is responsible for converting the raw input into the appropriate type, handling any necessary validation or error handling during the parsing process.
      Specified by:
      parse in class ArgumentType<S extends CommandSource,C extends Collection<E>>
      Parameters:
      context - the execution context.
      argument - the argument with this type.
      input - the raw input string to parse.
      Returns:
      the resolved value of type T.
      Throws:
      CommandException - if parsing fails.
    • isGreedy

      public boolean isGreedy(Argument<S> parameter)
      Description copied from class: ArgumentType
      Determines if this parameter type is greedy, meaning it consumes multiple arguments. By default, returns false.
      Overrides:
      isGreedy in class ArgumentType<S extends CommandSource,C extends Collection<E>>
      Parameters:
      parameter - the command parameter.
      Returns:
      true if greedy, false otherwise.