Option<T extends Object> class sealed

A Monad that represents an optional value: every Option is either Some and contains a value, or None and does not.

Inheritance
Available extensions

Constructors

Option.from(T? value)
Creates an Option from a nullable value.
factory
Option.fromNullable(T? value)
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
props List<Object?>
The list of properties that will be used to determine whether two instances are equal.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stringify bool?
If set to true, the toString method will be overridden to output this instance's props.
no setterinherited
value Object
finalinherited

Methods

asOption() Option<T>
Returns this as a base Option type.
asVoid() Option<void>
Transforms the contained value to void.
override
end() → void
Suppresses the linter error must_use_monad.
override
filter(bool noFuturesAllowed(T value)) Option<T>
Returns None if the predicate noFuturesAllowed returns false. Otherwise, returns the original Option.
flatMap<R extends Object>(Option<R> noFuturesAllowed(T value)) Option<R>
Maps an Option<T> to Option<R> by applying a function that returns another Option.
flatten() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<Option<Option<T>>>>>>>>>, provided by the FlattenOption9 extension

flatten() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<Option<T>>>>>>>>, provided by the FlattenOption8 extension

flatten() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<T>>>>>>>, provided by the FlattenOption7 extension

flatten() Option<T>

Available on Option<Option<Option<Option<Option<Option<T>>>>>>, provided by the FlattenOption6 extension

flatten() Option<T>

Available on Option<Option<Option<Option<Option<T>>>>>, provided by the FlattenOption5 extension

flatten() Option<T>

Available on Option<Option<T>>, provided by the FlattenOption2 extension

flatten() Option<T>

Available on Option<Option<Option<T>>>, provided by the FlattenOption3 extension

flatten() Option<T>

Available on Option<Option<Option<Option<T>>>>, provided by the FlattenOption4 extension

flatten2() Option<T>

Available on Option<Option<T>>, provided by the FlattenOption2 extension

flatten3() Option<T>

Available on Option<Option<Option<T>>>, provided by the FlattenOption3 extension

flatten4() Option<T>

Available on Option<Option<Option<Option<T>>>>, provided by the FlattenOption4 extension

flatten5() Option<T>

Available on Option<Option<Option<Option<Option<T>>>>>, provided by the FlattenOption5 extension

flatten6() Option<T>

Available on Option<Option<Option<Option<Option<Option<T>>>>>>, provided by the FlattenOption6 extension

flatten7() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<T>>>>>>>, provided by the FlattenOption7 extension

flatten8() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<Option<T>>>>>>>>, provided by the FlattenOption8 extension

flatten9() Option<T>

Available on Option<Option<Option<Option<Option<Option<Option<Option<Option<T>>>>>>>>>, provided by the FlattenOption9 extension

fold(Option<Object>? onSome(Some<T> some), Option<Object>? onNone(None<T> none)) Result<Option<Object>>
Folds the two cases of this Option into a single Result.
ifNone(void noFuturesAllowed()) Result<Option<T>>
Performs a side-effect if this is a None.
ifSome(void noFuturesAllowed(Some<T> some)) Result<Option<T>>
Performs a side-effect with the contained value if this is a Some.
isNone() bool
Returns true if this Option is a None.
isSome() bool
Returns true if this Option is a Some.
map<R extends Object>(R noFuturesAllowed(T value)) Option<R>
Transforms the contained value using the mapper function noFuturesAllowed while preserving the Monad's structure.
override
map10<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>, provided by the MapMonad10 extension

map11<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>, provided by the MapMonad11 extension

map12<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>, provided by the MapMonad12 extension

map13<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>, provided by the MapMonad13 extension

map14<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>>, provided by the MapMonad14 extension

map15<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>>>, provided by the MapMonad15 extension

map16<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>>>>, provided by the MapMonad16 extension

map17<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>>>>>, provided by the MapMonad17 extension

map18<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>>>>>>>>>>, provided by the MapMonad18 extension

map2<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Object>>, provided by the MapMonad2 extension

map3<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Object>>>, provided by the MapMonad3 extension

map4<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Object>>>>, provided by the MapMonad4 extension

map5<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Object>>>>>, provided by the MapMonad5 extension

map6<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>, provided by the MapMonad6 extension

map7<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>, provided by the MapMonad7 extension

map8<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>, provided by the MapMonad8 extension

map9<R extends Object>(R mapper(T)) TReduced<Object>

Available on Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Monad<Object>>>>>>>>>, provided by the MapMonad9 extension

mapSome(Some<T> noFuturesAllowed(Some<T> some)) Option<T>
Transforms the inner Some instance if this is a Some.
none() Result<None<T>>
Safely gets the None instance. Returns an Ok on None, or an Err on Some.
noneOr(Option<T> other) Option<T>
Returns this if it's None, otherwise returns the other Option.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
orNull() → T?
Returns the contained value or null.
reduce<R extends Object>() Resolvable<Option<R>>
Reduces the monad to a Resolvable of an Option of type R.
inherited
some() Result<Some<T>>
Safely gets the Some instance. Returns an Ok on Some, or an Err on None.
someOr(Option<T> other) Option<T>
Returns this if it's Some, otherwise returns the other Option.
swap() Ok<Option<T>>

Available on Option<Ok<T>>, provided by the OptionOkSwapX extension

swap() Some<Option<T>>

Available on Option<Some<T>>, provided by the OptionSomeSwapX extension

swap() Result<Option<T>>

Available on Option<Result<T>>, provided by the OptionResultSwapX extension

swap() Resolvable<Option<T>>

Available on Option<Resolvable<T>>, provided by the OptionResolvableSwapX extension

swap() Sync<Option<T>>

Available on Option<Sync<T>>, provided by the OptionSyncSwapX extension

swap() Async<Option<T>>

Available on Option<Async<T>>, provided by the OptionAsyncSwapX extension

swap() Err<Option<T>>

Available on Option<Err<T>>, provided by the OptionErrSwapX extension

swap() None<Option<T>>

Available on Option<None<T>>, provided by the OptionNoneSwapX extension

toString() String
A string representation of this object.
inherited
toUnit() Monad<Unit>

Available on Monad<Object>, provided by the ToUnitOnObjectMonad extension

toUnit() Option<Unit>

Available on Option<Object>, provided by the ToUnitOnObjectOption extension

transf<R extends Object>([R noFuturesAllowed(T e)?]) Result<Option<R>>
Transforms the Monad's generic type from T to R.
override
unwrap() → T
Unsafely returns the contained value. Throws Err the Monad is an Err or None.
override
unwrapOr(T fallback) → T
Returns the contained value, or the fallback if the Monad is in an Err or None state.
override
wrapAsync() Async<Option<T>>
Wraps this Monad in an Async.
override
wrapOk() Ok<Option<T>>
Wraps this Monad in an Ok.
override
wrapResolvable() Resolvable<Option<T>>
Wraps this Monad in a Resolvable.
override
wrapSome() Some<Option<T>>
Wraps this Monad in a Some.
override
wrapSync() Sync<Option<T>>
Wraps this Monad in a Sync.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

zip2<T1 extends Object, T2 extends Object>(Option<T1> o1, Option<T2> o2) Option<(T1, T2)>
Combines 2 Option monads into 1 containing a tuple of their values if all are Some.
zip3<T1 extends Object, T2 extends Object, T3 extends Object>(Option<T1> o1, Option<T2> o2, Option<T3> o3) Option<(T1, T2, T3)>
Combines 3 Option monads into 1 containing a tuple of their values if all are Some.