pub struct Data { /* private fields */ }Expand description
A Data message represents data sent along a stream.
Upon receiving a Data message for a live stream, the client or exit sends that data onto the associated TCP connection.
These messages hold between 1 and Data::MAXLEN bytes of data each; they are the most numerous messages on the Tor network.
Implementations
sourceimpl Data
impl Data
sourcepub fn new(inp: &[u8]) -> Result<Self>
pub fn new(inp: &[u8]) -> Result<Self>
Construct a new data cell.
Returns an error if inp is longer than Data::MAXLEN bytes.
sourcepub fn split_from(inp: &[u8]) -> (Self, &[u8])
pub fn split_from(inp: &[u8]) -> (Self, &[u8])
Construct a new data cell, taking as many bytes from inp
as possible.
Return the data cell, and a slice holding any bytes that wouldn’t fit (if any).
Trait Implementations
sourceimpl Body for Data
impl Body for Data
sourcefn into_message(self) -> RelayMsg
fn into_message(self) -> RelayMsg
Convert this type into a RelayMsg, wrapped appropriate.
sourcefn decode_from_reader(r: &mut Reader<'_>) -> Result<Self>
fn decode_from_reader(r: &mut Reader<'_>) -> Result<Self>
Decode a relay cell body from a provided reader.
sourcefn encode_onto(self, w: &mut Vec<u8>) -> EncodeResult<()>
fn encode_onto(self, w: &mut Vec<u8>) -> EncodeResult<()>
Encode the body of this cell into the end of a vec.
Auto Trait Implementations
impl RefUnwindSafe for Data
impl Send for Data
impl Sync for Data
impl Unpin for Data
impl UnwindSafe for Data
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToHex for Twhere
T: AsRef<[u8]>,
impl<T> ToHex for Twhere
T: AsRef<[u8]>,
sourcefn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
Encode the hex strict representing
self into the result. Lower case
letters are used (e.g. f9b4ca) Read moresourcefn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
Encode the hex strict representing
self into the result. Upper case
letters are used (e.g. F9B4CA) Read more