1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
//! Component properties module pub use yew_macro::Properties; /// Trait for building properties for a component pub trait Properties: Clone { /// Builder that will be used to construct properties type Builder; /// Entrypoint for building properties fn builder() -> Self::Builder; } /// Builder for when a component has no properties #[derive(Debug)] #[doc(hidden)] pub struct EmptyBuilder; impl Properties for () { type Builder = EmptyBuilder; fn builder() -> Self::Builder { EmptyBuilder } } impl EmptyBuilder { /// Build empty properties pub fn build(self) {} }