Module
Erl.Kernel.Tcp
- Package
- erl-kernel
- Repository
- id3as/purescript-erl-kernel
#Options Source
type Options :: Row Type -> Row Type
type Options r = CommonOptions (delay_send :: Maybe Boolean, exit_on_close :: Maybe Boolean, high_watermark :: Maybe NonNegInt, keepalive :: Maybe Boolean, linger :: Maybe Linger, low_watermark :: Maybe NonNegInt, nodelay :: Maybe Boolean, packet :: Maybe SocketPacket, packet_size :: Maybe NonNegInt, send_timeout :: Maybe Milliseconds, send_timeout_close :: Maybe Boolean, show_econnreset :: Maybe Boolean | r)
#ConnectListenOptions Source
type ConnectListenOptions :: Row Type -> Row Type
type ConnectListenOptions r = Options (bind_to_device :: Maybe Binary, family :: Maybe AddressFamily, fd :: Maybe NonNegInt, ifaddr :: Maybe SocketAddress, ip :: Maybe SocketAddress, netns :: Maybe FileName, port :: Maybe Port | r)
#ConnectOptions Source
type ConnectOptions :: Row Type
type ConnectOptions = ConnectListenOptions ()
#ListenOptions Source
type ListenOptions :: Row Type
type ListenOptions = ConnectListenOptions (backlog :: Maybe (NonNegInt))
#OptionToMaybe Source
data OptionToMaybe
Instances
ConvertOption OptionToMaybe "mode" a a
ConvertOption OptionToMaybe sym (Maybe a) (Maybe a)
ConvertOption OptionToMaybe sym a (Maybe a)
#TcpSocket Source
data TcpSocket :: SocketMessageBehaviour -> SocketType -> Type
Instances
Eq (TcpSocket ActiveSocket ConnectedSocket)
Eq (TcpSocket PassiveSocket ConnectedSocket)
Eq (TcpSocket ActiveSocket ListenSocket)
Eq (TcpSocket PassiveSocket ListenSocket)
Show (TcpSocket ActiveSocket ConnectedSocket)
Show (TcpSocket PassiveSocket ConnectedSocket)
Show (TcpSocket ActiveSocket ListenSocket)
Show (TcpSocket PassiveSocket ListenSocket)
Socket (TcpSocket ActiveSocket ConnectedSocket)
Socket (TcpSocket PassiveSocket ConnectedSocket)
#TcpMessage Source
data TcpMessage
Constructors
Tcp (TcpSocket ActiveSocket ConnectedSocket) Binary
Tcp_error (TcpSocket ActiveSocket ConnectedSocket) ActiveError
Tcp_closed (TcpSocket ActiveSocket ConnectedSocket)
Tcp_passive (TcpSocket ActiveSocket ConnectedSocket)
Instances
Eq TcpMessage
Show TcpMessage
RuntimeType TcpMessage (RTOption (RTTuple3 (RTLiteralAtom "tcp") RTWildcard RTBinary) (RTOption (RTTuple3 (RTLiteralAtom "tcp_error") RTWildcard RTWildcard) (RTOption (RTTuple2 (RTLiteralAtom "tcp_closed") RTWildcard) (RTTuple2 (RTLiteralAtom "tcp_passive") RTWildcard))))
#AcceptError Source
#ListenError Source
#defaultConnectListenOptions Source
defaultConnectListenOptions :: forall r. Union r (ConnectListenOptions ()) (ConnectListenOptions r) => Record r -> Record (ConnectListenOptions r)
#connectOptions Source
connectOptions :: forall options. ConvertOptionsWithDefaults OptionToMaybe (Record ConnectOptions) options (Record ConnectOptions) => options -> Record ConnectOptions
#listenOptions Source
listenOptions :: forall options. ConvertOptionsWithDefaults OptionToMaybe (Record ListenOptions) options (Record ListenOptions) => options -> Record ListenOptions
#accept Source
accept :: forall msg m. MonadEffect m => ReceivesMessage m msg => IsSupportedMessage TcpMessage msg => TcpSocket ActiveSocket ListenSocket -> Timeout -> m (Either AcceptError (TcpSocket ActiveSocket ConnectedSocket))
#connect Source
connect :: forall options msg m. MonadEffect m => ReceivesMessage m msg => IsSupportedMessage TcpMessage msg => Union (ForcedOptions ()) options (ForcedOptions options) => Nub (ForcedOptions options) (ForcedOptions options) => ConvertOptionsWithDefaults OptionToMaybe (Record ConnectOptions) (Record (ForcedOptions options)) (Record (ForcedOptions ConnectOptions)) => ConnectAddress -> Port -> Record options -> Timeout -> m (Either ConnectError (TcpSocket ActiveSocket ConnectedSocket))
#connectPassive Source
connectPassive :: forall options. Lacks "active" options => Union (ForcedOptions ()) options (ForcedOptions options) => Nub (ForcedOptions options) (ForcedOptions options) => ConvertOptionsWithDefaults OptionToMaybe (Record ConnectOptions) (Record (ForcedOptions options)) (Record (ForcedOptions ConnectOptions)) => ConnectAddress -> Port -> Record options -> Timeout -> Effect (Either ConnectError (TcpSocket PassiveSocket ConnectedSocket))
#listen Source
listen :: forall options. Union (ForcedOptions ()) options (ForcedOptions options) => Nub (ForcedOptions options) (ForcedOptions options) => ConvertOptionsWithDefaults OptionToMaybe (Record ListenOptions) (Record (ForcedOptions options)) (Record (ForcedOptions ListenOptions)) => Port -> Record options -> Effect (Either ListenError (TcpSocket ActiveSocket ListenSocket))
#listenPassive Source
listenPassive :: forall options. Lacks "active" options => Union (ForcedOptions ()) options (ForcedOptions options) => Nub (ForcedOptions options) (ForcedOptions options) => ConvertOptionsWithDefaults OptionToMaybe (Record ListenOptions) (Record (ForcedOptions options)) (Record (ForcedOptions ListenOptions)) => Port -> Record options -> Effect (Either ListenError (TcpSocket PassiveSocket ListenSocket))
#recv Source
recv :: forall socketMessageBehaviour. TcpSocket socketMessageBehaviour ConnectedSocket -> NonNegInt -> Timeout -> Effect (Either ActiveError Binary)
#shutdown Source
shutdown :: forall socketMessageBehaviour socketType. TcpSocket socketMessageBehaviour socketType -> ShutdownHow -> Effect (Either PosixError Unit)
#setopts Source
setopts :: forall options socketMessageBehaviour socketType. Union (ForcedOptions ()) options (ForcedOptions options) => Nub (ForcedOptions options) (ForcedOptions options) => ConvertOptionsWithDefaults OptionToMaybe (Record (Options ())) (Record (ForcedOptions options)) (Record (ForcedOptions (Options ()))) => OptionsValid socketMessageBehaviour options => TcpSocket socketMessageBehaviour socketType -> Record options -> Effect (Either PosixError Unit)
#convertPassiveToActive Source
convertPassiveToActive :: forall msg m. MonadEffect m => ReceivesMessage m msg => IsSupportedMessage TcpMessage msg => TcpSocket PassiveSocket ConnectedSocket -> TcpSocket ActiveSocket ConnectedSocket