either library
Classes
-
Either<A, B>
-
Either is a type representing one of two possible values, A or B.
This class is part of the Either type system used in functional programming.
-
EitherEq<A, B>
-
Defines equality for instances of
Either.
-
EitherOrd<A, B>
-
A class that extends
Ord to provide a custom ordering for Either values.
-
Left<A, B>
-
Left is a subclass of Either indicating that the value is of type A.
It encapsulates or "wraps" that value.
-
Right<A, B>
-
Right is a subclass of Either indicating that the value is of type B.
It encapsulates or "wraps" that value.
Properties
-
chain
→ Either<A, C> Function(Either<A, B>) Function<A, B, C>(Either<A, C> fn(B))
-
Alias for flatMap.
final
-
chainFirst
→ TapFunction<A, B> Function<A, B>(void f(B))
-
Alias for tap.
final
-
fold
→ C Function(Either<A, B>) Function<A, B, C>(C onLeft(A), C onRight(B))
-
Alias for match.
final
-
right
→ Either<A, B> Function<A, B>(B value)
-
An alias for
of, used to wrap the given value in a Right.
final
Functions
-
ap<A, B, C>(Either<A, B Function(C)> fnEither)
→ Either<A, B> Function(Either<A, C>)
-
Applies a function inside an
Either to a value inside another Either.
-
flatMap<A, B, C>(Either<A, C> fn(B))
→ Either<A, C> Function(Either<A, B>)
-
FlatMaps over the
Either type.
-
fromOption<A, B>(A leftValue())
→ Either<A, B> Function(Option<B> option)
-
A function that takes a function that produces a leftValue and returns a function that
converts an Option into an
Either that is Left with the provided value if the option is None,
and Right with the value from Some if the option is Some.
-
fromPredicate<A, B>(Predicate<B> predicate, A leftValue())
→ Either<A, B> Function(B value)
-
A function that takes a predicate and a function that produces a leftValue.
It returns a function that takes a value and returns an
Either that is Right with the provided
value if the predicate returns true for this value, and Left with the provided value if the predicate
returns false.
-
getEq<A, B>(Eq<A> leftEq, Eq<B> rightEq)
→ Eq<Either<A, B>>
-
Returns an
Eq for Either<A, B>, given an Eq<A> and Eq<B>.
-
getOrd<A, B>(Ord<A> leftOrd, Ord<B> rightOrd)
→ Ord<Either<A, B>>
-
Returns an Ord instance for comparing
Either values based on the provided
orderings for the Left and Right types.
-
getOrElse<A, B>(B defaultFunction())
→ B Function(Either<A, B>)
-
Returns a function that, when provided with an
Either<A, B>,
will yield the value inside if it's a Right,
or the result of the defaultFunction if it's a Left.
-
left<A, B>(A value)
→ Either<A, B>
-
Wraps the given
value in a Left, indicating the presence of a value of type A.
-
map<A, B, C>(C fn(B))
→ Either<A, C> Function(Either<A, B> either)
-
Maps over the
Either type.
-
match<A, B, C>(C onLeft(A), C onRight(B))
→ C Function(Either<A, B>)
-
Matches an Either<A, B> to execute a function based on its Left or Right value.
Using Dart's pattern matching, the match function provides an expressive
and concise way to handle
Either values without manual type checks.
-
matchW<A, B, C, D>(D onLeft(A), D onRight(B))
→ D Function(Either<A, B>)
-
Matches the given Either value and returns the result of the respective handler.
-
of<A, B>(B value)
→ Either<A, B>
-
Wraps the given
value in a Right, indicating the presence of a value of type B.
-
sequenceList<E, A>(ImmutableList<Either<E, A>> list)
→ Either<E, ImmutableList<A>>
-
Takes an
ImmutableList of Either values and attempts to extract their right-hand values.
-
swap<A, B>(Either<A, B> either)
→ Either<B, A>
-
Swaps the inner types of an
Either value.
-
tap<A, B>(void f(B))
→ TapFunction<A, B>
-
Takes an Either<A, B> and applies a function to the Right value if it exists.
The tap function is often used for debugging or performing side effects.
-
traverseList<E, A, B>(Either<E, B> f(A), ImmutableList<A> list)
→ Either<E, ImmutableList<B>>
-
Processes each item of an
ImmutableList through a function f that returns an Either,
and collects the results into a new ImmutableList.