Data.Type.BitRecords.Arithmetic

type family Rem (x :: Nat) (y :: Nat) :: Nat where ...

type family RemImpl (x :: Nat) (y :: nat) (acc :: Nat) :: Nat where ...

type RemPow2 x p

type TakeLastN n xs

type family TakeLastNImplRev (n :: Nat) (xs :: [t]) (acc :: [t]) :: [t] where ...

type family TakeLastNImplTakeNRev (n :: Nat) (rs :: [t]) (acc :: [t]) :: [t] where ...

type RemPow2Bits

type Div x y

type family DivImpl (x :: Nat) (y :: nat) (acc :: Nat) :: Nat where ...

Bit manipulation

type family TestHighBit (x :: Nat) (n :: Nat) :: Bool where ...

type ToBits x n

type family ToBits_ (x :: Nat) (n :: Nat) (started :: Bool) :: [Bool] where ...

type family ToBitsInner (highBitSet :: Bool) (x :: Nat) (n :: Nat) (started :: Bool) :: [Bool] where ...

type FromBits bits

type family FromBits_ (bits :: [Bool]) (acc :: Nat) :: Nat where ...

type family ShiftBitsR (bits :: [Bool]) (n :: Nat) :: [Bool] where ...

type family GetMostSignificantBitIndex (highestBit :: Nat) (n :: Nat) :: Nat where ...

type family ShiftR (xMaxBits :: Nat) (x :: Nat) (bits :: Nat) :: Nat where ...