@API(status = API.Status.STABLE)
        public <T> @NonNull Builder<C> required(
                final @NonNull CloudKey<T> name,
                final @NonNull ParserDescriptor<? super C, T> parser
        ) {
            return this.argument(CommandComponent.<C, T>builder(name, parser).build());
        }
Adds the given required argument to the command.

@param name   the name of the argument
@param parser the parser
@param <T>    the type produced by the parser
@return new builder instance with the command argument inserted into the argument list
cloud-core/src/main/java/org/incendo/cloud/Command.java