PrimitiveArray-0.10.1.1: Efficient multidimensional arrays
Safe HaskellNone
LanguageHaskell2010

Data.PrimitiveArray.Index.Unit

Description

Unit indices admit a single element to be memoized. We can't use () because we want to attach phantom types.

Documentation

data Unit t Source #

Constructors

Unit 

Instances

Instances details
Vector Vector (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) (Unit t) -> m (Vector (Unit t)) #

basicUnsafeThaw :: PrimMonad m => Vector (Unit t) -> m (Mutable Vector (PrimState m) (Unit t)) #

basicLength :: Vector (Unit t) -> Int #

basicUnsafeSlice :: Int -> Int -> Vector (Unit t) -> Vector (Unit t) #

basicUnsafeIndexM :: Monad m => Vector (Unit t) -> Int -> m (Unit t) #

basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) (Unit t) -> Vector (Unit t) -> m () #

elemseq :: Vector (Unit t) -> Unit t -> b -> b #

MVector MVector (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

basicLength :: MVector s (Unit t) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (Unit t) -> MVector s (Unit t) #

basicOverlaps :: MVector s (Unit t) -> MVector s (Unit t) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Unit t)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (Unit t) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Unit t -> m (MVector (PrimState m) (Unit t)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Unit t) -> Int -> m (Unit t) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Unit t) -> Int -> Unit t -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (Unit t) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (Unit t) -> Unit t -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Unit t) -> MVector (PrimState m) (Unit t) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Unit t) -> MVector (PrimState m) (Unit t) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Unit t) -> Int -> m (MVector (PrimState m) (Unit t)) #

Eq (LimitType (Unit t)) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

(==) :: LimitType (Unit t) -> LimitType (Unit t) -> Bool #

(/=) :: LimitType (Unit t) -> LimitType (Unit t) -> Bool #

Read (LimitType (Unit t)) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Show (LimitType (Unit t)) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

showsPrec :: Int -> LimitType (Unit t) -> ShowS #

show :: LimitType (Unit t) -> String #

showList :: [LimitType (Unit t)] -> ShowS #

Generic (LimitType (Unit t)) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Associated Types

type Rep (LimitType (Unit t)) :: Type -> Type #

Methods

from :: LimitType (Unit t) -> Rep (LimitType (Unit t)) x #

to :: Rep (LimitType (Unit t)) x -> LimitType (Unit t) #

Eq (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

(==) :: Unit t -> Unit t -> Bool #

(/=) :: Unit t -> Unit t -> Bool #

Ord (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

compare :: Unit t -> Unit t -> Ordering #

(<) :: Unit t -> Unit t -> Bool #

(<=) :: Unit t -> Unit t -> Bool #

(>) :: Unit t -> Unit t -> Bool #

(>=) :: Unit t -> Unit t -> Bool #

max :: Unit t -> Unit t -> Unit t #

min :: Unit t -> Unit t -> Unit t #

Read (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Show (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

showsPrec :: Int -> Unit t -> ShowS #

show :: Unit t -> String #

showList :: [Unit t] -> ShowS #

Generic (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Associated Types

type Rep (Unit t) :: Type -> Type #

Methods

from :: Unit t -> Rep (Unit t) x #

to :: Rep (Unit t) x -> Unit t #

Arbitrary (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

arbitrary :: Gen (Unit t) #

shrink :: Unit t -> [Unit t] #

Hashable (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

hashWithSalt :: Int -> Unit t -> Int #

hash :: Unit t -> Int #

ToJSON (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

ToJSONKey (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

FromJSON (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

FromJSONKey (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Binary (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

put :: Unit t -> Put #

get :: Get (Unit t) #

putList :: [Unit t] -> Put #

Serialize (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

put :: Putter (Unit t) #

get :: Get (Unit t) #

NFData (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

rnf :: Unit t -> () #

Unbox (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

IndexStream z => IndexStream (z :. Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

streamUp :: forall (m :: Type -> Type). Monad m => LimitType (z :. Unit t) -> LimitType (z :. Unit t) -> Stream m (z :. Unit t) Source #

streamDown :: forall (m :: Type -> Type). Monad m => LimitType (z :. Unit t) -> LimitType (z :. Unit t) -> Stream m (z :. Unit t) Source #

IndexStream (Z :. Unit t) => IndexStream (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Methods

streamUp :: forall (m :: Type -> Type). Monad m => LimitType (Unit t) -> LimitType (Unit t) -> Stream m (Unit t) Source #

streamDown :: forall (m :: Type -> Type). Monad m => LimitType (Unit t) -> LimitType (Unit t) -> Stream m (Unit t) Source #

Index (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

Associated Types

data LimitType (Unit t) Source #

newtype MVector s (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

newtype MVector s (Unit t) = MV_Unit (MVector s ())
type Rep (LimitType (Unit t)) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

type Rep (LimitType (Unit t)) = D1 ('MetaData "LimitType" "Data.PrimitiveArray.Index.Unit" "PrimitiveArray-0.10.1.1-FHg9n6QRwG947627Wq9cn2" 'False) (C1 ('MetaCons "LtUnit" 'PrefixI 'False) (U1 :: Type -> Type))
type Rep (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

type Rep (Unit t) = D1 ('MetaData "Unit" "Data.PrimitiveArray.Index.Unit" "PrimitiveArray-0.10.1.1-FHg9n6QRwG947627Wq9cn2" 'False) (C1 ('MetaCons "Unit" 'PrefixI 'False) (U1 :: Type -> Type))
newtype Vector (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

newtype Vector (Unit t) = V_Unit (Vector ())
data LimitType (Unit t) Source # 
Instance details

Defined in Data.PrimitiveArray.Index.Unit

data LimitType (Unit t) = LtUnit