{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI #-} module STD.CppString.FFI where import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import STD.CppString.RawType import STD.CppString.RawType foreign import ccall interruptible "STDCppString.h string_delete" c_string_delete :: Ptr RawCppString -> IO () foreign import ccall interruptible "STDCppString.h string_newCppString" c_string_newcppstring :: CString -> IO (Ptr RawCppString) foreign import ccall interruptible "STDCppString.h string_cppString_c_str" c_string_cppstring_c_str :: Ptr RawCppString -> IO CString foreign import ccall interruptible "STDCppString.h string_cppString_append" c_string_cppstring_append :: Ptr RawCppString -> Ptr RawCppString -> IO (Ptr RawCppString) foreign import ccall interruptible "STDCppString.h string_cppString_erase" c_string_cppstring_erase :: Ptr RawCppString -> IO (Ptr RawCppString)