Idris2Doc : TypeAligned.TwoThree

TypeAligned.TwoThree

(source)
Type primarily for internal usage holding either two or three relationships.
Used internally to provide fast append, even for when the meeting point is "ragged".

Reexports

importpublic TypeAligned.Duo
importpublic TypeAligned.Trio

Definitions

0TwoThree : Rela->Rela
  Utility type for 2-3 tree/list nesting

Totality: total
Visibility: public export
twice : pxy-@ (pyz-@TwoThreepxz)
  Convenience constructor

Totality: total
Visibility: export
two : pxy->pyz->TwoThreepxz
  Convenience constructor, unrestricted

Totality: total
Visibility: export
thrice : pwx-@ (pxy-@ (pyz-@TwoThreepwz))
  Convenience constructor

Totality: total
Visibility: export
three : pwx->pxy->pyz->TwoThreepwz
  Convenience constructor, unrestricted

Totality: total
Visibility: export
0.x : TwoThreepwz->a
  Synthetic accessor; first (or only) meeting index

Totality: total
Visibility: export
0.y : TwoThreepwz->a
  Synthetic accessor; last (or only) meeting index

Totality: total
Visibility: export
.head : (tt : TwoThreepwz) ->pw (tt.x)
  Synthetic accessor

Totality: total
Visibility: export
head : (tt : TwoThreepwz) ->pw (tt.x)
  Synthetic accessor

Totality: total
Visibility: export
tail : (tt : TwoThreepwz) ->Sump (Duop) (tt.x) z
  Drop first relationship

Totality: total
Visibility: export
.last : (tt : TwoThreepwz) ->p (tt.y) z
  Synthetic accessor

Totality: total
Visibility: export
last : (tt : TwoThreepwz) ->p (tt.y) z
  Synthetic accessor

Totality: total
Visibility: export
init : (tt : TwoThreepwz) ->Sump (Duop) w (tt.y)
  Drop last relationship

Totality: total
Visibility: export
mapReduceOnce : {0f : a->b} -> {0q : Relb} ->pxy-@q (fx) (fy) ->qxy-@ (qyz-@qxz) ->TwoThreepxy-@q (fx) (fy)
  Reduce while changing inner relation

Totality: total
Visibility: export
mapOnce : {0f : a->b} ->pxy-@q (fx) (fy) ->TwoThreepxy-@TwoThreeq (fx) (fy)
  Linear 'map'

Totality: total
Visibility: export
mapReduce : {0f : a->b} -> {0q : Relb} -> (pxy->q (fx) (fy)) -> (qxy->qyz->qxz) ->TwoThreepxy->q (fx) (fy)
  Reduce while changing inner relation

Totality: total
Visibility: export
map : {0f : a->b} -> (pxy->q (fx) (fy)) ->TwoThreepxy->TwoThreeq (fx) (fy)
  Change inner relation

Totality: total
Visibility: export
reduceOnce : pxy-@ (pyz-@pxz) ->TwoThreepxy-@pxy
  Linear 'reduce'

Totality: total
Visibility: export
reduce : (pxy->pyz->pxz) ->TwoThreepxy->pxy
  Reduce to inner relation

Totality: total
Visibility: export