Semigroup<T> mixin

A semigroup is any set A with an associative operation (combine).

(xy)z = x(yz) = xyz for all x, y, z in A

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

combine(T x, T y) → T
Associative operation which combines two values.
combineN(T a, int n) → T
Return a combined with itself n times.
intercalate(T middle) Semigroup<T>
Return a Semigroup which inserts middle between each pair of elements.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reverse() Semigroup<T>
Return a Semigroup that reverses the order.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

first<A>() Semigroup<A>
Create a Semigroup instance that always returns the lefthand side.
instance<A>(A f(A a1, A a2)) Semigroup<A>
Create a Semigroup instance from the given function.
last<A>() Semigroup<A>
Create a Semigroup instance that always returns the righthand side.