@Override
        public Iterable<? extends CommandNodeWithParent> successors(CommandNodeWithParent ctx) {
            CommandNode<CommandSourceStack> node = ctx.node;
            Collection<CommandNodeWithParent> successors = new ArrayList<>();

            for (CommandNode<CommandSourceStack> child : node.getChildren()) {
                successors.add(new CommandNodeWithParent(ctx, child));
            }

            return successors;
        }
A {@link Graph} to represent the brigadier command node tree.
forge/src/main/java/me/lucko/luckperms/forge/util/BrigadierInjector.java