@Override
    public <S2 extends Suggestion> @NonNull SuggestionFactory<C, S2> mapped(final @NonNull SuggestionMapper<S2> mapper) {
        return new DelegatingSuggestionFactory<>(
                this.commandManager,
                this.commandTree,
                this.contextFactory,
                this.executionCoordinator,
                this.mapper.then(mapper)
        );
    }
Creates a new {@link DelegatingSuggestionFactory}.

@param commandManager       the command manager
@param commandTree          the command tree
@param contextFactory       the context factory
@param executionCoordinator the execution coordinator
@param mapper               the suggestion mapper
cloud-core/src/main/java/org/incendo/cloud/suggestion/DelegatingSuggestionFactory.java