var-0.1.0.0: Mutable variables and tuples

Maintainerandy22286@gmail.com
Safe HaskellSafe-Inferred

Data.Tuple.MTuple

Contents

Description

 

Synopsis

Tuples

class Monad m => MTuple var t m whereSource

Methods

thawTuple :: t -> m (var t)Source

freezeTuple :: var t -> m tSource

Instances

MTuple StorableTuple () IO 
(Fields t, ByteArraySlice t) => MTuple IOUTuple t IO 
Fields t => MTuple IOTuple t IO 
(Storable a, Storable b) => MTuple StorableTuple (a, b) IO 
(Storable a, Storable b, Storable c) => MTuple StorableTuple (a, b, c) IO 
(Storable a, Storable b, Storable c, Storable d) => MTuple StorableTuple (a, b, c, d) IO 
(Storable a, Storable b, Storable c, Storable d, Storable e) => MTuple StorableTuple (a, b, c, d, e) IO 
(Storable a, Storable b, Storable c, Storable d, Storable e, Storable f) => MTuple StorableTuple (a, b, c, d, e, f) IO 
(Storable a, Storable b, Storable c, Storable d, Storable e, Storable f, Storable g) => MTuple StorableTuple (a, b, c, d, e, f, g) IO 
(Fields t, ByteArraySlice t) => MTuple (STUTuple s) t (ST s) 
(Fields t, ByteArraySlice t) => MTuple (STUTuple s) t (ST s) 
Fields t => MTuple (STTuple s) t (ST s) 
Fields t => MTuple (STTuple s) t (ST s) 

class MTuple var t m => MField1 var t a m | t -> a whereSource

Methods

read1 :: var t -> m aSource

write1 :: var t -> a -> m ()Source

modify1 :: var t -> (a -> a) -> m ()Source

modify1' :: var t -> (a -> a) -> m ()Source

Instances

(Fields t, MTuple StorableTuple t IO, ~ * a (Field1 t), Storable a) => MField1 StorableTuple t a IO 
(Fields t, ByteArraySlice t, ~ * a (Field1 t), ByteArraySlice a) => MField1 IOUTuple t a IO 
(Fields t, ~ * a (Field1 t)) => MField1 IOTuple t a IO 
(Fields t, ByteArraySlice t, ~ * a (Field1 t), ByteArraySlice a) => MField1 (STUTuple s) t a (ST s) 
(Fields t, ByteArraySlice t, ~ * a (Field1 t), ByteArraySlice a) => MField1 (STUTuple s) t a (ST s) 
(Fields t, ~ * a (Field1 t)) => MField1 (STTuple s) t a (ST s) 
(Fields t, ~ * a (Field1 t)) => MField1 (STTuple s) t a (ST s) 

class MTuple var t m => MField2 var t a m | t -> a whereSource

Methods

read2 :: var t -> m aSource

write2 :: var t -> a -> m ()Source

modify2 :: var t -> (a -> a) -> m ()Source

modify2' :: var t -> (a -> a) -> m ()Source

Instances

(Fields t, MTuple StorableTuple t IO, Storable (Field1 t), ~ * a (Field2 t), Storable a) => MField2 StorableTuple t a IO 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ~ * a (Field2 t), ByteArraySlice a) => MField2 IOUTuple t a IO 
(Fields t, ~ * a (Field2 t)) => MField2 IOTuple t a IO 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ~ * a (Field2 t), ByteArraySlice a) => MField2 (STUTuple s) t a (ST s) 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ~ * a (Field2 t), ByteArraySlice a) => MField2 (STUTuple s) t a (ST s) 
(Fields t, ~ * a (Field2 t)) => MField2 (STTuple s) t a (ST s) 
(Fields t, ~ * a (Field2 t)) => MField2 (STTuple s) t a (ST s) 

class MTuple var t m => MField3 var t a m | t -> a whereSource

Methods

read3 :: var t -> m aSource

write3 :: var t -> a -> m ()Source

modify3 :: var t -> (a -> a) -> m ()Source

modify3' :: var t -> (a -> a) -> m ()Source

Instances

(Fields t, MTuple StorableTuple t IO, Storable (Field1 t), Storable (Field2 t), ~ * a (Field3 t), Storable a) => MField3 StorableTuple t a IO 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ByteArraySlice (Field2 t), ~ * a (Field3 t), ByteArraySlice a) => MField3 IOUTuple t a IO 
(Fields t, ~ * a (Field3 t)) => MField3 IOTuple t a IO 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ByteArraySlice (Field2 t), ~ * a (Field3 t), ByteArraySlice a) => MField3 (STUTuple s) t a (ST s) 
(Fields t, ByteArraySlice t, ByteArraySlice (Field1 t), ByteArraySlice (Field2 t), ~ * a (Field3 t), ByteArraySlice a) => MField3 (STUTuple s) t a (ST s) 
(Fields t, ~ * a (Field3 t)) => MField3 (STTuple s) t a (ST s) 
(Fields t, ~ * a (Field3 t)) => MField3 (STTuple s) t a (ST s) 

class MTuple var t m => MField4 var t a m | t -> a whereSource

Methods

read4 :: var t -> m aSource

write4 :: var t -> a -> m ()Source

modify4 :: var t -> (a -> a) -> m ()Source

modify4' :: var t -> (a -> a) -> m ()Source

class MTuple var t m => MField5 var t a m | t -> a whereSource

Methods

read5 :: var t -> m aSource

write5 :: var t -> a -> m ()Source

modify5 :: var t -> (a -> a) -> m ()Source

modify5' :: var t -> (a -> a) -> m ()Source

class MTuple var t m => MField6 var t a m | t -> a whereSource

Methods

read6 :: var t -> m aSource

write6 :: var t -> a -> m ()Source

modify6 :: var t -> (a -> a) -> m ()Source

modify6' :: var t -> (a -> a) -> m ()Source

class MTuple var t m => MField7 var t a m | t -> a whereSource

Methods

read7 :: var t -> m aSource

write7 :: var t -> a -> m ()Source

modify7 :: var t -> (a -> a) -> m ()Source

modify7' :: var t -> (a -> a) -> m ()Source

class MTuple var t m => MField8 var t a m | t -> a whereSource

Methods

read8 :: var t -> m aSource

write8 :: var t -> a -> m ()Source

modify8 :: var t -> (a -> a) -> m ()Source

modify8' :: var t -> (a -> a) -> m ()Source

class MTuple var t m => MField9 var t a m | t -> a whereSource

Methods

read9 :: var t -> m aSource

write9 :: var t -> a -> m ()Source

modify9 :: var t -> (a -> a) -> m ()Source

modify9' :: var t -> (a -> a) -> m ()Source