Behaviours: gen_statem.
connection() = #connection{type = client | server | undefined, ssl_options = any(), listen_ref = non_neg_integer() | undefined, socket = sock:socket(), peer_settings = settings(), self_settings = settings(), send_window_size = integer(), recv_window_size = integer(), decode_context = hpack:context(), encode_context = hpack:context(), settings_sent = queue:queue(), next_available_stream_id = stream_id(), streams = h2_stream_set:stream_set(), stream_callback_mod = module(), stream_callback_opts = list(), buffer = empty | {binary, binary()} | {frame, h2_frame:header(), binary()}, continuation = undefined | #continuation_state{stream_id = stream_id(), promised_id = undefined | stream_id(), frames = queue:queue(h2_frame:frame()), type = headers | push_promise | trailers, end_stream = boolean(), end_headers = boolean()}, flow_control = auto | manual, pings = #{binary() => {pid(), non_neg_integer()}}}
error_code() = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13
send_option() = {send_end_stream, boolean()}
send_opts() = [send_option()]
settings() = #settings{}
socket() = {gen_tcp, inet:socket() | undefined} | {ssl, ssl:sslsocket() | undefined}
stream_id() = non_neg_integer()
become(Socket::socket()) -> no_return()
become(Socket::socket(), Http2Settings::settings()) -> no_return()
become(X1::socket(), Http2Settings::settings(), ConnectionSettings::maps:map()) -> no_return()
callback_mode() -> any()
closing(Type, Message, Connection) -> any()
code_change(OldVsn, StateName, Conn, Extra) -> any()
connected(Type, Msg, Connection) -> any()
continuation(Type, Msg, Connection) -> any()
get_peer(Pid::pid()) -> {ok, {inet:ip_address(), inet:port_number()}} | {error, term()}
get_peercert(Pid::pid()) -> {ok, binary()} | {error, term()}
get_response(Pid::pid(), StreamId::stream_id()) -> {ok, {hpack:headers(), iodata()}} | not_ready
get_streams(Pid::pid()) -> h2_stream_set:stream_set()
go_away(ErrorCode::error_code(), Connection::connection()) -> {next_state, closing, connection()}
handshake(Type::gen_statem:event_type(), Msg::{frame, h2_frame:frame()} | term(), State::connection()) -> {next_state, handshake | connected | closing, connection()}
init(X1) -> any()
is_push(Pid::pid()) -> boolean()
listen(Type, Msg, H2_listening_state) -> any()
new_stream(Pid::pid()) -> stream_id() | {error, error_code()}
new_stream(Pid::pid(), NotifyPid::pid()) -> stream_id() | {error, error_code()}
send_body(Pid::pid(), StreamId::stream_id(), Body::binary()) -> ok
send_body(Pid::pid(), StreamId::stream_id(), Body::binary(), Opts::send_opts()) -> ok
send_frame(Pid, Bin) -> any()
send_headers(Pid::pid(), StreamId::stream_id(), Headers::hpack:headers()) -> ok
send_headers(Pid::pid(), StreamId::stream_id(), Headers::hpack:headers(), Opts::send_opts()) -> ok
send_ping(Pid::pid()) -> ok
send_promise(Pid::pid(), StreamId::stream_id(), NewStreamId::stream_id(), Headers::hpack:headers()) -> ok
send_request(Pid::pid(), Headers::hpack:headers(), Body::binary()) -> ok
send_trailers(Pid::pid(), StreamId::stream_id(), Trailers::hpack:headers()) -> ok
send_trailers(Pid::pid(), StreamId::stream_id(), Trailers::hpack:headers(), Opts::send_opts()) -> ok
send_window_update(Pid::pid(), Size::non_neg_integer()) -> ok
start_client(X1::socket(), Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
start_client(Transport::gen_tcp | ssl, Host::inet:ip_address() | inet:hostname(), Port::inet:port_number(), SSLOptions::[ssl:ssl_option()], Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
start_client_link(X1::socket(), Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
start_client_link(Transport::gen_tcp | ssl, Host::inet:ip_address() | inet:hostname(), Port::inet:port_number(), SSLOptions::[ssl:ssl_option()], Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
start_server_link(X1::socket(), SSLOptions::[ssl:ssl_option()], Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
start_ssl_upgrade_link(Host::inet:ip_address() | inet:hostname(), Port::inet:port_number(), InitialMessage::binary(), SSLOptions::[ssl:ssl_option()], Http2Settings::settings()) -> {ok, pid()} | ignore | {error, term()}
stop(Pid::pid()) -> ok
terminate(Reason, StateName, Conn) -> any()
update_settings(Pid::pid(), Payload::h2_frame_settings:payload()) -> ok
Generated by EDoc