MonoidLaw

trait MonoidLaw extends SemigroupLaw

Monoid instances must satisfy scalaz.Semigroup.SemigroupLaw and 2 additional laws:

  • '''left identity''': forall a. append(zero, a) == a
  • '''right identity''' : forall a. append(a, zero) == a
class Object
trait Matchable
class Any

Value members

Concrete methods

def leftIdentity(a: F)(implicit F: Equal[F]): Boolean
def rightIdentity(a: F)(implicit F: Equal[F]): Boolean

Inherited methods

def associative(f1: F, f2: F, f3: F)(implicit F: Equal[F]): Boolean
Inherited from
SemigroupLaw
def unfoldlSumOptConsistency[S](s: S, f: S => Maybe[(S, F)])(implicit E: Equal[F]): Boolean
Inherited from
SemigroupLaw
def unfoldrSumOptConsistency[S](s: S, f: S => Maybe[(F, S)])(implicit E: Equal[F]): Boolean
Inherited from
SemigroupLaw