Skip to content

OptionTuple3Ops<T1, T2, T3>

extension OptionTuple3Ops<T1, T2, T3> on Option<Record>

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

Methods

filterN() extension

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

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

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

filterNotN() extension

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

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

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

flatMapN() extension

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

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

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

foldN() extension

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

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

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

foreachN() extension

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

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

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

mapN() extension

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

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

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