{-# OPTIONS_GHC -fplugin Foreign.Storable.Generic.Plugin #-} module Usage where import Types import Instances import Foreign.Storable.Generic import Foreign.Ptr import Foreign.Marshal.Alloc import GHC.Exts ---------- -- Flat -- ---------- flatSizeOf :: Flat Int Double -> Int flatSizeOf = gsizeOf flatAlignment :: Flat Int Double -> Int flatAlignment = galignment flatPeekByteOff :: Ptr b -> Int -> IO (Flat Int Double) flatPeekByteOff = gpeekByteOff -- flatPokeByteOff :: Ptr b -> Int -> Flat Int Double -> IO () -- flatPokeByteOff = gpokeByteOff -- ------------ -- -- Nested -- -- ------------ -- -- nestedSizeOf :: Nested Int Double -> Int -- nestedSizeOf = gsizeOf -- -- nestedAlignment :: Nested Int Double -> Int -- nestedAlignment = galignment -- -- nestedPeekByteOff :: Ptr b -> Int -> IO (Nested Int Double) -- nestedPeekByteOff = gpeekByteOff -- -- -- nestedPokeByteOff :: Ptr b -> Int -> Nested Int Double -> IO () -- -- nestedPokeByteOff = gpokeByteOff -- -- -------------- -- -- Nested 2 -- -- -------------- -- -- nested2SizeOf :: Nested2 Int Double -> Int -- nested2SizeOf = gsizeOf -- -- nested2Alignment :: Nested2 Int Double -> Int -- nested2Alignment = galignment -- -- nested2PeekByteOff :: Ptr b -> Int -> IO (Nested2 Int Double) -- nested2PeekByteOff = gpeekByteOff -- -- -- nested2PokeByteOff :: Ptr b -> Int -> Nested2 Int Double -> IO () -- -- nested2PokeByteOff = gpokeByteOff