Semigroupoid

trait Semigroupoid[A]

A semigroupoid is any set A with a partial binary associative operation (partialOp), which is associative in the following sense: if f,g,h are elements of the semigroupoid such that either:

(i) f |+|? g is defined and g |+|? h is defined
(ii) f |+|? g is defined and (f |+|? g).get |+|? h is defined
(iii) g |+|? h is defined and f |+|? (g |+|? h).get is defined

then all of f |+|? g, g |+|? h, (f |+|? g).get |+|? h, f |+|? (g |+|? h).get are defined and
((f |+|? g).get |+|?  h).get = (f |+|? (g |+|? h).get).get
Companion
object
class Any
trait Groupoid[A]
class IterableGroupoid[A, SA]

Value members

Abstract methods

def partialOp(x: A, y: A): Opt[A]

Concrete methods

def opIsDefined(x: A, y: A): Boolean