Io module

connect

procedureextensionexperimental2 overloadsSource

Connects to address. The one with a name is connect("host:port").

Example↗
Io :: #import "Extensions/Io";

Io.io_run(() {
    listener, _ := Io.tcp_listen("127.0.0.1:0");
    defer Io.close(listener);

    address, _ := Io.local_address(listener);
    client, error := Io.connect(address);
    assert(error == .NONE);
    Io.close(client);
});
connect :: (address: Address) -> (Tcp_Stream, Io_Error)

Parameters

address: Address

Returns

connect :: (target: string) -> (Tcp_Stream, Io_Error)

Connects to "host:port", "1.2.3.4:80" or "[::1]:80", looking host up if it is a name.

Parameters

target: string

Returns

Example↗
Io :: #import "Extensions/Io";

Io.io_run(() {
    client, error := Io.connect("example.com:80");
    if error == .NONE Io.close(client);
});

This one is only checked to compile, not run.

See also