pub trait ParamStore {
// Required methods
fn load(&self, apply: &mut dyn FnMut(&str, ParameterValue));
fn save(
&mut self,
params: &mut dyn Iterator<Item = (&str, &ParameterValue)>,
) -> Result<(), ParamStoreError>;
}Expand description
Backend that persists runtime parameter overrides across restarts (172.H).
Object-safe so the executor can hold a Box<dyn ParamStore>.
Required Methods§
Sourcefn load(&self, apply: &mut dyn FnMut(&str, ParameterValue))
fn load(&self, apply: &mut dyn FnMut(&str, ParameterValue))
Apply each persisted (name, value) via apply. Called once at boot
after defaults are declared, so persisted values override them.
Sourcefn save(
&mut self,
params: &mut dyn Iterator<Item = (&str, &ParameterValue)>,
) -> Result<(), ParamStoreError>
fn save( &mut self, params: &mut dyn Iterator<Item = (&str, &ParameterValue)>, ) -> Result<(), ParamStoreError>
Persist the full current parameter set. params yields (name, value)
for every declared parameter; called after a runtime set changes a
value. Non-scalar values (arrays, NotSet) are backend-defined and may
be skipped.