@Override
    public <R> AsyncFetcher<R> map(MapperFunction4<T1, T2, T3, T4, R> mapFn) {
      ReactiveMapper4<T1, T2, T3, T4> delegate = new ReactiveMapper4<>(query, session);
      return AsyncFetcherDelegate.fromReactive(delegate.map(mapFn));
    }
Default implementation for various asynchronous mappers and their utilities
criteria/common/src/org/immutables/criteria/repository/async/AsyncMappers.java