pub struct ParameterDef {
pub name: String,
pub label: String,
pub description: String,
pub param_type: ParameterType,
pub default: Option<Value>,
pub constraints: Option<Constraints>,
pub placeholder: Option<String>,
pub visible_when: Option<ParamCondition>,
pub required_when: Option<ParamCondition>,
pub surfaceable: bool,
}Expand description
A complete definition of one parameter a node accepts. Provides everything the engine (validation) and UI (control rendering) need.
Fields§
§name: StringThe parameter’s key name in config JSON (e.g., "quality").
label: StringHuman-readable label for the UI.
description: StringDescription shown as tooltip or help text.
param_type: ParameterTypeValue type — determines what UI control to render.
default: Option<Value>Default value (heterogeneous type via serde_json::Value).
constraints: Option<Constraints>Optional validation constraints (min/max range, required flag).
placeholder: Option<String>Placeholder text for input controls.
visible_when: Option<ParamCondition>Show this parameter only when another parameter matches a value.
required_when: Option<ParamCondition>Require this parameter only when another parameter matches a value.
surfaceable: boolWhether this param can be surfaced in container config panels.
Defaults to true. Set false for internal wiring params.
Trait Implementations§
Source§impl Clone for ParameterDef
impl Clone for ParameterDef
Source§fn clone(&self) -> ParameterDef
fn clone(&self) -> ParameterDef
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ParameterDef
impl Debug for ParameterDef
Source§impl Default for ParameterDef
Manual Default because surfaceable must default to true, not false.
impl Default for ParameterDef
Manual Default because surfaceable must default to true, not false.