Type.BST

BST, Record and Union

Data Types

data BST a

data family Record s

data family Union s

Conversion

class Fromlistable as

class Fromsumable as

class Foldable t

tolist

tosum

type family Tolist t :: [*]

Accessible

class Accessible t key

at

proj

inj

(!)

class AccessibleF f t key

smap

supdate

adjust

update

(<$*>)

class Contains t key a

class ContainedBy key a t

Searchable

class Searchable t key a

(!?)

class SearchableF f t key a

supdateX

adjustX

updateX

(<$*?>)

Unioncasable

class Unioncasable t t' res

unioncase

class UnioncasableX t t' res

Inclusion

class Includes t t'

class IncludedBy t t'

shrink

expand

Balancing

class Balanceable t

Metamorphosis

class Metamorphosable f t t'

Merging

class Mergeable t t'

Insertion

class Insertable t key

Deletion

class Deletable t key

Min and Max

class Minnable t

findmin

deletemin

class Maxable t

findmax

deletemax

Item

data Item key a

type (|>)

type With key

newkey

item

(|>)

List

data family List as

(.:.)

Sum

data family Sum as

Comparison

type family Compare a b :: Ordering

data LargestK

data SmallestK

type family CompareUser a b :: Ordering

Showtype

class Showtype a