zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

transport.ex (1209B)


      1 defmodule Mint.Core.Transport do
      2   @moduledoc false
      3 
      4   @type error() :: {:error, %Mint.TransportError{}}
      5 
      6   alias Mint.Types
      7 
      8   @callback connect(address :: Types.address(), port :: :inet.port_number(), opts :: keyword()) ::
      9               {:ok, Types.socket()} | error()
     10 
     11   @callback upgrade(
     12               Types.socket(),
     13               original_scheme :: Types.scheme(),
     14               hostname :: String.t(),
     15               :inet.port_number(),
     16               opts :: keyword()
     17             ) :: {:ok, Types.socket()} | error()
     18 
     19   @callback negotiated_protocol(Types.socket()) ::
     20               {:ok, protocol :: binary()} | {:error, :protocol_not_negotiated}
     21 
     22   @callback send(Types.socket(), payload :: iodata()) :: :ok | error()
     23 
     24   @callback close(Types.socket()) :: :ok | error()
     25 
     26   @callback recv(Types.socket(), bytes :: non_neg_integer(), timeout()) ::
     27               {:ok, binary()} | error()
     28 
     29   @callback controlling_process(Types.socket(), pid()) :: :ok | error()
     30 
     31   @callback setopts(Types.socket(), opts :: keyword()) :: :ok | error()
     32 
     33   @callback getopts(Types.socket(), opts :: keyword()) :: {:ok, opts :: keyword()} | error()
     34 
     35   @callback wrap_error(reason :: term()) :: %Mint.TransportError{}
     36 end