pub struct SchemaReport {
pub types: HashSet<OwnedNamedType>,
pub topics_in: Vec<TopicReport>,
pub topics_out: Vec<TopicReport>,
pub endpoints: Vec<EndpointReport>,
}
Expand description
A report describing the schema spoken by the connected device
Fields§
§types: HashSet<OwnedNamedType>
All custom types spoken by the device (on any endpoint or topic), as well as all primitive types. In the future, primitive types may be removed.
topics_in: Vec<TopicReport>
All incoming (client to server) topics reported by the device
topics_out: Vec<TopicReport>
All outgoing (server to client) topics reported by the device
endpoints: Vec<EndpointReport>
All endpoints reported by the device
Implementations§
Source§impl SchemaReport
impl SchemaReport
Sourcepub fn add_type(&mut self, t: OwnedNamedType)
pub fn add_type(&mut self, t: OwnedNamedType)
Insert a new type
Sourcepub fn add_topic_in(
&mut self,
path: String,
key: Key,
) -> Result<(), UnableToFindType>
pub fn add_topic_in( &mut self, path: String, key: Key, ) -> Result<(), UnableToFindType>
Insert a new incoming (client to server) topic
Returns an error if we are unable to find the type used for this topic
Sourcepub fn add_topic_out(
&mut self,
path: String,
key: Key,
) -> Result<(), UnableToFindType>
pub fn add_topic_out( &mut self, path: String, key: Key, ) -> Result<(), UnableToFindType>
Insert a new outgoing (server to client) topic
Returns an error if we are unable to find the type used for this topic
Sourcepub fn add_endpoint(
&mut self,
path: String,
req_key: Key,
resp_key: Key,
) -> Result<(), UnableToFindType>
pub fn add_endpoint( &mut self, path: String, req_key: Key, resp_key: Key, ) -> Result<(), UnableToFindType>
Insert a new endpoint
Returns an error if we are unable to find the type used for the request/response
Trait Implementations§
Source§impl Clone for SchemaReport
impl Clone for SchemaReport
Source§fn clone(&self) -> SchemaReport
fn clone(&self) -> SchemaReport
Returns a copy 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 SchemaReport
impl Debug for SchemaReport
Source§impl Default for SchemaReport
impl Default for SchemaReport
Source§impl<'de> Deserialize<'de> for SchemaReport
impl<'de> Deserialize<'de> for SchemaReport
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 PartialEq for SchemaReport
impl PartialEq for SchemaReport
Source§impl Schema for SchemaReport
impl Schema for SchemaReport
Source§impl Serialize for SchemaReport
impl Serialize for SchemaReport
impl StructuralPartialEq for SchemaReport
Auto Trait Implementations§
impl Freeze for SchemaReport
impl RefUnwindSafe for SchemaReport
impl Send for SchemaReport
impl Sync for SchemaReport
impl Unpin for SchemaReport
impl UnwindSafe for SchemaReport
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