public static final class Maybe.Lazy<T> extends java.lang.Object implements Maybe<T>
Maybe.Just<T>, Maybe.Lazy<T>, Maybe.Nothing<T>ApplicativeFunctor.Applicatives, ApplicativeFunctor.ApplyFunctions<T>Value.ValueImpl<T>Convertable.SupplierToConvertable<T>| Constructor and Description |
|---|
Lazy() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object obj) |
Maybe<T> |
filter(java.util.function.Predicate<? super T> test)
Keep only elements for which the supplied predicates hold
e.g.
|
<R> Maybe<R> |
flatMap(java.util.function.Function<? super T,? extends MonadicValue<? extends R>> mapper)
A flattening transformation operation (@see
Optional.flatMap(Function) |
<R> Maybe.Lazy<R> |
flatMapIterable(java.util.function.Function<? super T,? extends java.lang.Iterable<? extends R>> mapper)
A flattening transformation operation that takes the first value from the returned Iterable.
|
<R> Maybe.Lazy<R> |
flatMapPublisher(java.util.function.Function<? super T,? extends org.reactivestreams.Publisher<? extends R>> mapper)
A flattening transformation operation that takes the first value from the returned Publisher.
|
T |
get() |
int |
hashCode() |
boolean |
isPresent() |
<R> Maybe<R> |
map(java.util.function.Function<? super T,? extends R> mapper)
Transform this functor using the supplied transformation function
|
T |
orElse(T value)
Get the contained value or else the provided alternative
|
T |
orElseGet(java.util.function.Supplier<? extends T> value)
An equivalent operation to
Optional.orElseGet(Supplier)
Returns a value generated by the provided Supplier if this Convertable is empty or
contains a null value. |
Maybe<T> |
recover(java.util.function.Supplier<T> value) |
Maybe<T> |
recover(T value) |
Maybe<T> |
resolve() |
java.lang.String |
toString() |
<R> R |
visit(java.util.function.Function<? super T,? extends R> some,
java.util.function.Supplier<? extends R> none)
The provided function is executed with the value stored in this Visitable if one is present,
otherwise the provided Supplier is executed instead.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitaccumulateJust, accumulateJust, accumulateJust, cast, coflatMap, combine, combine, combineEager, filterNot, forEach2, forEach2, forEach3, forEach3, forEach4, forEach4, fromEval, fromEvalNullable, fromEvalOf, fromEvalOptional, fromIterable, fromOptional, fromPublisher, just, narrow, nest, none, notNull, of, ofNullable, ofType, patternMatch, peek, sequence, sequence, sequenceJust, toMaybe, trampoline, unit, zip, zip, zip, zip, zip, zip, zipanyMapplyFunctionscollect, fold, fold, generate, iterate, iterator, mapReduce, mkString, newSubscriber, stream, subscribe, test, toDequeX, toEvalAlways, toEvalLater, toEvalNow, toFeatureToggle, toFutureStream, toFutureStream, toIor, toLazyImmutable, toList, toListX, toMutable, toPBagX, toPOrderedSetX, toPQueueX, toPSetX, toPStackX, toPVectorX, toQueueX, toSetX, toSimpleReact, toSimpleReact, toSortedSetX, toTry, toTry, toTry, toXor, toXor, unapplyendsWith, endsWithIterable, findAny, findFirst, firstValue, foldable, foldRight, foldRight, foldRight, foldRightMapToType, get, groupBy, join, join, join, mapReduce, print, print, printErr, printOut, reduce, reduce, reduce, reduce, reduce, reduce, reduce, schedule, scheduleFixedDelay, scheduleFixedRate, single, single, singleOptional, startsWith, startsWithIterable, toConcurrentLazyCollection, toConcurrentLazyStreamable, toLazyCollection, validate, xMatchcollect, fromSupplier, orElseThrow, toAtomicReference, toCompletableFuture, toCompletableFutureAsync, toCompletableFutureAsync, toFutureW, toFutureWAsync, toFutureWAsync, toOptional, toOptionalAtomicReference, toStreamiterator, toOptionalmatchespublic <R> Maybe<R> map(java.util.function.Function<? super T,? extends R> mapper)
Functor
of(1,2,3).map(i->i*2)
//[2,4,6]
public <R> Maybe<R> flatMap(java.util.function.Function<? super T,? extends MonadicValue<? extends R>> mapper)
MonadicValueOptional.flatMap(Function)
Eval.now(1).map(i->i+2).flatMap(i->Eval.later(()->i*3);
//Eval[9]
public Maybe<T> filter(java.util.function.Predicate<? super T> test)
Filterable
of(1,2,3).filter(i->i>2);
//[3]
filter in interface Maybe<T>filter in interface Filterable<T>filter in interface MonadicValue<T>test - to filter elements by, retaining matchespublic <R> R visit(java.util.function.Function<? super T,? extends R> some, java.util.function.Supplier<? extends R> none)
Visitablevisit in interface Matchable.MatchableOptional<T>visit in interface Matchable.ValueAndOptionalMatcher<T>visit in interface Maybe<T>visit in interface Convertable<T>visit in interface Visitable<T>some - Function to execute if this Visitable has a valuenone - Supplier to execute if this Visitable does not have a Valuepublic java.lang.String toString()
toString in class java.lang.Objectpublic T get()
get in interface Convertable<T>get in interface java.util.function.Supplier<T>public boolean isPresent()
public T orElse(T value)
ConvertableorElse in interface Convertable<T>public T orElseGet(java.util.function.Supplier<? extends T> value)
ConvertableOptional.orElseGet(Supplier)
Returns a value generated by the provided Supplier if this Convertable is empty or
contains a null value.orElseGet in interface Convertable<T>value - Supplier to generate value if this convertable is emptypublic int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic <R> Maybe.Lazy<R> flatMapIterable(java.util.function.Function<? super T,? extends java.lang.Iterable<? extends R>> mapper)
MonadicValue
Maybe.just(1).map(i->i+2).flatMapIterable(i->Arrays.asList(()->i*3,20);
//Maybe[9]
flatMapIterable in interface Maybe<T>flatMapIterable in interface MonadicValue<T>mapper - transformation functionpublic <R> Maybe.Lazy<R> flatMapPublisher(java.util.function.Function<? super T,? extends org.reactivestreams.Publisher<? extends R>> mapper)
MonadicValue
FutureW.ofResult(1).map(i->i+2).flatMapPublisher(i->Flux.just(()->i*3,20);
//FutureW[9]
flatMapPublisher in interface Maybe<T>flatMapPublisher in interface MonadicValue<T>mapper - transformation function