+
+ , indexCharOffForeignObj -- :: ForeignObj -> Int -> Char
+
+ , indexIntOffForeignObj -- :: ForeignObj -> Int -> Int
+ , indexInt8OffForeignObj -- :: ForeignObj -> Int -> Int8
+ , indexInt16OffForeignObj -- :: ForeignObj -> Int -> Int16
+ , indexInt32OffForeignObj -- :: ForeignObj -> Int -> Int32
+ , indexInt64OffForeignObj -- :: ForeignObj -> Int -> Int64
+
+ , indexWord8OffForeignObj -- :: ForeignObj -> Int -> Word
+ , indexWord8OffForeignObj -- :: ForeignObj -> Int -> Word8
+ , indexWord16OffForeignObj -- :: ForeignObj -> Int -> Word16
+ , indexWord32OffForeignObj -- :: ForeignObj -> Int -> Word32
+ , indexWord64OffForeignObj -- :: ForeignObj -> Int -> Word64
+
+ , indexAddrOffForeignObj -- :: ForeignObj -> Int -> Addr
+ , indexFloatOffForeignObj -- :: ForeignObj -> Int -> Float
+ , indexDoubleOffForeignObj -- :: ForeignObj -> Int -> Double
+
+ , readCharOffForeignObj -- :: ForeignObj -> Int -> IO Char
+ , readIntOffForeignObj -- :: ForeignObj -> Int -> IO Int
+ , readInt8OffForeignObj -- :: ForeignObj -> Int -> IO Int8
+ , readInt16OffForeignObj -- :: ForeignObj -> Int -> IO Int16
+ , readInt32OffForeignObj -- :: ForeignObj -> Int -> IO Int32
+ , readInt64OffForeignObj -- :: ForeignObj -> Int -> IO Int64
+
+ , readWordOffForeignObj -- :: ForeignObj -> Int -> IO Word
+ , readWord8OffForeignObj -- :: ForeignObj -> Int -> IO Word8
+ , readWord16OffForeignObj -- :: ForeignObj -> Int -> IO Word16
+ , readWord32OffForeignObj -- :: ForeignObj -> Int -> IO Word32
+ , readWord64OffForeignObj -- :: ForeignObj -> Int -> IO Word64
+
+ , readAddrOffForeignObj -- :: ForeignObj -> Int -> IO Addr
+ , readFloatOffForeignObj -- :: ForeignObj -> Int -> IO Float
+ , readDoubleOffForeignObj -- :: ForeignObj -> Int -> IO Double
+
+ , writeCharOffForeignObj -- :: ForeignObj -> Int -> Char -> IO ()
+ , writeIntOffForeignObj -- :: ForeignObj -> Int -> Int -> IO ()
+ , writeInt8OffForeignObj -- :: ForeignObj -> Int -> Int8 -> IO ()
+ , writeInt16OffForeignObj -- :: ForeignObj -> Int -> Int16 -> IO ()
+ , writeInt32OffForeignObj -- :: ForeignObj -> Int -> Int32 -> IO ()
+ , writeInt64OffForeignObj -- :: ForeignObj -> Int -> Int64 -> IO ()
+
+ , writeWordOffForeignObj -- :: ForeignObj -> Int -> Word -> IO ()
+ , writeWord8OffForeignObj -- :: ForeignObj -> Int -> Word8 -> IO ()
+ , writeWord16OffForeignObj -- :: ForeignObj -> Int -> Word16 -> IO ()
+ , writeWord32OffForeignObj -- :: ForeignObj -> Int -> Word32 -> IO ()
+ , writeWord64OffForeignObj -- :: ForeignObj -> Int -> Word64 -> IO ()
+
+ , writeAddrOffForeignObj -- :: ForeignObj -> Int -> Addr -> IO ()
+ , writeFloatOffForeignObj -- :: ForeignObj -> Int -> Float -> IO ()
+ , writeDoubleOffForeignObj -- :: ForeignObj -> Int -> Double -> IO ()
+