Struct Rpc

Source
pub struct Rpc {
    pub msg_type: RpcType,
    pub msg_id: RpcId,
    pub uid: u32,
    pub payload: Option<RpcPayload>,
}
Expand description

See esp_hosted_rpc.proto.

Fields§

§msg_type: RpcType

E.g. send a request, and receive a response or event.

§msg_id: RpcId

Identifies the type of message we’re sending.

§uid: u32

This is used for tracking purposes; it can be anything we want. Responses will match it.

§payload: Option<RpcPayload>

Notes: A: this is semi-redundant with msg_id. B: We currently only use it for responses and events, and maily for ones that have multiple records, which we’ve having a hard time parsing with micropb.

Implementations§

Source§

impl Rpc

Source

pub fn new_req(msg_id: RpcId, uid: u32) -> Self

Source

pub fn to_bytes(&self, buf: &mut [u8], data: &[u8]) -> usize

Writes the Rpc struct and data to buf. Returns the total size used.

Source

pub fn from_bytes(buf: &[u8]) -> Result<(Self, usize, usize), EspError>

Returns (Self, data start i, data len expected).

Trait Implementations§

Source§

impl Format for Rpc

Source§

fn format(&self, f: Formatter<'_>)

Writes the defmt representation of self to fmt.

Auto Trait Implementations§

§

impl Freeze for Rpc

§

impl RefUnwindSafe for Rpc

§

impl Send for Rpc

§

impl Sync for Rpc

§

impl Unpin for Rpc

§

impl UnwindSafe for Rpc

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.