Interface BrigadierNodeFactory<C,S,N extends com.mojang.brigadier.tree.CommandNode<S>>

All Known Implementing Classes:
LiteralBrigadierNodeFactory

@API(status=INTERNAL, consumers="org.incendo.cloud.brigadier.*") public interface BrigadierNodeFactory<C,S,N extends com.mojang.brigadier.tree.CommandNode<S>>
  • Method Details

    • createNode

      @NonNull N createNode(@NonNull String label, @NonNull CommandNode<C> cloudCommand, @NonNull com.mojang.brigadier.Command<S> executor, @NonNull BrigadierPermissionChecker<C> permissionChecker)
      Creates a Brigadier command node.
      Parameters:
      label - the command label
      cloudCommand - the cloud command to create the node from
      executor - the Brigadier command execution handler
      permissionChecker - function that determines whether a sender has access to the command
      Returns:
      the created command node
    • createNode

      @NonNull N createNode(@NonNull String label, @NonNull Command<C> cloudCommand, @NonNull com.mojang.brigadier.Command<S> executor, @NonNull BrigadierPermissionChecker<C> permissionChecker)
      Creates a Brigadier command node.
      Parameters:
      label - the command label
      cloudCommand - the cloud command
      executor - the Brigadier command execution handler
      permissionChecker - function that determines whether a sender has access to the command
      Returns:
      the created command node
    • createNode

      @NonNull N createNode(@NonNull String label, @NonNull Command<C> cloudCommand, @NonNull com.mojang.brigadier.Command<S> executor)
      Creates a Brigadier command node.
      Parameters:
      label - the command label
      cloudCommand - the cloud command
      executor - the Brigadier command execution handler
      Returns:
      the created command node