Package studio.mevera.imperat
Interface BrigadierManager<S extends studio.mevera.imperat.context.Source>
- Type Parameters:
S- the command-source valueType
- All Known Implementing Classes:
BaseBrigadierManager
public sealed interface BrigadierManager<S extends studio.mevera.imperat.context.Source>
permits BaseBrigadierManager<S>
A class that manages parsing
Command
into brigadier CommandNode-
Method Summary
Modifier and TypeMethodDescription@NotNull com.mojang.brigadier.arguments.ArgumentType<?>getArgumentType(studio.mevera.imperat.command.parameters.CommandParameter<S> parameter) Fetches the argument valueType from the parameter<T> com.mojang.brigadier.tree.LiteralCommandNode<T>parseCommandIntoNode(studio.mevera.imperat.command.Command<S> command) Parses the registeredCommandto brigadier node<T> voidregisterArgumentResolver(Class<T> type, ArgumentTypeResolver argumentTypeResolver) Registers the argument valueType to its class valueTypevoidregisterArgumentResolver(ArgumentTypeResolver argumentTypeResolver) Registers the argument valueType resolverwrapCommandSource(Object commandSource) Converts the original command source from brigadier into the platform's command-source
-
Method Details
-
wrapCommandSource
Converts the original command source from brigadier into the platform's command-source- Parameters:
commandSource- the command source- Returns:
- the platform's command sender/source
-
registerArgumentResolver
Registers the argument valueType to its class valueType- Type Parameters:
T- the valueType parameter for the valueType.- Parameters:
type- the valueType to register to the value-valueType objargumentTypeResolver- the value valueType resolver
-
registerArgumentResolver
Registers the argument valueType resolver- Parameters:
argumentTypeResolver- the value valueType resolver
-
getArgumentType
@NotNull @NotNull com.mojang.brigadier.arguments.ArgumentType<?> getArgumentType(studio.mevera.imperat.command.parameters.CommandParameter<S> parameter) Fetches the argument valueType from the parameter- Parameters:
parameter- the parameter- Returns:
- the
ArgumentTypefor theCommandParameter
-
parseCommandIntoNode
<T> com.mojang.brigadier.tree.LiteralCommandNode<T> parseCommandIntoNode(studio.mevera.imperat.command.Command<S> command) Parses the registeredCommandto brigadier node- Returns:
- the parsed node
-