pub struct CustomHouseSystem {
pub name: String,
pub aliases: Vec<String>,
pub notes: Option<String>,
}Expand description
A structured custom house-system definition.
Fields§
§name: StringStable human-readable name.
aliases: Vec<String>Optional alternative names or aliases.
notes: Option<String>Optional notes about formula, assumptions, or limits.
Implementations§
Source§impl CustomHouseSystem
impl CustomHouseSystem
Sourcepub fn validate(&self) -> Result<(), CustomDefinitionValidationError>
pub fn validate(&self) -> Result<(), CustomDefinitionValidationError>
Validates the custom house-system definition.
The canonical name must be non-empty and free of leading or trailing whitespace. Aliases and notes, when present, must follow the same canonical-text rule, and aliases must be unique after ASCII case-normalization, including against the canonical name.
Sourcepub fn validate_against_reserved_labels(
&self,
is_reserved_label: impl Fn(&str) -> bool,
) -> Result<(), CustomDefinitionValidationError>
pub fn validate_against_reserved_labels( &self, is_reserved_label: impl Fn(&str) -> bool, ) -> Result<(), CustomDefinitionValidationError>
Validates the custom house-system definition against reserved built-in labels.
This is a stricter form of validate that also rejects
a canonical name or alias that collides with a published built-in house-system
label. That keeps user-defined catalog entries distinguishable from the
built-in compatibility catalog when request validation or release profiles
surface them.