Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
UnixInputStream
implements InputStream
for reading from a UNIX
file descriptor, including asynchronous operations. (If the file
descriptor refers to a socket or pipe, this will use poll()
to do
asynchronous I/O. If it refers to a regular file, it will fall back
to doing asynchronous I/O in another thread.)
Note that <gio/gunixinputstream.h>
belongs to the UNIX-specific GIO
interfaces, thus you have to use the gio-unix-2.0.pc
pkg-config
file when using it.
- newtype UnixInputStream = UnixInputStream (ManagedPtr UnixInputStream)
- class GObject o => IsUnixInputStream o
- toUnixInputStream :: IsUnixInputStream o => o -> IO UnixInputStream
- noUnixInputStream :: Maybe UnixInputStream
- data UnixInputStreamGetCloseFdMethodInfo
- unixInputStreamGetCloseFd :: (HasCallStack, MonadIO m, IsUnixInputStream a) => a -> m Bool
- data UnixInputStreamGetFdMethodInfo
- unixInputStreamGetFd :: (HasCallStack, MonadIO m, IsUnixInputStream a) => a -> m Int32
- unixInputStreamNew :: (HasCallStack, MonadIO m) => Int32 -> Bool -> m UnixInputStream
- data UnixInputStreamSetCloseFdMethodInfo
- unixInputStreamSetCloseFd :: (HasCallStack, MonadIO m, IsUnixInputStream a) => a -> Bool -> m ()
- data UnixInputStreamCloseFdPropertyInfo
- constructUnixInputStreamCloseFd :: IsUnixInputStream o => Bool -> IO (GValueConstruct o)
- getUnixInputStreamCloseFd :: (MonadIO m, IsUnixInputStream o) => o -> m Bool
- setUnixInputStreamCloseFd :: (MonadIO m, IsUnixInputStream o) => o -> Bool -> m ()
- unixInputStreamCloseFd :: AttrLabelProxy "closeFd"
- data UnixInputStreamFdPropertyInfo
- constructUnixInputStreamFd :: IsUnixInputStream o => Int32 -> IO (GValueConstruct o)
- getUnixInputStreamFd :: (MonadIO m, IsUnixInputStream o) => o -> m Int32
- unixInputStreamFd :: AttrLabelProxy "fd"
Exported types
newtype UnixInputStream Source #
GObject UnixInputStream Source # | |
IsObject UnixInputStream Source # | |
IsInputStream UnixInputStream Source # | |
IsPollableInputStream UnixInputStream Source # | |
IsFileDescriptorBased UnixInputStream Source # | |
IsUnixInputStream UnixInputStream Source # | |
((~) * info (ResolveUnixInputStreamMethod t UnixInputStream), MethodInfo * info UnixInputStream p) => IsLabel t (UnixInputStream -> p) Source # | |
((~) * info (ResolveUnixInputStreamMethod t UnixInputStream), MethodInfo * info UnixInputStream p) => IsLabelProxy t (UnixInputStream -> p) Source # | |
HasAttributeList * UnixInputStream Source # | |
type AttributeList UnixInputStream Source # | |
type SignalList UnixInputStream Source # | |
class GObject o => IsUnixInputStream o Source #
toUnixInputStream :: IsUnixInputStream o => o -> IO UnixInputStream Source #
Methods
getCloseFd
data UnixInputStreamGetCloseFdMethodInfo Source #
((~) * signature (m Bool), MonadIO m, IsUnixInputStream a) => MethodInfo * UnixInputStreamGetCloseFdMethodInfo a signature Source # | |
unixInputStreamGetCloseFd Source #
:: (HasCallStack, MonadIO m, IsUnixInputStream a) | |
=> a |
|
-> m Bool | Returns: |
Returns whether the file descriptor of stream
will be
closed when the stream is closed.
Since: 2.20
getFd
data UnixInputStreamGetFdMethodInfo Source #
((~) * signature (m Int32), MonadIO m, IsUnixInputStream a) => MethodInfo * UnixInputStreamGetFdMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsUnixInputStream a) | |
=> a |
|
-> m Int32 | Returns: The file descriptor of |
Return the UNIX file descriptor that the stream reads from.
Since: 2.20
new
:: (HasCallStack, MonadIO m) | |
=> Int32 |
|
-> Bool |
|
-> m UnixInputStream | Returns: a new |
Creates a new UnixInputStream
for the given fd
.
If closeFd
is True
, the file descriptor will be closed
when the stream is closed.
setCloseFd
data UnixInputStreamSetCloseFdMethodInfo Source #
((~) * signature (Bool -> m ()), MonadIO m, IsUnixInputStream a) => MethodInfo * UnixInputStreamSetCloseFdMethodInfo a signature Source # | |
unixInputStreamSetCloseFd Source #
:: (HasCallStack, MonadIO m, IsUnixInputStream a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether the file descriptor of stream
shall be closed
when the stream is closed.
Since: 2.20
Properties
closeFd
data UnixInputStreamCloseFdPropertyInfo Source #
constructUnixInputStreamCloseFd :: IsUnixInputStream o => Bool -> IO (GValueConstruct o) Source #
getUnixInputStreamCloseFd :: (MonadIO m, IsUnixInputStream o) => o -> m Bool Source #
setUnixInputStreamCloseFd :: (MonadIO m, IsUnixInputStream o) => o -> Bool -> m () Source #
unixInputStreamCloseFd :: AttrLabelProxy "closeFd" Source #
fd
data UnixInputStreamFdPropertyInfo Source #
constructUnixInputStreamFd :: IsUnixInputStream o => Int32 -> IO (GValueConstruct o) Source #
getUnixInputStreamFd :: (MonadIO m, IsUnixInputStream o) => o -> m Int32 Source #
unixInputStreamFd :: AttrLabelProxy "fd" Source #