Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Arithmetic.Unsafe
Synopsis
- newtype Nat (n :: Nat) = Nat {}
- newtype Nat# :: Nat -> TYPE 'IntRep where
- newtype Fin# :: Nat -> TYPE 'IntRep where
- newtype MaybeFin# :: Nat -> TYPE 'IntRep where
- newtype Fin32# :: Nat -> TYPE 'Int32Rep where
- newtype (<#) :: Nat -> Nat -> TYPE ('TupleRep '[]) where
- newtype (<=#) :: Nat -> Nat -> TYPE ('TupleRep '[]) where
- data (<) :: Nat -> Nat -> Type where
- data (<=) :: Nat -> Nat -> Type where
- data (:=:) :: Nat -> Nat -> Type where
- newtype (:=:#) :: Nat -> Nat -> TYPE ('TupleRep '[]) where
Documentation
newtype Fin# :: Nat -> TYPE 'IntRep where Source #
Finite numbers without the overhead of carrying around a proof.
newtype MaybeFin# :: Nat -> TYPE 'IntRep where Source #
Either a Fin#
or Nothing. Internally, this uses negative
one to mean Nothing.
newtype Fin32# :: Nat -> TYPE 'Int32Rep where Source #
Variant of Fin#
that only allows 32-bit integers.
data (<) :: Nat -> Nat -> Type where infix 4 Source #
Proof that the first argument is strictly less than the second argument.
data (<=) :: Nat -> Nat -> Type where infix 4 Source #
Proof that the first argument is less than or equal to the second argument.