## threadkit-internet-socket.pkg
# Compiled by:
#
src/lib/std/standard.libstipulate
package is = internet_socket; # internet_socket is from
src/lib/std/src/socket/internet-socket.pkg package pre = threadkit_pre_socket; # threadkit_pre_socket is from
src/lib/std/src/socket/threadkit-pre-socket.pkg package sok = socket; # socket is from
src/lib/std/socket.pkg package tps = threadkit_plain_socket; # threadkit_plain_socket is from
src/lib/std/src/socket/threadkit-plain-socket.pkg package ts = threadkit_socket; # threadkit_socket is from
src/lib/std/src/socket/threadkit-socket.pkgherein
package threadkit_internet_socket
: (weak) Threadkit_Internet_Socket # Threadkit_Internet_Socket is from
src/lib/std/src/socket/threadkit-internet-socket.api {
Inet = is::Inet;
Threadkit_Socket(X) = ts::Threadkit_Socket (Inet, X);
Stream_Socket(X) = Threadkit_Socket( sok::Stream(X) );
Datagram_Socket = Threadkit_Socket( sok::Datagram );
Socket_Address = sok::Socket_Address( Inet );
inet_af = is::inet_af;
to_address = is::to_address;
from_address = is::from_address;
any = is::any;
package udp {
#
fun socket ()
=
tps::socket (inet_af, sok::socket::datagram);
fun socket' proto
=
tps::socket' (inet_af, sok::socket::datagram, proto);
};
package tcp {
#
fun socket ()
=
tps::socket (inet_af, sok::socket::stream);
fun socket' proto
=
tps::socket' (inet_af, sok::socket::stream, proto);
# TCP control options:
#
fun get_nodelay (pre::THREADKIT_SOCKET { socket, ... } )
=
is::tcp::get_nodelay socket;
#
fun set_nodelay (pre::THREADKIT_SOCKET { socket, ... }, flag)
=
is::tcp::set_nodelay (socket, flag);
};
};
end;
## COPYRIGHT (c) 1996 AT&T Research.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2012,
## released under Gnu Public Licence version 3.