pub enum RpcMessage {
Response(RpcResponse),
Request(RpcRequest),
Notification(RpcNotification),
}Expand description
Top-level decoded message for the agent’s read loop. Inbound bytes are parsed into this enum once; the dispatcher then matches on the variant to route.
Untagged enum, decoded by trying variants in declaration order:
Response first (it owns result/error, neither of which
appear on requests), then Request (has both id and
method), then Notification (has method but no id). The
ordering matters — putting Request first would let it greedily
match {id, method, error} because params is optional and the
extra error field is silently ignored by serde-derived structs.
Variants§
Trait Implementations§
Source§impl Clone for RpcMessage
impl Clone for RpcMessage
Source§fn clone(&self) -> RpcMessage
fn clone(&self) -> RpcMessage
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 RpcMessage
impl Debug for RpcMessage
Source§impl<'de> Deserialize<'de> for RpcMessage
impl<'de> Deserialize<'de> for RpcMessage
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
Source§impl JsonSchema for RpcMessage
impl JsonSchema for RpcMessage
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for RpcMessage
impl RefUnwindSafe for RpcMessage
impl Send for RpcMessage
impl Sync for RpcMessage
impl Unpin for RpcMessage
impl UnsafeUnpin for RpcMessage
impl UnwindSafe for RpcMessage
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