Component

Trait Component 

Source
pub trait Component:
    Any
    + Send
    + Sync {
    // Required methods
    fn as_any(&self) -> &dyn Any;
    fn as_any_mut(&mut self) -> &mut dyn Any;
    fn component_id(&self) -> ComponentId;
    fn clone_box(&self) -> Box<dyn Component>;
    fn to_json(&self) -> Value;
}

Required Methods§

Source

fn as_any(&self) -> &dyn Any

Source

fn as_any_mut(&mut self) -> &mut dyn Any

Source

fn component_id(&self) -> ComponentId

Source

fn clone_box(&self) -> Box<dyn Component>

Source

fn to_json(&self) -> Value

Implementors§

Source§

impl<T> Component for T
where T: Any + Send + Sync + Clone + Serialize + DeserializeOwned + 'static,