pub trait Value: ToString + FromStr {
    // Required method
    fn datatype() -> Datatype;

    // Provided methods
    fn valid_for(
        datatype: Option<Datatype>,
        format: &Option<String>
    ) -> Result<(), ValueError> { ... }
    fn valid_for_format(_format: &str) -> Result<(), ValueError> { ... }
}
Expand description

The value of a Homie property. This has implementations corresponding to the possible property datatypes.

Required Methods§

source

fn datatype() -> Datatype

The Homie datatype corresponding to this type.

Provided Methods§

source

fn valid_for( datatype: Option<Datatype>, format: &Option<String> ) -> Result<(), ValueError>

Check whether this value type is valid for the given property datatype and format string.

Returns Ok(()) if so, or Err(WrongFormat(...)) or Err(WrongDatatype(...)) if not.

The default implementation checks the datatype, and delegates to valid_for_format to check the format.

source

fn valid_for_format(_format: &str) -> Result<(), ValueError>

Check whether this value type is valid for the given property format string.

Returns Ok(()) if so, or Err(WrongFormat(...)) if not.

Implementations on Foreign Types§

source§

impl Value for bool

source§

impl Value for String

source§

impl Value for i64

source§

impl Value for f64

Implementors§

source§

impl Value for EnumValue

source§

impl<T: Color> Value for T