public class DataMapperFunctionMapper extends Object
This class implements an obtuse way of avoiding autoboxing and M:N type mapping complexity by way of doublish dispatch. It was preferred over a more generalized reflection and annotation-based approach. If it gets too verbose, (for some definition of "too"), then it may be refactored.
The primary goal of this approach is to allow for primitive-level lambdas when function are composed together. This will allow for significant performance gains when there are only a few steps in a composed function which are non-primitive, which is the general case.
Composition should be supported between all primitive functions for types listed in TypeMap, as well as generic functions, with generic functions as the last resort.
| Constructor and Description |
|---|
DataMapperFunctionMapper() |
| Modifier and Type | Method and Description |
|---|---|
static <R> DataMapper<R> |
map(DoubleFunction<R> f) |
static DataMapper<Integer> |
map(DoubleToIntFunction f) |
static DataMapper<Long> |
map(DoubleToLongFunction f) |
static DataMapper<Double> |
map(DoubleUnaryOperator f) |
static <R> DataMapper<R> |
map(Function<Long,R> f) |
static <R> DataMapper<R> |
map(IntFunction<R> f) |
static DataMapper<Long> |
map(IntToDoubleFunction f) |
static DataMapper<Long> |
map(IntToLongFunction f) |
static DataMapper<Integer> |
map(IntUnaryOperator f) |
static <R> DataMapper<R> |
map(LongFunction<R> f) |
static DataMapper<Double> |
map(LongToDoubleFunction f) |
static DataMapper<Integer> |
map(LongToIntFunction f) |
static DataMapper<Long> |
map(LongUnaryOperator f) |
static <T> DataMapper<T> |
map(Object function) |
public static <T> DataMapper<T> map(Object function)
public static <R> DataMapper<R> map(DoubleFunction<R> f)
public static DataMapper<Integer> map(DoubleToIntFunction f)
public static DataMapper<Long> map(DoubleToLongFunction f)
public static DataMapper<Double> map(DoubleUnaryOperator f)
public static <R> DataMapper<R> map(IntFunction<R> f)
public static DataMapper<Long> map(IntToDoubleFunction f)
public static DataMapper<Long> map(IntToLongFunction f)
public static DataMapper<Integer> map(IntUnaryOperator f)
public static DataMapper<Double> map(LongToDoubleFunction f)
public static DataMapper<Integer> map(LongToIntFunction f)
public static DataMapper<Long> map(LongUnaryOperator f)
public static <R> DataMapper<R> map(LongFunction<R> f)
public static <R> DataMapper<R> map(Function<Long,R> f)
Copyright © 2018. All rights reserved.