Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- class LiftedPrim a where
- elemSizeLifted :: Proxy a -> Int
- indexByteArrayLiftedInBytes :: ByteArray -> Int -> a
- indexByteArrayLiftedInElems :: ByteArray -> Int -> a
- writeByteArrayLiftedInBytes :: PrimMonad m => a -> MutableByteArray (PrimState m) -> Int -> m ()
- writeByteArrayLiftedInElems :: PrimMonad m => a -> MutableByteArray (PrimState m) -> Int -> m ()
- newtype LiftedPrimArray a = LiftedPrimArray {}
- newtype MutableLiftedPrimArray m a = MutableLiftedPrimArray {}
- emptyLiftedPrimArray :: LiftedPrimArray a
- indexLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int -> a
- writeLiftedPrimArray :: (LiftedPrim a, PrimMonad m) => a -> MutableLiftedPrimArray (PrimState m) a -> Int -> m ()
- freezeLiftedPrimArray :: PrimMonad m => MutableLiftedPrimArray (PrimState m) a -> Int -> Int -> m (LiftedPrimArray a)
- thawLiftedPrimArray :: PrimMonad m => LiftedPrimArray a -> Int -> Int -> m (MutableLiftedPrimArray (PrimState m) a)
- unsafeFreezeLiftedPrimArray :: PrimMonad m => MutableLiftedPrimArray (PrimState m) a -> m (LiftedPrimArray a)
- unsafeThawLiftedPrimArray :: PrimMonad m => LiftedPrimArray a -> m (MutableLiftedPrimArray (PrimState m) a)
- liftedPrimArrayFromListN :: LiftedPrim a => Int -> [a] -> LiftedPrimArray a
- liftedPrimArrayFromList :: LiftedPrim a => [a] -> LiftedPrimArray a
- generateLiftedPrimArray :: LiftedPrim a => Int -> (Int -> a) -> LiftedPrimArray a
- sizeofLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int
- cloneLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int -> Int -> LiftedPrimArray a
Documentation
class LiftedPrim a where Source #
This is a stripped-down version of Prim
that is possible for a human to implement.
It's all about reading and writing structures from byte arrays.
elemSizeLifted :: Proxy a -> Int Source #
indexByteArrayLiftedInBytes :: ByteArray -> Int -> a Source #
indexByteArrayLiftedInElems :: ByteArray -> Int -> a Source #
writeByteArrayLiftedInBytes :: PrimMonad m => a -> MutableByteArray (PrimState m) -> Int -> m () Source #
writeByteArrayLiftedInElems :: PrimMonad m => a -> MutableByteArray (PrimState m) -> Int -> m () Source #
Instances
newtype LiftedPrimArray a Source #
Instances
newtype MutableLiftedPrimArray m a Source #
Instances
Eq (MutableLiftedPrimArray m a) Source # | |
Defined in Dahdit.LiftedPrim (==) :: MutableLiftedPrimArray m a -> MutableLiftedPrimArray m a -> Bool # (/=) :: MutableLiftedPrimArray m a -> MutableLiftedPrimArray m a -> Bool # |
indexLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int -> a Source #
writeLiftedPrimArray :: (LiftedPrim a, PrimMonad m) => a -> MutableLiftedPrimArray (PrimState m) a -> Int -> m () Source #
freezeLiftedPrimArray :: PrimMonad m => MutableLiftedPrimArray (PrimState m) a -> Int -> Int -> m (LiftedPrimArray a) Source #
thawLiftedPrimArray :: PrimMonad m => LiftedPrimArray a -> Int -> Int -> m (MutableLiftedPrimArray (PrimState m) a) Source #
unsafeFreezeLiftedPrimArray :: PrimMonad m => MutableLiftedPrimArray (PrimState m) a -> m (LiftedPrimArray a) Source #
unsafeThawLiftedPrimArray :: PrimMonad m => LiftedPrimArray a -> m (MutableLiftedPrimArray (PrimState m) a) Source #
liftedPrimArrayFromListN :: LiftedPrim a => Int -> [a] -> LiftedPrimArray a Source #
liftedPrimArrayFromList :: LiftedPrim a => [a] -> LiftedPrimArray a Source #
generateLiftedPrimArray :: LiftedPrim a => Int -> (Int -> a) -> LiftedPrimArray a Source #
sizeofLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int Source #
cloneLiftedPrimArray :: LiftedPrim a => LiftedPrimArray a -> Int -> Int -> LiftedPrimArray a Source #