struct Version(pub u32);
Source: quic.joule:18
struct Version(pub u32);Source: quic.joule:18
const V1: VersionQUIC version 1 (RFC 9000)
Source: quic.joule:22
const V2: VersionQUIC version 2 (RFC 9369)
Source: quic.joule:24
const NEGOTIATION: VersionVersion negotiation
Source: quic.joule:26
fn is_supported(&self) -> boolSource: quic.joule:28
struct ConnectionIdSource: quic.joule:39
fn new(bytes: Vec<u8>) -> SelfSource: quic.joule:44
fn empty() -> SelfSource: quic.joule:48
fn random(len: usize) -> SelfSource: quic.joule:52
fn len(&self) -> usizeSource: quic.joule:61
fn is_empty(&self) -> boolSource: quic.joule:65
struct StreamId(pub u64);Source: quic.joule:76
fn is_client_initiated(&self) -> boolCheck if client-initiated
Source: quic.joule:80
fn is_server_initiated(&self) -> boolCheck if server-initiated
Source: quic.joule:85
fn is_bidirectional(&self) -> boolCheck if bidirectional
Source: quic.joule:90
fn is_unidirectional(&self) -> boolCheck if unidirectional
Source: quic.joule:95
fn client_bidi(n: u64) -> SelfCreate client-initiated bidirectional stream ID
Source: quic.joule:100
fn server_bidi(n: u64) -> SelfCreate server-initiated bidirectional stream ID
Source: quic.joule:105
fn client_uni(n: u64) -> SelfCreate client-initiated unidirectional stream ID
Source: quic.joule:110
fn server_uni(n: u64) -> SelfCreate server-initiated unidirectional stream ID
Source: quic.joule:115
struct TransportParametersSource: quic.joule:126
fn default() -> SelfSource: quic.joule:156
struct QuicConfigSource: quic.joule:181
fn default() -> SelfSource: quic.joule:199
enum CongestionControlSource: quic.joule:214
enum ConnectionStateSource: quic.joule:231
enum CloseReasonSource: quic.joule:248
fn code(&self) -> u64Source: quic.joule:282
enum StreamStateSource: quic.joule:309
struct QuicStreamQUIC stream
Source: quic.joule:325
fn new(id: StreamId, conn: Arc<Mutex<ConnectionInner>>, max_send_data: u64) -> SelfSource: quic.joule:351
fn id(&self) -> StreamIdGet stream ID
Source: quic.joule:368
fn can_send(&self) -> boolCheck if stream can send
Source: quic.joule:373
fn can_recv(&self) -> boolCheck if stream can receive
Source: quic.joule:379
fn write(&mut self, data: &[u8]) -> Result<usize, QuicError>Source: quic.joule:386
fn read(&mut self, buf: &mut [u8]) -> Result<usize, QuicError>Source: quic.joule:406
fn finish(&mut self) -> Result<(), QuicError>Source: quic.joule:424
fn reset(&mut self, error_code: u64) -> Result<(), QuicError>Source: quic.joule:434
fn stop_sending(&mut self, error_code: u64) -> Result<(), QuicError>Source: quic.joule:442
fn is_finished(&self) -> boolCheck if stream is finished (both directions closed)
Source: quic.joule:448
struct ConnectionInnerInternal connection state
Source: quic.joule:459
struct QuicConnectionQUIC connection
Source: quic.joule:499
fn connect(Source: quic.joule:507
fn perform_handshake(&self, server_name: &str, config: &QuicConfig) -> Result<(), QuicError>Source: quic.joule:550
fn build_initial_packet(&self, inner: &ConnectionInner) -> Result<Vec<u8>, QuicError>Source: quic.joule:575
fn process_handshake_packet(Source: quic.joule:601
fn state(&self) -> ConnectionStateGet connection state
Source: quic.joule:617
fn is_established(&self) -> boolCheck if connection is established
Source: quic.joule:622
fn open_stream(&self) -> Result<QuicStream, QuicError>Source: quic.joule:628
fn open_uni_stream(&self) -> Result<QuicStream, QuicError>Source: quic.joule:650
fn accept_stream(&self) -> Result<Option<QuicStream>, QuicError>Source: quic.joule:672
fn send_datagram(&self, data: &[u8]) -> Result<(), QuicError>Source: quic.joule:686
fn recv_datagram(&self) -> Result<Option<Vec<u8>>, QuicError>Source: quic.joule:712
fn close(&self, reason: CloseReason) -> Result<(), QuicError>Source: quic.joule:724
fn rtt(&self) -> DurationGet RTT estimate
Source: quic.joule:741
fn local_addr(&self) -> Result<SocketAddr, QuicError>Get local address
Source: quic.joule:746
fn peer_addr(&self) -> SocketAddrGet peer address
Source: quic.joule:751
fn stats(&self) -> ConnectionStatsGet connection statistics
Source: quic.joule:756
fn poll(&self) -> Result<(), QuicError>Source: quic.joule:768
fn process_packet(&self, packet: &[u8]) -> Result<(), QuicError>Source: quic.joule:788
fn flush_pending(&self) -> Result<(), QuicError>Source: quic.joule:794
struct ConnectionStatsSource: quic.joule:803
struct QuicEndpointQUIC server endpoint
Source: quic.joule:815
fn bind(addr: &str, config: QuicConfig) -> Result<Self, QuicError>Source: quic.joule:824
fn accept(&mut self) -> Result<QuicConnection, QuicError>Source: quic.joule:836
fn extract_cid(&self, packet: &[u8]) -> Option<ConnectionId>Source: quic.joule:858
fn is_initial_packet(&self, packet: &[u8]) -> boolSource: quic.joule:874
fn handle_initial(Source: quic.joule:883
fn local_addr(&self) -> Result<SocketAddr, QuicError>Get local address
Source: quic.joule:929
struct SessionTicketSource: quic.joule:940
fn is_valid(&self) -> boolCheck if ticket is valid
Source: quic.joule:953
struct EarlyData0-RTT data
Source: quic.joule:959
enum QuicErrorSource: quic.joule:971
fn from(e: std::io::Error) -> SelfSource: quic.joule:987
fn from(e: super::udp::UdpError) -> SelfSource: quic.joule:993
enum FrameTypeSource: quic.joule:1005
fn test_stream_id_types()Source: quic.joule:1041
fn test_connection_id()Source: quic.joule:1052
fn test_version()Source: quic.joule:1062
fn test_transport_parameters()Source: quic.joule:1069
fn test_close_reason_code()Source: quic.joule:1076