Enum up_rust::UAttributesValidators 
source · pub enum UAttributesValidators {
    Publish,
    Notification,
    Request,
    Response,
}Expand description
Enum that hold the implementations of uattributesValidator according to type.
Variants§
Implementations§
source§impl UAttributesValidators
 
impl UAttributesValidators
sourcepub fn validator(&self) -> Box<dyn UAttributesValidator>
 
pub fn validator(&self) -> Box<dyn UAttributesValidator>
Gets the validator corresponding to this enum value.
§Examples
use up_rust::{UAttributes, UAttributesValidators, UMessageBuilder, UMessageType, UUID, UUri};
let topic = UUri::try_from("//my-vehicle/D45/23/A001")?;
let attributes = UAttributes {
   type_: UMessageType::UMESSAGE_TYPE_PUBLISH.into(),
   id: Some(UUID::build()).into(),
   source: Some(topic).into(),
   ..Default::default()
};
let validator = UAttributesValidators::Publish.validator();
assert!(validator.validate(&attributes).is_ok());sourcepub fn get_validator_for_attributes(
    attributes: &UAttributes,
) -> Box<dyn UAttributesValidator>
 
pub fn get_validator_for_attributes( attributes: &UAttributes, ) -> Box<dyn UAttributesValidator>
Gets a validator that can be used to check a given set of attributes.
§Examples
use up_rust::{UAttributes, UAttributesValidators, UMessageBuilder, UMessageType, UUID, UUri};
let topic = UUri::try_from("//my-vehicle/D45/23/A001")?;
let attributes = UAttributes {
   type_: UMessageType::UMESSAGE_TYPE_PUBLISH.into(),
   id: Some(UUID::build()).into(),
   source: Some(topic).into(),
   ..Default::default()
};
let validator = UAttributesValidators::get_validator_for_attributes(&attributes);
assert!(validator.validate(&attributes).is_ok());sourcepub fn get_validator(
    message_type: UMessageType,
) -> Box<dyn UAttributesValidator>
 
pub fn get_validator( message_type: UMessageType, ) -> Box<dyn UAttributesValidator>
Gets a validator that can be used to check attributes of a given type of message.
§Examples
use up_rust::{UAttributes, UAttributesValidators, UMessageBuilder, UMessageType, UUID, UUri};
let topic = UUri::try_from("//my-vehicle/D45/23/A001")?;
let attributes = UAttributes {
   type_: UMessageType::UMESSAGE_TYPE_PUBLISH.into(),
   id: Some(UUID::build()).into(),
   source: Some(topic).into(),
   ..Default::default()
};
let validator = UAttributesValidators::get_validator(UMessageType::UMESSAGE_TYPE_PUBLISH);
assert!(validator.validate(&attributes).is_ok());Auto Trait Implementations§
impl Freeze for UAttributesValidators
impl RefUnwindSafe for UAttributesValidators
impl Send for UAttributesValidators
impl Sync for UAttributesValidators
impl Unpin for UAttributesValidators
impl UnwindSafe for UAttributesValidators
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