pub enum ProtocolMessage {
Query(QueryRequest),
Response(QueryResponse),
HookRequest(HookRequest),
HookResponse(Box<HookResponse>),
PermissionCheck(PermissionCheckRequest),
PermissionResponse(PermissionResponse),
ControlRequest(ControlRequest),
ControlResponse(ControlResponse),
Error(ProtocolErrorMessage),
}Expand description
Union of all possible protocol messages
Used for routing and type-safe message handling.
Variants§
Query(QueryRequest)
Query request (client → CLI)
Response(QueryResponse)
Query response (CLI → client)
HookRequest(HookRequest)
Hook request (CLI → client)
HookResponse(Box<HookResponse>)
Hook response (client → CLI)
PermissionCheck(PermissionCheckRequest)
Permission check (CLI → client)
PermissionResponse(PermissionResponse)
Permission response (client → CLI)
ControlRequest(ControlRequest)
Control request (client → CLI)
ControlResponse(ControlResponse)
Control response (CLI → client)
Error(ProtocolErrorMessage)
Error message (either direction)
Implementations§
Trait Implementations§
Source§impl Clone for ProtocolMessage
impl Clone for ProtocolMessage
Source§fn clone(&self) -> ProtocolMessage
fn clone(&self) -> ProtocolMessage
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProtocolMessage
impl Debug for ProtocolMessage
Source§impl<'de> Deserialize<'de> for ProtocolMessage
impl<'de> Deserialize<'de> for ProtocolMessage
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 ProtocolMessage
impl RefUnwindSafe for ProtocolMessage
impl Send for ProtocolMessage
impl Sync for ProtocolMessage
impl Unpin for ProtocolMessage
impl UnwindSafe for ProtocolMessage
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