Skip to content

OptionTuple4Ops<T1, T2, T3, T4>

extension OptionTuple4Ops<T1, T2, T3, T4> on Option<Record>

Provides additional functions on an Option of a 4 element tuple.

Methods

filterN() extension

Option<Record> filterN(bool Function(T1, T2, T3, T4) p)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
Option<(T1, T2, T3, T4)> filterN(Function4<T1, T2, T3, T4, bool> p) => filter(p.tupled);

filterNotN() extension

Option<Record> filterNotN(bool Function(T1, T2, T3, T4) p)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
Option<(T1, T2, T3, T4)> filterNotN(Function4<T1, T2, T3, T4, bool> p) => filterNot(p.tupled);

flatMapN() extension

Option<T5> flatMapN<T5>(Option<T5> Function(T1, T2, T3, T4) f)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
Option<T5> flatMapN<T5>(Function4<T1, T2, T3, T4, Option<T5>> f) => flatMap(f.tupled);

foldN() extension

T5 foldN<T5>(T5 Function() ifEmpty, T5 Function(T1, T2, T3, T4) ifSome)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
T5 foldN<T5>(
  Function0<T5> ifEmpty,
  Function4<T1, T2, T3, T4, T5> ifSome,
) => fold(ifEmpty, ifSome.tupled);

foreachN() extension

void foreachN(void Function(T1, T2, T3, T4) ifSome)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
void foreachN(Function4<T1, T2, T3, T4, void> ifSome) => foreach(ifSome.tupled);

mapN() extension

Option<T5> mapN<T5>(T5 Function(T1, T2, T3, T4) f)

Available on Option<A>, provided by the OptionTuple4Ops<T1, T2, T3, T4> extension

Implementation
dart
Option<T5> mapN<T5>(Function4<T1, T2, T3, T4, T5> f) => map(f.tupled);