socket v0.3.9 Socket.Stream.Protocol protocol

Summary

Functions

Close the socket

Send a file through the socket, using non-copying operations where available

Receive data from the socket compatible with the packet type

Receive data from the socket with the given length or options

Receive data from the socket with the given length and options

Send data through the socket

Shutdown the socket in the given mode, either :both, :read, or :write

Types

t()
t() :: term

Functions

close(self)
close(t) :: :ok | {:error, term}

Close the socket.

file(self, path, options \\ [])
file(t, String.t, Keyword.t) :: :ok | {:error, term}

Send a file through the socket, using non-copying operations where available.

recv(self)
recv(t) :: {:ok, term} | {:error, term}

Receive data from the socket compatible with the packet type.

recv(self, length_or_options)
recv(t, non_neg_integer | Keyword.t) ::
  {:ok, term} |
  {:error, term}

Receive data from the socket with the given length or options.

recv(self, length, options)
recv(t, non_neg_integer, Keyword.t) ::
  {:ok, term} |
  {:error, term}

Receive data from the socket with the given length and options.

send(self, data)
send(t, iodata) :: :ok | {:error, term}

Send data through the socket.

shutdown(self, how \\ :both)
shutdown(t, :both | :read | :write) :: :ok | {:error, term}

Shutdown the socket in the given mode, either :both, :read, or :write.