streaming-commons-0.2.2.4: Common lower-level functions needed by various streaming data libraries
Safe HaskellNone
LanguageHaskell2010

Data.Streaming.Network.Internal

Synopsis

Documentation

data ServerSettings Source #

Settings for a TCP server. It takes a port to listen on, and an optional hostname to bind to.

Constructors

ServerSettings 

Fields

Instances

Instances details
HasReadBufferSize ServerSettings Source #

Since 0.1.13

Instance details

Defined in Data.Streaming.Network

Methods

readBufferSizeLens :: Functor f => (Int -> f Int) -> ServerSettings -> f ServerSettings Source #

HasAfterBind ServerSettings Source # 
Instance details

Defined in Data.Streaming.Network

Methods

afterBindLens :: Functor f => ((Socket -> IO ()) -> f (Socket -> IO ())) -> ServerSettings -> f ServerSettings Source #

HasPort ServerSettings Source # 
Instance details

Defined in Data.Streaming.Network

Methods

portLens :: Functor f => (Int -> f Int) -> ServerSettings -> f ServerSettings Source #

data ClientSettings Source #

Settings for a TCP client, specifying how to connect to the server.

Constructors

ClientSettings 

Fields

Instances

Instances details
HasReadBufferSize ClientSettings Source #

Since 0.1.13

Instance details

Defined in Data.Streaming.Network

Methods

readBufferSizeLens :: Functor f => (Int -> f Int) -> ClientSettings -> f ClientSettings Source #

HasPort ClientSettings Source # 
Instance details

Defined in Data.Streaming.Network

Methods

portLens :: Functor f => (Int -> f Int) -> ClientSettings -> f ClientSettings Source #

data HostPreference Source #

Which host to bind.

Note: The IsString instance recognizes the following special values:

  • * means HostAny - "any IPv4 or IPv6 hostname"
  • *4 means HostIPv4 - "any IPv4 or IPv6 hostname, IPv4 preferred"
  • !4 means HostIPv4Only - "any IPv4 hostname"
  • *6 means HostIPv6@ - "any IPv4 or IPv6 hostname, IPv6 preferred"
  • !6 means HostIPv6Only - "any IPv6 hostname"

Note that the permissive * values allow binding to an IPv4 or an IPv6 hostname, which means you might be able to successfully bind to a port more times than you expect (eg once on the IPv4 localhost 127.0.0.1 and again on the IPv6 localhost 0:0:0:0:0:0:0:1).

Any other value is treated as a hostname. As an example, to bind to the IPv4 local host only, use "127.0.0.1".

Instances

Instances details
Eq HostPreference Source # 
Instance details

Defined in Data.Streaming.Network.Internal

Ord HostPreference Source # 
Instance details

Defined in Data.Streaming.Network.Internal

Read HostPreference Source # 
Instance details

Defined in Data.Streaming.Network.Internal

Methods

readsPrec :: Int -> ReadS HostPreference

readList :: ReadS [HostPreference]

readPrec :: ReadPrec HostPreference

readListPrec :: ReadPrec [HostPreference]

Show HostPreference Source # 
Instance details

Defined in Data.Streaming.Network.Internal

Methods

showsPrec :: Int -> HostPreference -> ShowS

show :: HostPreference -> String

showList :: [HostPreference] -> ShowS

IsString HostPreference Source # 
Instance details

Defined in Data.Streaming.Network.Internal

Methods

fromString :: String -> HostPreference

data Message Source #

Representation of a single UDP message

Constructors

Message 

Fields

data AppData Source #

The data passed to an Application.

Constructors

AppData 

Fields

Instances

Instances details
HasReadWrite AppData Source # 
Instance details

Defined in Data.Streaming.Network

Methods

readLens :: Functor f => (IO ByteString -> f (IO ByteString)) -> AppData -> f AppData Source #

writeLens :: Functor f => ((ByteString -> IO ()) -> f (ByteString -> IO ())) -> AppData -> f AppData Source #

data ServerSettingsUnix Source #

Settings for a Unix domain sockets server.

Constructors

ServerSettingsUnix 

Fields

Instances

Instances details
HasReadBufferSize ServerSettingsUnix Source #

Since 0.1.13

Instance details

Defined in Data.Streaming.Network

Methods

readBufferSizeLens :: Functor f => (Int -> f Int) -> ServerSettingsUnix -> f ServerSettingsUnix Source #

HasAfterBind ServerSettingsUnix Source # 
Instance details

Defined in Data.Streaming.Network

Methods

afterBindLens :: Functor f => ((Socket -> IO ()) -> f (Socket -> IO ())) -> ServerSettingsUnix -> f ServerSettingsUnix Source #

HasPath ServerSettingsUnix Source # 
Instance details

Defined in Data.Streaming.Network

Methods

pathLens :: Functor f => (FilePath -> f FilePath) -> ServerSettingsUnix -> f ServerSettingsUnix Source #

data ClientSettingsUnix Source #

Settings for a Unix domain sockets client.

Constructors

ClientSettingsUnix 

Fields

Instances

Instances details
HasReadBufferSize ClientSettingsUnix Source #

Since 0.1.14

Instance details

Defined in Data.Streaming.Network

Methods

readBufferSizeLens :: Functor f => (Int -> f Int) -> ClientSettingsUnix -> f ClientSettingsUnix Source #

HasPath ClientSettingsUnix Source # 
Instance details

Defined in Data.Streaming.Network

Methods

pathLens :: Functor f => (FilePath -> f FilePath) -> ClientSettingsUnix -> f ClientSettingsUnix Source #

data AppDataUnix Source #

The data passed to a Unix domain sockets Application.

Constructors

AppDataUnix 

Fields

Instances

Instances details
HasReadWrite AppDataUnix Source # 
Instance details

Defined in Data.Streaming.Network

Methods

readLens :: Functor f => (IO ByteString -> f (IO ByteString)) -> AppDataUnix -> f AppDataUnix Source #

writeLens :: Functor f => ((ByteString -> IO ()) -> f (ByteString -> IO ())) -> AppDataUnix -> f AppDataUnix Source #