~/bend-docscommunity

src/class.bend checks

raw source on the hub · import 0x5f97f469d15c04a181dae0e4e64e1d3d/src/class.bend as Class

1 import
import Base

Types

type Ord source · line 15 · raw

@-A:Data -> Type

a total order: a relation and a decision that returns the side that holds

type Semigroup source · line 29 · raw

@-A:Data -> Type

an associative operation

type Group source · line 47 · raw

@-A:Data -> Type

addition and subtraction that undo each other (wrapping integers)

Definitions

def Ord.R source · line 18 · raw

@-A:Data -> @d:Ord<A> -> @x:A -> @y:A -> Type

def Ord.dec source · line 23 · raw

@-A:Data -> @d:Ord<A> -> @x:A -> @y:A -> Or(Ord.R(A, d, x, y), Ord.R(A, d, y, x))

def Semigroup.op source · line 32 · raw

@-A:Data -> @d:Semigroup<A> -> @x:A -> @y:A -> A

def Semigroup.assoc source · line 41 · raw

@-A:Data -> @d:Semigroup<A> -> @x:A -> @y:A -> @z:A -> {Semigroup.op(A, d, x, Semigroup.op(A, d, y, z)) == Semigroup.op(A, d, Semigroup.op(A, d, x, y), z) : A}

def Group.add source · line 52 · raw

@-A:Data -> @d:Group<A> -> @a:A -> @b:A -> A

def Group.sub source · line 57 · raw

@-A:Data -> @d:Group<A> -> @a:A -> @b:A -> A

def Group.sub_add source · line 62 · raw

@-A:Data -> @d:Group<A> -> @a:A -> @b:A -> {a == Group.sub(A, d, Group.add(A, d, a, b), b) : A}

def Group.add_sub source · line 67 · raw

@-A:Data -> @d:Group<A> -> @a:A -> @b:A -> {a == Group.add(A, d, Group.sub(A, d, a, b), b) : A}

Templates

template Semigroup.fn source · line 38 · raw

@-A:Data -> @-d:Semigroup<A> -> @x:A -> @y:A -> A

op as a template function, for Base's templates (List.foldr, List.foldl)