module Database.Dpi.Prelude ( module Foreign , module Foreign.C.String , module Foreign.C.Types , module Database.Dpi.Prelude , packCString , packCStringLen , useAsCString , useAsCStringLen , ByteString , join , (<>) ) where import Control.Monad (join) import Data.ByteString import Data.Monoid ((<>)) import Foreign import Foreign.C.String import Foreign.C.Types toMaybePtr :: Ptr a -> Maybe (Ptr a) toMaybePtr p = if p == nullPtr then Nothing else Just p fe :: (Enum e, Integral n) => e -> n fe = fromIntegral . fromEnum