Class LongArgumentType

java.lang.Object
dev.polv.taleapi.command.argument.LongArgumentType
All Implemented Interfaces:
ArgumentType<Long>

public class LongArgumentType extends Object implements ArgumentType<Long>
Argument type for long values with optional bounds.

Example Usage


 // Any long
 Command.argument("id", LongArgumentType.longArg())

 // Long >= 0
 Command.argument("timestamp", LongArgumentType.longArg(0))

 // Long between bounds
 Command.argument("value", LongArgumentType.longArg(0, 1000000))
 
  • Method Details

    • longArg

      public static LongArgumentType longArg()
      Creates a long argument type with no bounds.
      Returns:
      a new long argument type
    • longArg

      public static LongArgumentType longArg(long min)
      Creates a long argument type with a minimum bound.
      Parameters:
      min - the minimum value (inclusive)
      Returns:
      a new long argument type
    • longArg

      public static LongArgumentType longArg(long min, long max)
      Creates a long argument type with both bounds.
      Parameters:
      min - the minimum value (inclusive)
      max - the maximum value (inclusive)
      Returns:
      a new long argument type
    • getMinimum

      public long getMinimum()
      Returns the minimum value.
      Returns:
      the minimum bound
    • getMaximum

      public long getMaximum()
      Returns the maximum value.
      Returns:
      the maximum bound
    • parse

      public Long parse(StringReader reader) throws CommandException
      Description copied from interface: ArgumentType
      Parses the argument from the input string.
      Specified by:
      parse in interface ArgumentType<Long>
      Parameters:
      reader - the string reader positioned at the argument
      Returns:
      the parsed value
      Throws:
      CommandException - if the argument cannot be parsed
    • listSuggestions

      public CompletableFuture<Suggestions> listSuggestions(CommandContext context, SuggestionsBuilder builder)
      Description copied from interface: ArgumentType
      Provides suggestions for this argument.

      Default implementation returns no suggestions.

      Specified by:
      listSuggestions in interface ArgumentType<Long>
      Parameters:
      context - the current command context (may have partial arguments)
      builder - the suggestions builder
      Returns:
      a future that completes with suggestions
    • getResultType

      public Class<Long> getResultType()
      Description copied from interface: ArgumentType
      Returns the Java type this argument parses to.
      Specified by:
      getResultType in interface ArgumentType<Long>
      Returns:
      the result type class
    • getTypeName

      public String getTypeName()
      Description copied from interface: ArgumentType
      Returns a human-readable name for this argument type.

      Used in error messages and help text.

      Specified by:
      getTypeName in interface ArgumentType<Long>
      Returns:
      the type name (e.g., "integer", "string", "player")
    • getExamples

      public String[] getExamples()
      Description copied from interface: ArgumentType
      Returns example values for this argument type.

      Used for documentation and error messages.

      Specified by:
      getExamples in interface ArgumentType<Long>
      Returns:
      an array of example values