s2n_quic_transport/contexts/
mod.rs1use crate::{connection::InternalConnectionId, transmission, wakeup_queue::WakeupHandle};
8
9pub use transmission::Writer as WriteContext;
10
11#[derive(Debug, Clone, Copy, PartialEq, Eq)]
13pub enum OnTransmitError {
14 CouldNotWriteFrame,
16 CouldNotAcquireEnoughSpace,
18}
19
20#[derive(Debug, Clone, Copy, PartialEq, Eq)]
22pub enum ConnectionOnTransmitError {
23 NoDatagram,
25}
26
27pub struct ConnectionApiCallContext<'a> {
29 wakeup_handle: &'a WakeupHandle<InternalConnectionId>,
30}
31
32impl<'a> ConnectionApiCallContext<'a> {
33 pub fn from_wakeup_handle(wakeup_handle: &'a WakeupHandle<InternalConnectionId>) -> Self {
35 Self { wakeup_handle }
36 }
37
38 pub fn wakeup_handle(&mut self) -> &WakeupHandle<InternalConnectionId> {
40 self.wakeup_handle
41 }
42}
43
44#[cfg(test)]
45pub mod testing {
46 pub use crate::transmission::writer::testing::{Writer as MockWriteContext, *};
47}