binrep-1.1.0: src/Binrep/Util/ByteOrder.hs
module Binrep.Util.ByteOrder
( ByteOrder(..), ByteOrdered(..), type EndianSuffix
, type LE, type BE, type Endian
) where
import Raehik.Compat.Data.Primitive.Types.Endian ( ByteOrdered(..) )
import GHC.ByteOrder ( ByteOrder(..) )
import GHC.TypeLits ( type Symbol )
-- shorter names I originally used
type LE = LittleEndian
type BE = BigEndian
type Endian = ByteOrdered
type family EndianSuffix (end :: ByteOrder) :: Symbol where
EndianSuffix LittleEndian = "LE"
EndianSuffix BigEndian = "BE"