base-4.19.0.0: GHC/Foreign.hs
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE BangPatterns #-}
-----------------------------------------------------------------------------
-- |
-- Module : GHC.Foreign
-- Copyright : (c) The University of Glasgow, 2008-2011
-- License : see libraries/base/LICENSE
--
-- Maintainer : libraries@haskell.org
-- Stability : internal
-- Portability : non-portable
--
-- Foreign marshalling support for CStrings with configurable encodings
--
-----------------------------------------------------------------------------
module GHC.Foreign (
-- * C strings with a configurable encoding
CString, CStringLen,
-- * Conversion of C strings into Haskell strings
peekCString,
peekCStringLen,
-- * Conversion of Haskell strings into C strings
newCString,
newCStringLen,
newCStringLen0,
-- * Conversion of Haskell strings into C strings using temporary storage
withCString,
withCStringLen,
withCStringLen0,
withCStringsLen,
charIsRepresentable,
) where
import GHC.Foreign.Internal