struct
Monads::LeftException(T)
- Monads::LeftException(T)
- Monads::Either(Exception, T)
- Monads::Monad(T)
- Monads::Functor(T)
- Struct
- Value
- Object
Included Modules
Defined in:
monads/either.crConstructors
Instance Method Summary
-
#<=>(other : LeftException)
The comparison operator.
-
#<=>(other : Left)
The comparison operator.
-
#<=>(other : Right)
The comparison operator.
-
#<=>(other : Either)
The comparison operator.
- #bind(lambda : T -> _) : LeftException(T)
- #fmap(lambda : T -> U) : LeftException(U) forall U
- #fold(right_fn : T -> U, left_fn : Exception -> U) forall U
- #map_or(default : U, lambda : _ -> _) forall U
- #or(other : Either)
- #or(other : Exception -> _)
- #value! : Exception
- #value_or(other : Exception -> _)
- #value_or(other : U) forall U
Instance methods inherited from module Monads::Leftable(Exception, T)
bind(lambda : T -> _) : Leftable(E, T)
bind,
fmap(lambda : T -> U) : Leftable(E, U) forall U
fmap,
map_or(default : U, lambda : _ -> _) forall U
map_or,
or(other : Either)or(other : E -> _) or, value_or(other : E -> _)
value_or(other : U) forall U value_or
Instance methods inherited from struct Monads::Either(Exception, T)
<=>(other : Right)<=>(other : Left) <=>, fold(right_fn : T -> U, left_fn : E -> U) forall U
fold(&block : T -> U) forall U fold, inspect(io) inspect, left? left?, map_or(default : U, lambda : T -> U) forall U map_or, or(other : Either)
or(other : E -> U) forall U
or(&block : E -> U) forall U or, right? right?, to_s to_s, value! : E | T value!, value_or(other : U) forall U
value_or(other : E -> U) forall U
value_or(&block : E -> U) forall U value_or
Constructor methods inherited from struct Monads::Either(Exception, T)
new
new
Class methods inherited from struct Monads::Either(Exception, T)
return(value : T) : Right(Nil, T) forall T
return
Instance methods inherited from struct Monads::Monad(T)
>>(other : Monad(U)) forall U
>>,
|(other : _ -> Monad(U)) forall U
|,
bind(lambda : T -> Monad(U)) forall Ubind(&block : T -> Monad(U)) forall U bind
Constructor methods inherited from struct Monads::Monad(T)
new
new,
return(v : T) : self
return
Instance methods inherited from struct Monads::Functor(T)
fmap(lambda : T -> U)fmap(&block : T -> U) forall U fmap, initialize initialize
Constructor methods inherited from struct Monads::Functor(T)
new
new
Constructor Detail
Instance Method Detail
The comparison operator. Returns 0 if the two objects are equal,
a negative number if this object is considered less than other,
a positive number if this object is considered greater than other,
or nil if the two objects are not comparable.
Subclasses define this method to provide class-specific ordering.
The comparison operator is usually used to sort values:
# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]
# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]
The comparison operator. Returns 0 if the two objects are equal,
a negative number if this object is considered less than other,
a positive number if this object is considered greater than other,
or nil if the two objects are not comparable.
Subclasses define this method to provide class-specific ordering.
The comparison operator is usually used to sort values:
# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]
# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]
The comparison operator. Returns 0 if the two objects are equal,
a negative number if this object is considered less than other,
a positive number if this object is considered greater than other,
or nil if the two objects are not comparable.
Subclasses define this method to provide class-specific ordering.
The comparison operator is usually used to sort values:
# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]
# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]
The comparison operator. Returns 0 if the two objects are equal,
a negative number if this object is considered less than other,
a positive number if this object is considered greater than other,
or nil if the two objects are not comparable.
Subclasses define this method to provide class-specific ordering.
The comparison operator is usually used to sort values:
# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]
# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]