Current section

Files

Jump to
gleam_mongo src tcp.erl
Raw

src/tcp.erl

-module(tcp).
-compile(no_auto_import).
-export([connect/2, send/2, 'receive'/1]).
-export_type([socket/0, tcp_result/0, tcp_option/0]).
-type socket() :: any().
-type tcp_result() :: ok.
-type tcp_option() :: binary | {active, boolean()}.
-spec connect(binary(), integer()) -> {ok, socket()} | {error, nil}.
connect(Host, Port) ->
gen_tcp:connect(
begin
_pipe = Host,
_pipe@1 = gleam@string:to_graphemes(_pipe),
gleam@list:map(
_pipe@1,
fun(Char) ->
<<Code>> = gleam@bit_string:from_string(Char),
Code
end
)
end,
Port,
[binary, {active, false}]
).
-spec send(socket(), bitstring()) -> tcp_result().
send(Socket, Data) ->
gen_tcp:send(Socket, Data).
-spec 'receive'(socket()) -> {ok, bitstring()} | {error, nil}.
'receive'(Socket) ->
gen_tcp:recv(Socket, 0).