pub trait NodeParams: Clone + Default {
type Evaluated;
// Required methods
fn property_defs() -> Vec<PropertyDef>;
fn is_property(id: &str) -> bool;
fn default_properties(&self) -> Vec<(&'static str, PropertyValue)>;
fn get_property(&self, id: &str) -> Option<PropertyExpression>;
fn eval(
&self,
ctx: &NodeParamEvalContext<'_>,
) -> Result<Self::Evaluated, LumenError>;
}Required Associated Types§
Required Methods§
fn property_defs() -> Vec<PropertyDef>
fn is_property(id: &str) -> bool
fn default_properties(&self) -> Vec<(&'static str, PropertyValue)>
fn get_property(&self, id: &str) -> Option<PropertyExpression>
fn eval( &self, ctx: &NodeParamEvalContext<'_>, ) -> Result<Self::Evaluated, LumenError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".