{-# INCLUDE <bindings.macros.h> #-}
{-# INCLUDE <string.h> #-}
{-# LINE 1 "src/Bindings/C/String.hsc" #-}

{-# LINE 2 "src/Bindings/C/String.hsc" #-}

{-# LINE 3 "src/Bindings/C/String.hsc" #-}

-- | <http://www.opengroup.org/onlinepubs/9699919799/basedefs/string.h.html>

module Bindings.C.String where
import Foreign
import Foreign.C

foreign import ccall "memchr" c'memchr :: Ptr () -> CInt -> CSize -> IO (Ptr ())
foreign import ccall "&memchr" p'memchr :: FunPtr (Ptr () -> CInt -> CSize -> IO (Ptr ()))

{-# LINE 11 "src/Bindings/C/String.hsc" #-}
foreign import ccall "memcmp" c'memcmp :: Ptr () -> Ptr () -> CSize -> IO CInt
foreign import ccall "&memcmp" p'memcmp :: FunPtr (Ptr () -> Ptr () -> CSize -> IO CInt)

{-# LINE 12 "src/Bindings/C/String.hsc" #-}
foreign import ccall "memcpy" c'memcpy :: Ptr () -> Ptr () -> CSize -> IO (Ptr ())
foreign import ccall "&memcpy" p'memcpy :: FunPtr (Ptr () -> Ptr () -> CSize -> IO (Ptr ()))

{-# LINE 13 "src/Bindings/C/String.hsc" #-}
foreign import ccall "memmove" c'memmove :: Ptr () -> Ptr () -> CSize -> IO (Ptr ())
foreign import ccall "&memmove" p'memmove :: FunPtr (Ptr () -> Ptr () -> CSize -> IO (Ptr ()))

{-# LINE 14 "src/Bindings/C/String.hsc" #-}
foreign import ccall "memset" c'memset :: Ptr () -> CInt -> CSize -> IO (Ptr ())
foreign import ccall "&memset" p'memset :: FunPtr (Ptr () -> CInt -> CSize -> IO (Ptr ()))

{-# LINE 15 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strcat" c'strcat :: CString -> CString -> IO CString
foreign import ccall "&strcat" p'strcat :: FunPtr (CString -> CString -> IO CString)

{-# LINE 16 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strchr" c'strchr :: CString -> CInt -> IO CString
foreign import ccall "&strchr" p'strchr :: FunPtr (CString -> CInt -> IO CString)

{-# LINE 17 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strcmp" c'strcmp :: CString -> CString -> IO CInt
foreign import ccall "&strcmp" p'strcmp :: FunPtr (CString -> CString -> IO CInt)

{-# LINE 18 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strcoll" c'strcoll :: CString -> CString -> IO CInt
foreign import ccall "&strcoll" p'strcoll :: FunPtr (CString -> CString -> IO CInt)

{-# LINE 19 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strcpy" c'strcpy :: CString -> CString -> IO CString
foreign import ccall "&strcpy" p'strcpy :: FunPtr (CString -> CString -> IO CString)

{-# LINE 20 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strcspn" c'strcspn :: CString -> CString -> IO CSize
foreign import ccall "&strcspn" p'strcspn :: FunPtr (CString -> CString -> IO CSize)

{-# LINE 21 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strerror" c'strerror :: CInt -> IO CString
foreign import ccall "&strerror" p'strerror :: FunPtr (CInt -> IO CString)

{-# LINE 22 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strlen" c'strlen :: CString -> IO CSize
foreign import ccall "&strlen" p'strlen :: FunPtr (CString -> IO CSize)

{-# LINE 23 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strncat" c'strncat :: CString -> CString -> CSize -> IO CString
foreign import ccall "&strncat" p'strncat :: FunPtr (CString -> CString -> CSize -> IO CString)

{-# LINE 24 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strncmp" c'strncmp :: CString -> CString -> CSize -> IO CInt
foreign import ccall "&strncmp" p'strncmp :: FunPtr (CString -> CString -> CSize -> IO CInt)

{-# LINE 25 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strncpy" c'strncpy :: CString -> CString -> CSize -> IO CString
foreign import ccall "&strncpy" p'strncpy :: FunPtr (CString -> CString -> CSize -> IO CString)

{-# LINE 26 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strpbrk" c'strpbrk :: CString -> CString -> IO CString
foreign import ccall "&strpbrk" p'strpbrk :: FunPtr (CString -> CString -> IO CString)

{-# LINE 27 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strrchr" c'strrchr :: CString -> CInt -> IO CString
foreign import ccall "&strrchr" p'strrchr :: FunPtr (CString -> CInt -> IO CString)

{-# LINE 28 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strspn" c'strspn :: CString -> CString -> IO CSize
foreign import ccall "&strspn" p'strspn :: FunPtr (CString -> CString -> IO CSize)

{-# LINE 29 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strstr" c'strstr :: CString -> CString -> IO CString
foreign import ccall "&strstr" p'strstr :: FunPtr (CString -> CString -> IO CString)

{-# LINE 30 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strtok" c'strtok :: CString -> CString -> IO CString
foreign import ccall "&strtok" p'strtok :: FunPtr (CString -> CString -> IO CString)

{-# LINE 31 "src/Bindings/C/String.hsc" #-}
foreign import ccall "strxfrm" c'strxfrm :: CString -> CString -> CSize -> IO CSize
foreign import ccall "&strxfrm" p'strxfrm :: FunPtr (CString -> CString -> CSize -> IO CSize)

{-# LINE 32 "src/Bindings/C/String.hsc" #-}