pub struct Component {Show 13 fields
pub id: ComponentId,
pub kind: ComponentKind,
pub source_name: Option<String>,
pub label: Option<String>,
pub description: Option<String>,
pub part_number: Option<String>,
pub bom_properties: BTreeMap<String, String>,
pub parent: Option<ComponentId>,
pub local_transform: [[f64; 4]; 4],
pub resolved_transform: [[f64; 4]; 4],
pub components: Vec<ComponentId>,
pub occurrences: Vec<OccurrenceId>,
pub native_ref: Option<String>,
}Expand description
A reusable product definition or structural container.
Fields§
§id: ComponentIdGlobally unique definition identity.
kind: ComponentKindStructural role.
source_name: Option<String>Stable source object name used by product/BOM tooling.
label: Option<String>User-visible component label, when distinct from the source name.
description: Option<String>User-maintained BOM description.
part_number: Option<String>User-maintained part or stock number.
bom_properties: BTreeMap<String, String>Additional persisted BOM identity fields by exact property name.
parent: Option<ComponentId>Direct containing component, absent for a product root.
local_transform: [[f64; 4]; 4]Placement relative to the direct container.
resolved_transform: [[f64; 4]; 4]Placement composed through all containing components exactly once.
components: Vec<ComponentId>Direct component definitions in source order.
occurrences: Vec<OccurrenceId>Direct placed uses in source order.
native_ref: Option<String>Format-native object supplying this definition.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Component
impl<'de> Deserialize<'de> for Component
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for Component
impl JsonSchema for Component
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreimpl StructuralPartialEq for Component
Auto Trait Implementations§
impl Freeze for Component
impl RefUnwindSafe for Component
impl Send for Component
impl Sync for Component
impl Unpin for Component
impl UnsafeUnpin for Component
impl UnwindSafe for Component
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more