Packages
glisten
9.0.1
9.0.1
9.0.0
9.0.0-rc1
8.0.3
8.0.2
8.0.1
8.0.0
8.0.0-rc1
7.0.1
7.0.0
6.0.0
5.0.0
4.0.0
3.0.0
2.0.0
1.0.0
0.11.0
0.10.2
0.10.1
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.0
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
0.4.0
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.3
0.1.2
0.1.1
0.1.0
a shiny Gleam TCP/TLS server
Current section
Files
Jump to
Current section
Files
src/glisten@tcp.erl
-module(glisten@tcp).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/glisten/tcp.gleam").
-export([controlling_process/2, accept_timeout/2, accept/1, receive_timeout/3, 'receive'/2, send/2, socket_info/1, close/1, do_shutdown/2, shutdown/1, set_opts/2, listen/2, handshake/1, negotiated_protocol/1, peername/1, get_socket_opts/2, sockname/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
-file("src/glisten/tcp.gleam", 10).
-spec controlling_process(glisten@socket:socket(), gleam@erlang@process:pid_()) -> {ok,
nil} |
{error, gleam@erlang@atom:atom_()}.
controlling_process(Socket, Pid) ->
glisten_tcp_ffi:controlling_process(Socket, Pid).
-file("src/glisten/tcp.gleam", 19).
-spec accept_timeout(glisten@socket:listen_socket(), integer()) -> {ok,
glisten@socket:socket()} |
{error, glisten@socket:socket_reason()}.
accept_timeout(Socket, Timeout) ->
gen_tcp:accept(Socket, Timeout).
-file("src/glisten/tcp.gleam", 25).
-spec accept(glisten@socket:listen_socket()) -> {ok, glisten@socket:socket()} |
{error, glisten@socket:socket_reason()}.
accept(Socket) ->
gen_tcp:accept(Socket).
-file("src/glisten/tcp.gleam", 28).
-spec receive_timeout(glisten@socket:socket(), integer(), integer()) -> {ok,
bitstring()} |
{error, glisten@socket:socket_reason()}.
receive_timeout(Socket, Length, Timeout) ->
gen_tcp:recv(Socket, Length, Timeout).
-file("src/glisten/tcp.gleam", 35).
-spec 'receive'(glisten@socket:socket(), integer()) -> {ok, bitstring()} |
{error, glisten@socket:socket_reason()}.
'receive'(Socket, Length) ->
gen_tcp:recv(Socket, Length).
-file("src/glisten/tcp.gleam", 38).
-spec send(glisten@socket:socket(), gleam@bytes_tree:bytes_tree()) -> {ok, nil} |
{error, glisten@socket:socket_reason()}.
send(Socket, Packet) ->
glisten_tcp_ffi:send(Socket, Packet).
-file("src/glisten/tcp.gleam", 41).
-spec socket_info(glisten@socket:socket()) -> gleam@dict:dict(any(), any()).
socket_info(Socket) ->
socket:info(Socket).
-file("src/glisten/tcp.gleam", 44).
-spec close(any()) -> {ok, nil} | {error, glisten@socket:socket_reason()}.
close(Socket) ->
glisten_tcp_ffi:close(Socket).
-file("src/glisten/tcp.gleam", 47).
-spec do_shutdown(glisten@socket:socket(), gleam@erlang@atom:atom_()) -> {ok,
nil} |
{error, glisten@socket:socket_reason()}.
do_shutdown(Socket, Write) ->
glisten_tcp_ffi:shutdown(Socket, Write).
-file("src/glisten/tcp.gleam", 49).
-spec shutdown(glisten@socket:socket()) -> {ok, nil} |
{error, glisten@socket:socket_reason()}.
shutdown(Socket) ->
glisten_tcp_ffi:shutdown(Socket, erlang:binary_to_atom(<<"write"/utf8>>)).
-file("src/glisten/tcp.gleam", 60).
?DOC(" Update the optons for a socket (mutates the socket)\n").
-spec set_opts(
glisten@socket:socket(),
list(glisten@socket@options:tcp_option())
) -> {ok, nil} | {error, glisten@socket:socket_reason()}.
set_opts(Socket, Opts) ->
_pipe = Opts,
_pipe@1 = glisten_ffi:to_erl_tcp_options(_pipe),
glisten_tcp_ffi:set_opts(Socket, _pipe@1).
-file("src/glisten/tcp.gleam", 70).
?DOC(" Start listening over TCP on a port with the given options\n").
-spec listen(integer(), list(glisten@socket@options:tcp_option())) -> {ok,
glisten@socket:listen_socket()} |
{error, glisten@socket:socket_reason()}.
listen(Port, Opts) ->
_pipe = Opts,
_pipe@1 = glisten@socket@options:merge_with_defaults(_pipe),
_pipe@2 = glisten_ffi:to_erl_tcp_options(_pipe@1),
gen_tcp:listen(Port, _pipe@2).
-file("src/glisten/tcp.gleam", 80).
-spec handshake(glisten@socket:socket()) -> {ok, glisten@socket:socket()} |
{error, nil}.
handshake(Socket) ->
{ok, Socket}.
-file("src/glisten/tcp.gleam", 85).
-spec negotiated_protocol(glisten@socket:socket()) -> any().
negotiated_protocol(Socket) ->
tcp:negotiated_protocol(Socket).
-file("src/glisten/tcp.gleam", 88).
-spec peername(glisten@socket:socket()) -> {ok,
{gleam@dynamic:dynamic_(), integer()}} |
{error, glisten@socket:socket_reason()}.
peername(Socket) ->
inet:peername(Socket).
-file("src/glisten/tcp.gleam", 91).
-spec get_socket_opts(glisten@socket:socket(), list(gleam@erlang@atom:atom_())) -> {ok,
list({gleam@erlang@atom:atom_(), gleam@dynamic:dynamic_()})} |
{error, glisten@socket:socket_reason()}.
get_socket_opts(Socket, Opts) ->
inet:getopts(Socket, Opts).
-file("src/glisten/tcp.gleam", 97).
-spec sockname(glisten@socket:listen_socket()) -> {ok,
{gleam@dynamic:dynamic_(), integer()}} |
{error, glisten@socket:socket_reason()}.
sockname(Socket) ->
inet:sockname(Socket).