pub trait TcpStreamExt {
// Required method
fn cap_connect<A: ToSocketAddrs>(
agent: &mut CapNetAgent,
addrs: A,
) -> Result<TcpStream>;
}Expand description
Adds extra features to std::net::TcpStream that require Casper.
Required Methods§
Sourcefn cap_connect<A: ToSocketAddrs>(
agent: &mut CapNetAgent,
addrs: A,
) -> Result<TcpStream>
fn cap_connect<A: ToSocketAddrs>( agent: &mut CapNetAgent, addrs: A, ) -> Result<TcpStream>
Open a TCP connection to a remote host, connecting via a cap_net
service.
§Examples
use std::{io, str::FromStr, net::TcpStream };
use capsicum::casper::Casper;
use capsicum_net::{CasperExt, std::TcpStreamExt};
// Safe because we are single-threaded
let mut casper = unsafe { Casper::new().unwrap() };
let mut cap_net = casper.net().unwrap();
let sock = TcpStream::cap_connect(&mut cap_net, "8.8.8.8:53").unwrap();Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.