foundation-0.0.30: Alternative prelude with batteries and no dependencies
LicenseBSD-style
MaintainerVincent Hanquez <vincent@snarc.org>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Foundation.Primitive

Description

 
Synopsis

Documentation

class Eq ty => PrimType ty where #

Associated Types

type PrimSize ty :: Nat #

Methods

primSizeInBytes :: Proxy ty -> CountOf Word8 #

primShiftToBytes :: Proxy ty -> Int #

primBaUIndex :: ByteArray# -> Offset ty -> ty #

primMbaURead :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset ty -> prim ty #

primMbaUWrite :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset ty -> ty -> prim () #

primAddrIndex :: Addr# -> Offset ty -> ty #

primAddrRead :: PrimMonad prim => Addr# -> Offset ty -> prim ty #

primAddrWrite :: PrimMonad prim => Addr# -> Offset ty -> ty -> prim () #

Instances

Instances details
PrimType Char7 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Char7 
Instance details

Defined in Basement.PrimType

type PrimSize Char7 = 1
PrimType Word128 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word128 
Instance details

Defined in Basement.PrimType

type PrimSize Word128 = 16
PrimType Word256 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word256 
Instance details

Defined in Basement.PrimType

type PrimSize Word256 = 32
PrimType NanoSeconds Source # 
Instance details

Defined in Foundation.Time.Types

Associated Types

type PrimSize NanoSeconds 
Instance details

Defined in Foundation.Time.Types

PrimType Seconds Source # 
Instance details

Defined in Foundation.Time.Types

Associated Types

type PrimSize Seconds 
Instance details

Defined in Foundation.Time.Types

type PrimSize Seconds = 8
PrimType CChar 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize CChar 
Instance details

Defined in Basement.PrimType

type PrimSize CChar = 1
PrimType CUChar 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize CUChar 
Instance details

Defined in Basement.PrimType

type PrimSize CUChar = 1
PrimType Int16 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Int16 
Instance details

Defined in Basement.PrimType

type PrimSize Int16 = 2
PrimType Int32 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Int32 
Instance details

Defined in Basement.PrimType

type PrimSize Int32 = 4
PrimType Int64 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Int64 
Instance details

Defined in Basement.PrimType

type PrimSize Int64 = 8
PrimType Int8 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Int8 
Instance details

Defined in Basement.PrimType

type PrimSize Int8 = 1
PrimType Word16 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word16 
Instance details

Defined in Basement.PrimType

type PrimSize Word16 = 2
PrimType Word32 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word32 
Instance details

Defined in Basement.PrimType

type PrimSize Word32 = 4
PrimType Word64 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word64 
Instance details

Defined in Basement.PrimType

type PrimSize Word64 = 8
PrimType Word8 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word8 
Instance details

Defined in Basement.PrimType

type PrimSize Word8 = 1
PrimType Char 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Char 
Instance details

Defined in Basement.PrimType

type PrimSize Char = 4
PrimType Double 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Double 
Instance details

Defined in Basement.PrimType

type PrimSize Double = 8
PrimType Float 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Float 
Instance details

Defined in Basement.PrimType

type PrimSize Float = 4
PrimType Int 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Int 
Instance details

Defined in Basement.PrimType

type PrimSize Int = 8
PrimType Word 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Word 
Instance details

Defined in Basement.PrimType

type PrimSize Word = 8
PrimType a => PrimType (BE a) 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize (BE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (BE a) = PrimSize a

Methods

primSizeInBytes :: Proxy (BE a) -> CountOf Word8 #

primShiftToBytes :: Proxy (BE a) -> Int #

primBaUIndex :: ByteArray# -> Offset (BE a) -> BE a #

primMbaURead :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (BE a) -> prim (BE a) #

primMbaUWrite :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (BE a) -> BE a -> prim () #

primAddrIndex :: Addr# -> Offset (BE a) -> BE a #

primAddrRead :: PrimMonad prim => Addr# -> Offset (BE a) -> prim (BE a) #

primAddrWrite :: PrimMonad prim => Addr# -> Offset (BE a) -> BE a -> prim () #

PrimType a => PrimType (LE a) 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize (LE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (LE a) = PrimSize a

Methods

primSizeInBytes :: Proxy (LE a) -> CountOf Word8 #

primShiftToBytes :: Proxy (LE a) -> Int #

primBaUIndex :: ByteArray# -> Offset (LE a) -> LE a #

primMbaURead :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (LE a) -> prim (LE a) #

primMbaUWrite :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (LE a) -> LE a -> prim () #

primAddrIndex :: Addr# -> Offset (LE a) -> LE a #

primAddrRead :: PrimMonad prim => Addr# -> Offset (LE a) -> prim (LE a) #

primAddrWrite :: PrimMonad prim => Addr# -> Offset (LE a) -> LE a -> prim () #

class (Functor m, Applicative m, Monad m) => PrimMonad (m :: Type -> Type) where #

Associated Types

type PrimState (m :: Type -> Type) #

type PrimVar (m :: Type -> Type) :: Type -> Type #

Methods

primitive :: (State# (PrimState m) -> (# State# (PrimState m), a #)) -> m a #

primThrow :: Exception e => e -> m a #

unPrimMonad :: m a -> State# (PrimState m) -> (# State# (PrimState m), a #) #

primVarNew :: a -> m (PrimVar m a) #

primVarRead :: PrimVar m a -> m a #

primVarWrite :: PrimVar m a -> a -> m () #

Instances

Instances details
PrimMonad IO 
Instance details

Defined in Basement.Monad

Associated Types

type PrimState IO 
Instance details

Defined in Basement.Monad

type PrimVar IO 
Instance details

Defined in Basement.Monad

Methods

primitive :: (State# (PrimState IO) -> (# State# (PrimState IO), a #)) -> IO a #

primThrow :: Exception e => e -> IO a #

unPrimMonad :: IO a -> State# (PrimState IO) -> (# State# (PrimState IO), a #) #

primVarNew :: a -> IO (PrimVar IO a) #

primVarRead :: PrimVar IO a -> IO a #

primVarWrite :: PrimVar IO a -> a -> IO () #

PrimMonad (ST s) 
Instance details

Defined in Basement.Monad

Associated Types

type PrimState (ST s) 
Instance details

Defined in Basement.Monad

type PrimState (ST s) = s
type PrimVar (ST s) 
Instance details

Defined in Basement.Monad

type PrimVar (ST s) = STRef s

Methods

primitive :: (State# (PrimState (ST s)) -> (# State# (PrimState (ST s)), a #)) -> ST s a #

primThrow :: Exception e => e -> ST s a #

unPrimMonad :: ST s a -> State# (PrimState (ST s)) -> (# State# (PrimState (ST s)), a #) #

primVarNew :: a -> ST s (PrimVar (ST s) a) #

primVarRead :: PrimVar (ST s) a -> ST s a #

primVarWrite :: PrimVar (ST s) a -> a -> ST s () #

endianess

class ByteSwap a #

Minimal complete definition

byteSwap

Instances

Instances details
ByteSwap Word16 
Instance details

Defined in Basement.Endianness

Methods

byteSwap :: Word16 -> Word16

ByteSwap Word32 
Instance details

Defined in Basement.Endianness

Methods

byteSwap :: Word32 -> Word32

ByteSwap Word64 
Instance details

Defined in Basement.Endianness

Methods

byteSwap :: Word64 -> Word64

newtype LE a #

Constructors

LE 

Fields

Instances

Instances details
NormalForm a => NormalForm (LE a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: LE a -> () #

PrimMemoryComparable a => PrimMemoryComparable (LE a) 
Instance details

Defined in Basement.PrimType

PrimType a => PrimType (LE a) 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize (LE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (LE a) = PrimSize a

Methods

primSizeInBytes :: Proxy (LE a) -> CountOf Word8 #

primShiftToBytes :: Proxy (LE a) -> Int #

primBaUIndex :: ByteArray# -> Offset (LE a) -> LE a #

primMbaURead :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (LE a) -> prim (LE a) #

primMbaUWrite :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (LE a) -> LE a -> prim () #

primAddrIndex :: Addr# -> Offset (LE a) -> LE a #

primAddrRead :: PrimMonad prim => Addr# -> Offset (LE a) -> prim (LE a) #

primAddrWrite :: PrimMonad prim => Addr# -> Offset (LE a) -> LE a -> prim () #

Storable (LE Word128) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (LE Word128) -> IO (LE Word128) Source #

poke :: Ptr (LE Word128) -> LE Word128 -> IO () Source #

Storable (LE Word256) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (LE Word256) -> IO (LE Word256) Source #

poke :: Ptr (LE Word256) -> LE Word256 -> IO () Source #

Storable (LE Word16) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (LE Word16) -> IO (LE Word16) Source #

poke :: Ptr (LE Word16) -> LE Word16 -> IO () Source #

Storable (LE Word32) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (LE Word32) -> IO (LE Word32) Source #

poke :: Ptr (LE Word32) -> LE Word32 -> IO () Source #

Storable (LE Word64) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (LE Word64) -> IO (LE Word64) Source #

poke :: Ptr (LE Word64) -> LE Word64 -> IO () Source #

StorableFixed (LE Word128) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (LE Word128) -> CountOf Word8 Source #

alignment :: proxy (LE Word128) -> CountOf Word8 Source #

StorableFixed (LE Word256) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (LE Word256) -> CountOf Word8 Source #

alignment :: proxy (LE Word256) -> CountOf Word8 Source #

StorableFixed (LE Word16) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (LE Word16) -> CountOf Word8 Source #

alignment :: proxy (LE Word16) -> CountOf Word8 Source #

StorableFixed (LE Word32) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (LE Word32) -> CountOf Word8 Source #

alignment :: proxy (LE Word32) -> CountOf Word8 Source #

StorableFixed (LE Word64) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (LE Word64) -> CountOf Word8 Source #

alignment :: proxy (LE Word64) -> CountOf Word8 Source #

Bits a => Bits (LE a) 
Instance details

Defined in Basement.Endianness

Methods

(.&.) :: LE a -> LE a -> LE a Source #

(.|.) :: LE a -> LE a -> LE a Source #

xor :: LE a -> LE a -> LE a Source #

complement :: LE a -> LE a Source #

shift :: LE a -> Int -> LE a Source #

rotate :: LE a -> Int -> LE a Source #

zeroBits :: LE a Source #

bit :: Int -> LE a Source #

setBit :: LE a -> Int -> LE a Source #

clearBit :: LE a -> Int -> LE a Source #

complementBit :: LE a -> Int -> LE a Source #

testBit :: LE a -> Int -> Bool Source #

bitSizeMaybe :: LE a -> Maybe Int Source #

bitSize :: LE a -> Int Source #

isSigned :: LE a -> Bool Source #

shiftL :: LE a -> Int -> LE a Source #

unsafeShiftL :: LE a -> Int -> LE a Source #

shiftR :: LE a -> Int -> LE a Source #

unsafeShiftR :: LE a -> Int -> LE a Source #

rotateL :: LE a -> Int -> LE a Source #

rotateR :: LE a -> Int -> LE a Source #

popCount :: LE a -> Int Source #

Show a => Show (LE a) 
Instance details

Defined in Basement.Endianness

Methods

showsPrec :: Int -> LE a -> ShowS Source #

show :: LE a -> String Source #

showList :: [LE a] -> ShowS Source #

Eq a => Eq (LE a) 
Instance details

Defined in Basement.Endianness

Methods

(==) :: LE a -> LE a -> Bool Source #

(/=) :: LE a -> LE a -> Bool Source #

(ByteSwap a, Ord a) => Ord (LE a) 
Instance details

Defined in Basement.Endianness

Methods

compare :: LE a -> LE a -> Ordering Source #

(<) :: LE a -> LE a -> Bool Source #

(<=) :: LE a -> LE a -> Bool Source #

(>) :: LE a -> LE a -> Bool Source #

(>=) :: LE a -> LE a -> Bool Source #

max :: LE a -> LE a -> LE a Source #

min :: LE a -> LE a -> LE a Source #

type PrimSize (LE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (LE a) = PrimSize a

toLE :: ByteSwap a => a -> LE a #

fromLE :: ByteSwap a => LE a -> a #

newtype BE a #

Constructors

BE 

Fields

Instances

Instances details
NormalForm a => NormalForm (BE a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: BE a -> () #

PrimMemoryComparable a => PrimMemoryComparable (BE a) 
Instance details

Defined in Basement.PrimType

PrimType a => PrimType (BE a) 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize (BE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (BE a) = PrimSize a

Methods

primSizeInBytes :: Proxy (BE a) -> CountOf Word8 #

primShiftToBytes :: Proxy (BE a) -> Int #

primBaUIndex :: ByteArray# -> Offset (BE a) -> BE a #

primMbaURead :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (BE a) -> prim (BE a) #

primMbaUWrite :: PrimMonad prim => MutableByteArray# (PrimState prim) -> Offset (BE a) -> BE a -> prim () #

primAddrIndex :: Addr# -> Offset (BE a) -> BE a #

primAddrRead :: PrimMonad prim => Addr# -> Offset (BE a) -> prim (BE a) #

primAddrWrite :: PrimMonad prim => Addr# -> Offset (BE a) -> BE a -> prim () #

Storable (BE Word128) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (BE Word128) -> IO (BE Word128) Source #

poke :: Ptr (BE Word128) -> BE Word128 -> IO () Source #

Storable (BE Word256) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (BE Word256) -> IO (BE Word256) Source #

poke :: Ptr (BE Word256) -> BE Word256 -> IO () Source #

Storable (BE Word16) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (BE Word16) -> IO (BE Word16) Source #

poke :: Ptr (BE Word16) -> BE Word16 -> IO () Source #

Storable (BE Word32) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (BE Word32) -> IO (BE Word32) Source #

poke :: Ptr (BE Word32) -> BE Word32 -> IO () Source #

Storable (BE Word64) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

peek :: Ptr (BE Word64) -> IO (BE Word64) Source #

poke :: Ptr (BE Word64) -> BE Word64 -> IO () Source #

StorableFixed (BE Word128) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (BE Word128) -> CountOf Word8 Source #

alignment :: proxy (BE Word128) -> CountOf Word8 Source #

StorableFixed (BE Word256) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (BE Word256) -> CountOf Word8 Source #

alignment :: proxy (BE Word256) -> CountOf Word8 Source #

StorableFixed (BE Word16) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (BE Word16) -> CountOf Word8 Source #

alignment :: proxy (BE Word16) -> CountOf Word8 Source #

StorableFixed (BE Word32) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (BE Word32) -> CountOf Word8 Source #

alignment :: proxy (BE Word32) -> CountOf Word8 Source #

StorableFixed (BE Word64) Source # 
Instance details

Defined in Foundation.Class.Storable

Methods

size :: proxy (BE Word64) -> CountOf Word8 Source #

alignment :: proxy (BE Word64) -> CountOf Word8 Source #

Bits a => Bits (BE a) 
Instance details

Defined in Basement.Endianness

Methods

(.&.) :: BE a -> BE a -> BE a Source #

(.|.) :: BE a -> BE a -> BE a Source #

xor :: BE a -> BE a -> BE a Source #

complement :: BE a -> BE a Source #

shift :: BE a -> Int -> BE a Source #

rotate :: BE a -> Int -> BE a Source #

zeroBits :: BE a Source #

bit :: Int -> BE a Source #

setBit :: BE a -> Int -> BE a Source #

clearBit :: BE a -> Int -> BE a Source #

complementBit :: BE a -> Int -> BE a Source #

testBit :: BE a -> Int -> Bool Source #

bitSizeMaybe :: BE a -> Maybe Int Source #

bitSize :: BE a -> Int Source #

isSigned :: BE a -> Bool Source #

shiftL :: BE a -> Int -> BE a Source #

unsafeShiftL :: BE a -> Int -> BE a Source #

shiftR :: BE a -> Int -> BE a Source #

unsafeShiftR :: BE a -> Int -> BE a Source #

rotateL :: BE a -> Int -> BE a Source #

rotateR :: BE a -> Int -> BE a Source #

popCount :: BE a -> Int Source #

Show a => Show (BE a) 
Instance details

Defined in Basement.Endianness

Methods

showsPrec :: Int -> BE a -> ShowS Source #

show :: BE a -> String Source #

showList :: [BE a] -> ShowS Source #

Eq a => Eq (BE a) 
Instance details

Defined in Basement.Endianness

Methods

(==) :: BE a -> BE a -> Bool Source #

(/=) :: BE a -> BE a -> Bool Source #

(ByteSwap a, Ord a) => Ord (BE a) 
Instance details

Defined in Basement.Endianness

Methods

compare :: BE a -> BE a -> Ordering Source #

(<) :: BE a -> BE a -> Bool Source #

(<=) :: BE a -> BE a -> Bool Source #

(>) :: BE a -> BE a -> Bool Source #

(>=) :: BE a -> BE a -> Bool Source #

max :: BE a -> BE a -> BE a Source #

min :: BE a -> BE a -> BE a Source #

type PrimSize (BE a) 
Instance details

Defined in Basement.PrimType

type PrimSize (BE a) = PrimSize a

toBE :: ByteSwap a => a -> BE a #

fromBE :: ByteSwap a => BE a -> a #

Integral convertion

class IntegralUpsize a b where #

Methods

integralUpsize :: a -> b #

Instances

Instances details
IntegralUpsize Int16 Int32 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Int16 Int64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Int16 Int 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int16 -> Int #

IntegralUpsize Int32 Int64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Int32 Int 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int32 -> Int #

IntegralUpsize Int8 Int16 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int8 -> Int16 #

IntegralUpsize Int8 Int32 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int8 -> Int32 #

IntegralUpsize Int8 Int64 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int8 -> Int64 #

IntegralUpsize Int8 Int 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int8 -> Int #

IntegralUpsize Word16 Word32 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word16 Word64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word16 Word 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word32 Word64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word32 Word 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Int16 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Int32 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Int64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Word16 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Word32 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Word64 
Instance details

Defined in Basement.IntegralConv

IntegralUpsize Word8 Int 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Word8 -> Int #

IntegralUpsize Word8 Word 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Word8 -> Word #

IntegralUpsize Int Int64 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: Int -> Int64 #

IntegralUpsize Word Word64 
Instance details

Defined in Basement.IntegralConv

IsIntegral a => IntegralUpsize a Integer 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: a -> Integer #

IsNatural a => IntegralUpsize a Natural 
Instance details

Defined in Basement.IntegralConv

Methods

integralUpsize :: a -> Natural #

class IntegralDownsize a b where #

Minimal complete definition

integralDownsizeCheck

Methods

integralDownsize :: a -> b #

integralDownsizeCheck :: a -> Maybe b #

Instances

Instances details
IntegralDownsize Int64 Int16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int64 Int32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int64 Int8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int64 Int 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word16 Word8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word32 Word16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word32 Word8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word64 Word16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word64 Word32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word64 Word8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Int16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Int32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Int64 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Int8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Word16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Word32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Word64 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Word8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Integer Natural 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Natural Word16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Natural Word32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Natural Word64 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Natural Word8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int Int16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int Int32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Int Int8 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word Word16 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word Word32 
Instance details

Defined in Basement.IntegralConv

IntegralDownsize Word Word8 
Instance details

Defined in Basement.IntegralConv

Evaluation

class NormalForm a where #

Methods

toNormalForm :: a -> () #

Instances

Instances details
NormalForm Char7 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Char7 -> () #

NormalForm Word128 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word128 -> () #

NormalForm Word256 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word256 -> () #

NormalForm String 
Instance details

Defined in Basement.UTF8.Base

Methods

toNormalForm :: String -> () #

NormalForm CSV Source # 
Instance details

Defined in Foundation.Format.CSV.Types

Methods

toNormalForm :: CSV -> () #

NormalForm Escaping Source # 
Instance details

Defined in Foundation.Format.CSV.Types

Methods

toNormalForm :: Escaping -> () #

NormalForm Field Source # 
Instance details

Defined in Foundation.Format.CSV.Types

Methods

toNormalForm :: Field -> () #

NormalForm Row Source # 
Instance details

Defined in Foundation.Format.CSV.Types

Methods

toNormalForm :: Row -> () #

NormalForm IPv4 Source # 
Instance details

Defined in Foundation.Network.IPv4

Methods

toNormalForm :: IPv4 -> () #

NormalForm IPv6 Source # 
Instance details

Defined in Foundation.Network.IPv6

Methods

toNormalForm :: IPv6 -> () #

NormalForm UUID Source # 
Instance details

Defined in Foundation.UUID

Methods

toNormalForm :: UUID -> () #

NormalForm CChar 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CChar -> () #

NormalForm CDouble 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CDouble -> () #

NormalForm CFloat 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CFloat -> () #

NormalForm CInt 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CInt -> () #

NormalForm CLLong 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CLLong -> () #

NormalForm CLong 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CLong -> () #

NormalForm CSChar 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CSChar -> () #

NormalForm CShort 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CShort -> () #

NormalForm CUChar 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CUChar -> () #

NormalForm CUInt 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CUInt -> () #

NormalForm CULLong 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CULLong -> () #

NormalForm CULong 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CULong -> () #

NormalForm CUShort 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CUShort -> () #

NormalForm Int16 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Int16 -> () #

NormalForm Int32 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Int32 -> () #

NormalForm Int64 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Int64 -> () #

NormalForm Int8 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Int8 -> () #

NormalForm Word16 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word16 -> () #

NormalForm Word32 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word32 -> () #

NormalForm Word64 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word64 -> () #

NormalForm Word8 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word8 -> () #

NormalForm Integer 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Integer -> () #

NormalForm Natural 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Natural -> () #

NormalForm () 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: () -> () #

NormalForm Bool 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Bool -> () #

NormalForm Char 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Char -> () #

NormalForm Double 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Double -> () #

NormalForm Float 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Float -> () #

NormalForm Int 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Int -> () #

NormalForm Word 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Word -> () #

NormalForm (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

toNormalForm :: Block ty -> () #

NormalForm (Zn n) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Zn n -> () #

NormalForm (Zn64 n) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Zn64 n -> () #

NormalForm a => NormalForm (Array a) 
Instance details

Defined in Basement.BoxedArray

Methods

toNormalForm :: Array a -> () #

NormalForm a => NormalForm (BE a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: BE a -> () #

NormalForm a => NormalForm (LE a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: LE a -> () #

NormalForm (CountOf a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: CountOf a -> () #

NormalForm (Offset a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Offset a -> () #

NormalForm (UArray ty) 
Instance details

Defined in Basement.UArray.Base

Methods

toNormalForm :: UArray ty -> () #

NormalForm (ChunkedUArray ty) Source # 
Instance details

Defined in Foundation.Array.Chunked.Unboxed

Methods

toNormalForm :: ChunkedUArray ty -> () #

NormalForm (Ptr a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Ptr a -> () #

NormalForm a => NormalForm (Maybe a) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Maybe a -> () #

NormalForm a => NormalForm [a] 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: [a] -> () #

NormalForm (BlockN n a) 
Instance details

Defined in Basement.Sized.Block

Methods

toNormalForm :: BlockN n a -> () #

NormalForm a => NormalForm (ListN n a) 
Instance details

Defined in Basement.Sized.List

Methods

toNormalForm :: ListN n a -> () #

NormalForm (UVect n a) 
Instance details

Defined in Basement.Sized.UVect

Methods

toNormalForm :: UVect n a -> () #

NormalForm a => NormalForm (Vect n a) 
Instance details

Defined in Basement.Sized.Vect

Methods

toNormalForm :: Vect n a -> () #

(NormalForm a, NormalForm b) => NormalForm (These a b) 
Instance details

Defined in Basement.These

Methods

toNormalForm :: These a b -> () #

(NormalForm a, NormalForm b) => NormalForm (Tuple2 a b) Source # 
Instance details

Defined in Foundation.Tuple

Methods

toNormalForm :: Tuple2 a b -> () #

(NormalForm l, NormalForm r) => NormalForm (Either l r) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Either l r -> () #

(NormalForm a, NormalForm b) => NormalForm (a, b) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b) -> () #

(NormalForm a, NormalForm b, NormalForm c) => NormalForm (Tuple3 a b c) Source # 
Instance details

Defined in Foundation.Tuple

Methods

toNormalForm :: Tuple3 a b c -> () #

(NormalForm a, NormalForm b, NormalForm c) => NormalForm (a, b, c) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c) -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d) => NormalForm (Tuple4 a b c d) Source # 
Instance details

Defined in Foundation.Tuple

Methods

toNormalForm :: Tuple4 a b c d -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d) => NormalForm (a, b, c, d) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c, d) -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d, NormalForm e) => NormalForm (a, b, c, d, e) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c, d, e) -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d, NormalForm e, NormalForm f) => NormalForm (a, b, c, d, e, f) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c, d, e, f) -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d, NormalForm e, NormalForm f, NormalForm g) => NormalForm (a, b, c, d, e, f, g) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c, d, e, f, g) -> () #

(NormalForm a, NormalForm b, NormalForm c, NormalForm d, NormalForm e, NormalForm f, NormalForm g, NormalForm h) => NormalForm (a, b, c, d, e, f, g, h) 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: (a, b, c, d, e, f, g, h) -> () #

force :: NormalForm a => a -> a #

deepseq :: NormalForm a => a -> b -> b #

These

data These a b #

Constructors

This a 
That b 
These a b 

Instances

Instances details
(NormalForm a, NormalForm b) => NormalForm (These a b) 
Instance details

Defined in Basement.These

Methods

toNormalForm :: These a b -> () #

(Show a, Show b) => Show (These a b) 
Instance details

Defined in Basement.These

Methods

showsPrec :: Int -> These a b -> ShowS Source #

show :: These a b -> String Source #

showList :: [These a b] -> ShowS Source #

(Eq a, Eq b) => Eq (These a b) 
Instance details

Defined in Basement.These

Methods

(==) :: These a b -> These a b -> Bool Source #

(/=) :: These a b -> These a b -> Bool Source #

(Ord a, Ord b) => Ord (These a b) 
Instance details

Defined in Basement.These

Methods

compare :: These a b -> These a b -> Ordering Source #

(<) :: These a b -> These a b -> Bool Source #

(<=) :: These a b -> These a b -> Bool Source #

(>) :: These a b -> These a b -> Bool Source #

(>=) :: These a b -> These a b -> Bool Source #

max :: These a b -> These a b -> These a b Source #

min :: These a b -> These a b -> These a b Source #

From (Either a b) (These a b) 
Instance details

Defined in Basement.From

Methods

from :: Either a b -> These a b

Block of memory

data Block ty #

Instances

Instances details
NormalForm (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

toNormalForm :: Block ty -> () #

PrimType ty => Collection (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Collection

Methods

null :: Block ty -> Bool Source #

length :: Block ty -> CountOf (Element (Block ty)) Source #

elem :: (Eq a, a ~ Element (Block ty)) => Element (Block ty) -> Block ty -> Bool Source #

notElem :: (Eq a, a ~ Element (Block ty)) => Element (Block ty) -> Block ty -> Bool Source #

maximum :: (Ord a, a ~ Element (Block ty)) => NonEmpty (Block ty) -> Element (Block ty) Source #

minimum :: (Ord a, a ~ Element (Block ty)) => NonEmpty (Block ty) -> Element (Block ty) Source #

any :: (Element (Block ty) -> Bool) -> Block ty -> Bool Source #

all :: (Element (Block ty) -> Bool) -> Block ty -> Bool Source #

PrimType ty => Copy (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Copy

Methods

copy :: Block ty -> Block ty Source #

PrimType ty => Fold1able (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Foldable

Methods

foldl1' :: (Element (Block ty) -> Element (Block ty) -> Element (Block ty)) -> NonEmpty (Block ty) -> Element (Block ty) Source #

foldr1 :: (Element (Block ty) -> Element (Block ty) -> Element (Block ty)) -> NonEmpty (Block ty) -> Element (Block ty) Source #

PrimType ty => Foldable (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Foldable

Methods

foldl' :: (a -> Element (Block ty) -> a) -> a -> Block ty -> a Source #

foldr :: (Element (Block ty) -> a -> a) -> a -> Block ty -> a Source #

foldr' :: (Element (Block ty) -> a -> a) -> a -> Block ty -> a Source #

PrimType ty => IndexedCollection (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Indexed

Methods

(!) :: Block ty -> Offset (Element (Block ty)) -> Maybe (Element (Block ty)) Source #

findIndex :: (Element (Block ty) -> Bool) -> Block ty -> Maybe (Offset (Element (Block ty))) Source #

PrimType ty => Sequential (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Sequential

Methods

take :: CountOf (Element (Block ty)) -> Block ty -> Block ty Source #

revTake :: CountOf (Element (Block ty)) -> Block ty -> Block ty Source #

drop :: CountOf (Element (Block ty)) -> Block ty -> Block ty Source #

revDrop :: CountOf (Element (Block ty)) -> Block ty -> Block ty Source #

splitAt :: CountOf (Element (Block ty)) -> Block ty -> (Block ty, Block ty) Source #

revSplitAt :: CountOf (Element (Block ty)) -> Block ty -> (Block ty, Block ty) Source #

splitOn :: (Element (Block ty) -> Bool) -> Block ty -> [Block ty] Source #

break :: (Element (Block ty) -> Bool) -> Block ty -> (Block ty, Block ty) Source #

breakEnd :: (Element (Block ty) -> Bool) -> Block ty -> (Block ty, Block ty) Source #

breakElem :: Element (Block ty) -> Block ty -> (Block ty, Block ty) Source #

takeWhile :: (Element (Block ty) -> Bool) -> Block ty -> Block ty Source #

dropWhile :: (Element (Block ty) -> Bool) -> Block ty -> Block ty Source #

intersperse :: Element (Block ty) -> Block ty -> Block ty Source #

intercalate :: Element (Block ty) -> Block ty -> Element (Block ty) Source #

span :: (Element (Block ty) -> Bool) -> Block ty -> (Block ty, Block ty) Source #

spanEnd :: (Element (Block ty) -> Bool) -> Block ty -> (Block ty, Block ty) Source #

filter :: (Element (Block ty) -> Bool) -> Block ty -> Block ty Source #

partition :: (Element (Block ty) -> Bool) -> Block ty -> (Block ty, Block ty) Source #

reverse :: Block ty -> Block ty Source #

uncons :: Block ty -> Maybe (Element (Block ty), Block ty) Source #

unsnoc :: Block ty -> Maybe (Block ty, Element (Block ty)) Source #

snoc :: Block ty -> Element (Block ty) -> Block ty Source #

cons :: Element (Block ty) -> Block ty -> Block ty Source #

find :: (Element (Block ty) -> Bool) -> Block ty -> Maybe (Element (Block ty)) Source #

sortBy :: (Element (Block ty) -> Element (Block ty) -> Ordering) -> Block ty -> Block ty Source #

singleton :: Element (Block ty) -> Block ty Source #

head :: NonEmpty (Block ty) -> Element (Block ty) Source #

last :: NonEmpty (Block ty) -> Element (Block ty) Source #

tail :: NonEmpty (Block ty) -> Block ty Source #

init :: NonEmpty (Block ty) -> Block ty Source #

replicate :: CountOf (Element (Block ty)) -> Element (Block ty) -> Block ty Source #

isPrefixOf :: Block ty -> Block ty -> Bool Source #

isSuffixOf :: Block ty -> Block ty -> Bool Source #

isInfixOf :: Block ty -> Block ty -> Bool Source #

stripPrefix :: Block ty -> Block ty -> Maybe (Block ty) Source #

stripSuffix :: Block ty -> Block ty -> Maybe (Block ty) Source #

PrimType ty => Monoid (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

mempty :: Block ty Source #

mappend :: Block ty -> Block ty -> Block ty Source #

mconcat :: [Block ty] -> Block ty Source #

PrimType ty => Semigroup (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

(<>) :: Block ty -> Block ty -> Block ty Source #

sconcat :: NonEmpty (Block ty) -> Block ty Source #

stimes :: Integral b => b -> Block ty -> Block ty Source #

Data ty => Data (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Block ty -> c (Block ty) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Block ty) Source #

toConstr :: Block ty -> Constr Source #

dataTypeOf :: Block ty -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Block ty)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Block ty)) Source #

gmapT :: (forall b. Data b => b -> b) -> Block ty -> Block ty Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Block ty -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Block ty -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Block ty -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Block ty -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Block ty -> m (Block ty) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Block ty -> m (Block ty) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Block ty -> m (Block ty) Source #

PrimType ty => IsList (Block ty) 
Instance details

Defined in Basement.Block.Base

Associated Types

type Item (Block ty) 
Instance details

Defined in Basement.Block.Base

type Item (Block ty) = ty

Methods

fromList :: [Item (Block ty)] -> Block ty Source #

fromListN :: Int -> [Item (Block ty)] -> Block ty Source #

toList :: Block ty -> [Item (Block ty)] Source #

(PrimType ty, Show ty) => Show (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

showsPrec :: Int -> Block ty -> ShowS Source #

show :: Block ty -> String Source #

showList :: [Block ty] -> ShowS Source #

(PrimType ty, Eq ty) => Eq (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

(==) :: Block ty -> Block ty -> Bool Source #

(/=) :: Block ty -> Block ty -> Bool Source #

(PrimType ty, Ord ty) => Ord (Block ty) 
Instance details

Defined in Basement.Block.Base

Methods

compare :: Block ty -> Block ty -> Ordering Source #

(<) :: Block ty -> Block ty -> Bool Source #

(<=) :: Block ty -> Block ty -> Bool Source #

(>) :: Block ty -> Block ty -> Bool Source #

(>=) :: Block ty -> Block ty -> Bool Source #

max :: Block ty -> Block ty -> Block ty Source #

min :: Block ty -> Block ty -> Block ty Source #

Indexable (Block Word8) Word64 
Instance details

Defined in Basement.Block

PrimType ty => Indexable (Block ty) ty 
Instance details

Defined in Basement.Block

Methods

index :: Block ty -> Offset ty -> ty

Cast (Block a) (Block Word8) 
Instance details

Defined in Basement.Cast

Methods

cast :: Block a -> Block Word8

PrimType ty => From (Block ty) (UArray ty) 
Instance details

Defined in Basement.From

Methods

from :: Block ty -> UArray ty

PrimType ty => From (Array ty) (Block ty) 
Instance details

Defined in Basement.From

Methods

from :: Array ty -> Block ty

PrimType ty => From (UArray ty) (Block ty) 
Instance details

Defined in Basement.From

Methods

from :: UArray ty -> Block ty

(NatWithinBound (CountOf ty) n, KnownNat n, PrimType ty) => TryFrom (Block ty) (BlockN n ty) 
Instance details

Defined in Basement.From

Methods

tryFrom :: Block ty -> Maybe (BlockN n ty)

From (BlockN n ty) (Block ty) 
Instance details

Defined in Basement.From

Methods

from :: BlockN n ty -> Block ty

type Element (Block ty) Source # 
Instance details

Defined in Foundation.Collection.Element

type Element (Block ty) = ty
type Item (Block ty) 
Instance details

Defined in Basement.Block.Base

type Item (Block ty) = ty

data MutableBlock ty st #

Instances

Instances details
PrimType ty => MutableCollection (MutableBlock ty) Source # 
Instance details

Defined in Foundation.Collection.Mutable

Associated Types

type MutableFreezed (MutableBlock ty) 
Instance details

Defined in Foundation.Collection.Mutable

type MutableKey (MutableBlock ty) 
Instance details

Defined in Foundation.Collection.Mutable

type MutableValue (MutableBlock ty) 
Instance details

Defined in Foundation.Collection.Mutable

type MutableValue (MutableBlock ty) = ty
(PrimMonad prim, st ~ PrimState prim, PrimType ty) => RandomAccess (MutableBlock ty st) prim ty 
Instance details

Defined in Basement.Block

Methods

read :: MutableBlock ty st -> Offset ty -> prim ty

write :: MutableBlock ty st -> Offset ty -> ty -> prim ()

type MutableFreezed (MutableBlock ty) Source # 
Instance details

Defined in Foundation.Collection.Mutable

type MutableKey (MutableBlock ty) Source # 
Instance details

Defined in Foundation.Collection.Mutable

type MutableValue (MutableBlock ty) Source # 
Instance details

Defined in Foundation.Collection.Mutable

type MutableValue (MutableBlock ty) = ty

Ascii

data Char7 #

Instances

Instances details
NormalForm Char7 
Instance details

Defined in Basement.NormalForm

Methods

toNormalForm :: Char7 -> () #

PrimType Char7 
Instance details

Defined in Basement.PrimType

Associated Types

type PrimSize Char7 
Instance details

Defined in Basement.PrimType

type PrimSize Char7 = 1
Arbitrary Char7 Source # 
Instance details

Defined in Foundation.Check.Arbitrary

Show Char7 
Instance details

Defined in Basement.Types.Char7

Eq Char7 
Instance details

Defined in Basement.Types.Char7

Methods

(==) :: Char7 -> Char7 -> Bool Source #

(/=) :: Char7 -> Char7 -> Bool Source #

Ord Char7 
Instance details

Defined in Basement.Types.Char7

type NatNumMaxBound Char7 
Instance details

Defined in Basement.Nat

type NatNumMaxBound Char7 = 127
type PrimSize Char7 
Instance details

Defined in Basement.PrimType

type PrimSize Char7 = 1

data AsciiString #

Instances

Instances details
Arbitrary AsciiString Source # 
Instance details

Defined in Foundation.Check.Arbitrary

Collection AsciiString Source # 
Instance details

Defined in Foundation.Collection.Collection

Sequential AsciiString Source # 
Instance details

Defined in Foundation.Collection.Sequential

Methods

take :: CountOf (Element AsciiString) -> AsciiString -> AsciiString Source #

revTake :: CountOf (Element AsciiString) -> AsciiString -> AsciiString Source #

drop :: CountOf (Element AsciiString) -> AsciiString -> AsciiString Source #

revDrop :: CountOf (Element AsciiString) -> AsciiString -> AsciiString Source #

splitAt :: CountOf (Element AsciiString) -> AsciiString -> (AsciiString, AsciiString) Source #

revSplitAt :: CountOf (Element AsciiString) -> AsciiString -> (AsciiString, AsciiString) Source #

splitOn :: (Element AsciiString -> Bool) -> AsciiString -> [AsciiString] Source #

break :: (Element AsciiString -> Bool) -> AsciiString -> (AsciiString, AsciiString) Source #

breakEnd :: (Element AsciiString -> Bool) -> AsciiString -> (AsciiString, AsciiString) Source #

breakElem :: Element AsciiString -> AsciiString -> (AsciiString, AsciiString) Source #

takeWhile :: (Element AsciiString -> Bool) -> AsciiString -> AsciiString Source #

dropWhile :: (Element AsciiString -> Bool) -> AsciiString -> AsciiString Source #

intersperse :: Element AsciiString -> AsciiString -> AsciiString Source #

intercalate :: Element AsciiString -> AsciiString -> Element AsciiString Source #

span :: (Element AsciiString -> Bool) -> AsciiString -> (AsciiString, AsciiString) Source #

spanEnd :: (Element AsciiString -> Bool) -> AsciiString -> (AsciiString, AsciiString) Source #

filter :: (Element AsciiString -> Bool) -> AsciiString -> AsciiString Source #

partition :: (Element AsciiString -> Bool) -> AsciiString -> (AsciiString, AsciiString) Source #

reverse :: AsciiString -> AsciiString Source #

uncons :: AsciiString -> Maybe (Element AsciiString, AsciiString) Source #

unsnoc :: AsciiString -> Maybe (AsciiString, Element AsciiString) Source #

snoc :: AsciiString -> Element AsciiString -> AsciiString Source #

cons :: Element AsciiString -> AsciiString -> AsciiString Source #

find :: (Element AsciiString -> Bool) -> AsciiString -> Maybe (Element AsciiString) Source #

sortBy :: (Element AsciiString -> Element AsciiString -> Ordering) -> AsciiString -> AsciiString Source #

singleton :: Element AsciiString -> AsciiString Source #

head :: NonEmpty AsciiString -> Element AsciiString Source #

last :: NonEmpty AsciiString -> Element AsciiString Source #

tail :: NonEmpty AsciiString -> AsciiString Source #

init :: NonEmpty AsciiString -> AsciiString Source #

replicate :: CountOf (Element AsciiString) -> Element AsciiString -> AsciiString Source #

isPrefixOf :: AsciiString -> AsciiString -> Bool Source #

isSuffixOf :: AsciiString -> AsciiString -> Bool Source #

isInfixOf :: AsciiString -> AsciiString -> Bool Source #

stripPrefix :: AsciiString -> AsciiString -> Maybe AsciiString Source #

stripSuffix :: AsciiString -> AsciiString -> Maybe AsciiString Source #

Zippable AsciiString Source # 
Instance details

Defined in Foundation.Collection.Zippable

Methods

zipWith :: (Sequential a, Sequential b) => (Element a -> Element b -> Element AsciiString) -> a -> b -> AsciiString Source #

zipWith3 :: (Sequential a, Sequential b, Sequential c) => (Element a -> Element b -> Element c -> Element AsciiString) -> a -> b -> c -> AsciiString Source #

zipWith4 :: (Sequential a, Sequential b, Sequential c, Sequential d) => (Element a -> Element b -> Element c -> Element d -> Element AsciiString) -> a -> b -> c -> d -> AsciiString Source #

zipWith5 :: (Sequential a, Sequential b, Sequential c, Sequential d, Sequential e) => (Element a -> Element b -> Element c -> Element d -> Element e -> Element AsciiString) -> a -> b -> c -> d -> e -> AsciiString Source #

zipWith6 :: (Sequential a, Sequential b, Sequential c, Sequential d, Sequential e, Sequential f) => (Element a -> Element b -> Element c -> Element d -> Element e -> Element f -> Element AsciiString) -> a -> b -> c -> d -> e -> f -> AsciiString Source #

zipWith7 :: (Sequential a, Sequential b, Sequential c, Sequential d, Sequential e, Sequential f, Sequential g) => (Element a -> Element b -> Element c -> Element d -> Element e -> Element f -> Element g -> Element AsciiString) -> a -> b -> c -> d -> e -> f -> g -> AsciiString Source #

Monoid AsciiString 
Instance details

Defined in Basement.Types.AsciiString

Semigroup AsciiString 
Instance details

Defined in Basement.Types.AsciiString

IsString AsciiString 
Instance details

Defined in Basement.Types.AsciiString

IsList AsciiString 
Instance details

Defined in Basement.Types.AsciiString

Associated Types

type Item AsciiString 
Instance details

Defined in Basement.Types.AsciiString

Show AsciiString 
Instance details

Defined in Basement.Types.AsciiString

Eq AsciiString 
Instance details

Defined in Basement.Types.AsciiString

Ord AsciiString 
Instance details

Defined in Basement.Types.AsciiString

From AsciiString String 
Instance details

Defined in Basement.From

Methods

from :: AsciiString -> String

From AsciiString (UArray Word8) 
Instance details

Defined in Basement.From

type Element AsciiString Source # 
Instance details

Defined in Foundation.Collection.Element

type Item AsciiString 
Instance details

Defined in Basement.Types.AsciiString