Any
Any is a Monoid that will combine (2) values of any type using logical
disjunction (OR) on their coerced Boolean values, mapping truthy values
to true and falsy values to false.
- Source
- Runkit
Implements#
Setoid, Semigroup, Monoid
Construction#
Any is constructed by calling the constructor with any type a. This will
return an Any wrapping the provided value, coerced to a Boolean. For
example, providing an non-empty String will result in an Any(true). While
passing an empty String results in an Any(false).
- Source
- Runkit
Constructor Methods#
empty#
empty provides the identity for the Monoid in that when the value it
provides is concated to any other value, it will return the other value. In
the case of Any the result of empty is false. empty is available on both
the Constructor and the Instance for convenience.
- Source
- Runkit
Instance Methods#
equals#
Used to compare the underlying values of (2) Any instances for equality by
value, equals takes any given argument and returns true if the passed argument
is an Any with an underlying value equal to the underlying value of
the Any the method is being called on. If the passed argument is not
an Any or the underlying values are not equal, equals will return false.
- Source
- Runkit
concat#
concat is used to combine (2) Semigroups of the same type under an operation
specified by the Semigroup. In the case of Any, it will combine the (2)
using logical OR (disjunction).
- Source
- Runkit
valueOf#
valueOf is used on all crocks Monoids as a means of extraction. While the
extraction is available, types that implement valueOf are not necessarily
a Comonad. This function is used primarily for convenience for some of the
helper functions that ship with crocks. Calling valueOf on an Any instance
will result in the underlying Boolean value.
- Source
- Runkit