pub fn write_handshake<'a, W: AsyncWrite>(
writer: Pin<&'a mut W>,
handshake: &'a Handshake,
) -> HandshakeWriter<'a, W>
Expand description
Writes actual handshake data into streams.
ยงExamples
use std::{
io::Result as IOResult,
pin::{
Pin,
pin
},
time::Duration
};
use sheave_core::{
handshake::{
Handshake,
Version
},
writers::write_handshake
};
#[tokio::main]
async fn main() -> IOResult<()> {
let mut writer: Pin<&mut Vec<u8>> = pin!(Vec::new());
let handshake = Handshake::new(Duration::default(), Version::UNSIGNED);
write_handshake(writer.as_mut(), &handshake).await?;
assert_eq!(handshake.get_bytes(), writer.as_slice());
Ok(())
}