ghc-internal-9.1001.0: Basic libraries
Copyright(c) The University of Glasgow 1992-2002
Licensesee libraries/base/LICENSE
Maintainerghc-devs@haskell.org
Stabilityinternal
Portabilitynon-portable (requires POSIX)
Safe HaskellTrustworthy
LanguageHaskell2010

GHC.Internal.System.Posix.Internals

Description

POSIX support layer for the standard libraries.

The API of this module is unstable and not meant to be consumed by the general public. If you absolutely must depend on it, make sure to use a tight upper bound, e.g., base < 4.X rather than base < 5, because the interface can change rapidly without much warning.

This library is built on *every* platform, including Win32.

Non-POSIX compliant in order to support the following features: * S_ISSOCK (no sockets in POSIX)

Synopsis

Documentation

puts :: String -> IO () Source #

data CTm Source #

type FD = CInt Source #

checkForInteriorNuls :: FilePath -> CStringLen -> IO () Source #

Check an encoded FilePath for internal NUL octets as these are disallowed in POSIX filepaths. See #13660.

setEcho :: FD -> Bool -> IO () Source #

setCooked :: FD -> Bool -> IO () Source #

tcSetAttr :: FD -> (Ptr CTermios -> IO a) -> IO a Source #

c_interruptible_open :: CFilePath -> CInt -> CMode -> IO CInt Source #

The same as c_safe_open, but an interruptible operation as described in Control.Exception—it respects uninterruptibleMask but not mask.

We want to be able to interrupt an openFile call if it's expensive (NFS, FUSE, etc.), and we especially need to be able to interrupt a blocking open call. See #17912.

@since base-4.16.0.0

hostIsThreaded :: Bool Source #

Consult the RTS to find whether it is threaded.

@since base-4.16.0.0

c_interruptible_open_ :: CFilePath -> CInt -> CMode -> IO CInt Source #

@since base-4.16.0.0

rtsIsThreaded_ :: Int Source #

@since base-4.16.0.0