pub enum Layer {
Http(HttpLayer),
WebSocket(WebSocketLayer),
Tcp(TcpLayer),
Udp(UdpLayer),
Quic(QuicLayer),
Custom(Arc<dyn ProtocolLayer>),
Unknown,
}Expand description
The specific application layer data. Using an enum allows us to support HTTP now, but easily add DNS, WebSocket, or raw TCP streams later without breaking the top-level Flow structure.
Variants§
Http(HttpLayer)
WebSocket(WebSocketLayer)
Tcp(TcpLayer)
Udp(UdpLayer)
Quic(QuicLayer)
Custom(Arc<dyn ProtocolLayer>)
Unknown
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Layer
impl<'de> Deserialize<'de> for Layer
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Layer
impl !RefUnwindSafe for Layer
impl Send for Layer
impl Sync for Layer
impl Unpin for Layer
impl UnsafeUnpin for Layer
impl !UnwindSafe for Layer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more