Idris2Doc : Data.Enum

Data.Enum

(source)

Reexports

importpublic Data.Finite
importpublic Data.List.Elem
importpublic Data.Prim.Bits32
importpublic Decidable.HDecEq

Definitions

recordIndex : Bits32->Type
Totality: total
Visibility: public export
Constructor: 
I : (val : Bits32) -> {auto0_ : val<n} ->Indexn

Projections:
0.prf : ({rec:0} : Indexn) ->val{rec:0}<n
.val : Indexn->Bits32

Hints:
Cast (Indexn) Integer
Cast (Indexn) Bits32
Eq (Indexn)
Ord (Indexn)
Show (Indexn)
.val : Indexn->Bits32
Totality: total
Visibility: public export
val : Indexn->Bits32
Totality: total
Visibility: public export
0.prf : ({rec:0} : Indexn) ->val{rec:0}<n
Totality: total
Visibility: public export
0prf : ({rec:0} : Indexn) ->val{rec:0}<n
Totality: total
Visibility: public export
tryIndex : Bits32->Maybe (Indexr)
Totality: total
Visibility: export
fromInteger : (n : Integer) -> {auto0_ : castn<r} ->Indexr
Totality: total
Visibility: public export
Zero : {auto0_ : 0<n} ->Indexn
Totality: total
Visibility: public export
0ltProof : (v : Bits32) -> {auto0_ : v<n} ->lt (castv) (castn) =True
Totality: total
Visibility: export
toFin : Indexn->Fin (castn)
Totality: total
Visibility: export
interfaceEnum : Type->Bits32->Type
  Verified enumerations.

Provides a function for converting a value of the given type to an
`Index n` of the given size.

In addition, proves that `Finite.value` holds every value there is and
that `toIndex` is injective.

With these proofs we can use a value of type `t` as an index into a
(potentially dependent) array.

Parameters: t, n
Constraints: Finite t
Constructor: 
MkEnum

Methods:
toIndex : t->Indexn
0toIndexInjective : (x : t) -> (y : t) ->toIndexx=toIndexy->x=y
0valuesComplete : (x : t) ->Elemxvalues

Implementations:
EnumBool2
EnumOrdering3
toIndex : Enumtn=>t->Indexn
Totality: total
Visibility: public export
0toIndexInjective : {auto__con : Enumtn} -> (x : t) -> (y : t) ->toIndexx=toIndexy->x=y
Totality: total
Visibility: public export
0valuesComplete : {auto__con : Enumtn} -> (x : t) ->Elemxvalues
Totality: total
Visibility: public export
enumToFin : Enumtn=>t->Fin (castn)
Totality: total
Visibility: export
enumToBits32 : Enumtn=>t->Bits32
Totality: total
Visibility: export
enumToInteger : Enumtn=>t->Integer
Totality: total
Visibility: export
inList : HDecEqi=>i->Listi->Bool
Totality: total
Visibility: public export
0inListImpliesElem : {auto{conArg:9856} : HDecEqi} -> (v : i) ->inListvis=True->Elemvis
Totality: total
Visibility: export