///|
// Represents a NEXT_ASSEMBLY_USAGE_OCCURRENCE entity.
// Example from kicadoutput01-roundtrip.step:
// NEXT_ASSEMBLY_USAGE_OCCURRENCE('1','R2',$,#5,#35,$)
pub struct NextAssemblyUsageOccurrence {
id : String
name : String
description : String
relating_product_definition : @step.Ref
related_product_definition : @step.Ref
reference_designator : String
}
///|
pub fn NextAssemblyUsageOccurrence::new(
id : String,
name : String,
description : String,
relating_product_definition : @step.Ref,
related_product_definition : @step.Ref,
reference_designator : String,
) -> NextAssemblyUsageOccurrence {
NextAssemblyUsageOccurrence::{
id,
name,
description,
relating_product_definition,
related_product_definition,
reference_designator,
}
}
///|
pub impl @step.Entity for NextAssemblyUsageOccurrence with fn to_step(self) {
let relating_str = "#\{self.relating_product_definition.id.value}"
let related_str = "#\{self.related_product_definition.id.value}"
"NEXT_ASSEMBLY_USAGE_OCCURRENCE(\{@step.step_str(self.id)},\{@step.step_str(self.name)},\{step_str_or_dollar(self.description)},\{relating_str},\{related_str},\{step_str_or_dollar(self.reference_designator)})"
}