// @generated by codegen. DO NOT EDIT.
// Schema-faithful model + generic 2-pass read + topo write.
use super::model::*;
fn real(v: f64) -> String {
// Normalize signed zero to "0." (matches step-io writer/lexical.rs; -0.0 and
// +0.0 are the same value/point). The round-trip gate canonicalizes signed
// zero in merkle (`(r+0.0).to_bits()`), so this is NORM, not LOSS.
if v == 0.0 {
return "0.".to_string();
}
if v == v.trunc() && v.is_finite() && v.abs() < 1e15 {
return format!("{}.", v as i64);
}
let s = format!("{v:E}");
if let Some(epos) = s.find('E') {
let (mant, exp) = s.split_at(epos);
let mant = if mant.contains('.') {
mant.to_string()
} else {
format!("{mant}.")
};
format!("{mant}{exp}")
} else {
s
}
}
fn measure(m: &MeasureValue) -> String {
let v = match &m.value {
MeasureScalar::Int(i) => format!("{i}"),
MeasureScalar::Real(r) => real(*r),
};
match &m.type_name {
Some(t) => format!("{t}({v})"),
None => v,
}
}
fn int_measure(m: &IntMeasureValue) -> String {
match &m.type_name {
Some(t) => format!("{t}({})", m.value),
None => format!("{}", m.value),
}
}
fn string_select(m: &StringSelectValue) -> String {
match &m.type_name {
Some(t) => format!("{t}({})", step_str(&m.value)),
None => step_str(&m.value),
}
}
/// Part 21 string literal: single-quoted, inner `'` doubled to `''` (matches
/// step-io `writer/lexical.rs::format_string`). Non-ASCII passes through raw.
fn step_str(s: &str) -> String {
let mut out = String::with_capacity(s.len() + 2);
out.push('\'');
for ch in s.chars() {
if ch == '\'' {
out.push('\'');
}
out.push(ch);
}
out.push('\'');
out
}
pub struct Writer<'a> {
model: &'a StepModel,
next: u64,
out: String,
rename: std::collections::HashMap<EntityKey, &'static str>,
action_ids: Vec<Option<u64>>,
action_assignment_ids: Vec<Option<u64>>,
action_directive_ids: Vec<Option<u64>>,
action_method_ids: Vec<Option<u64>>,
action_method_relationship_ids: Vec<Option<u64>>,
action_property_ids: Vec<Option<u64>>,
action_relationship_ids: Vec<Option<u64>>,
action_request_assignment_ids: Vec<Option<u64>>,
action_request_solution_ids: Vec<Option<u64>>,
action_resource_ids: Vec<Option<u64>>,
action_resource_relationship_ids: Vec<Option<u64>>,
action_resource_requirement_ids: Vec<Option<u64>>,
action_resource_type_ids: Vec<Option<u64>>,
address_ids: Vec<Option<u64>>,
advanced_brep_shape_representation_ids: Vec<Option<u64>>,
advanced_face_ids: Vec<Option<u64>>,
all_around_shape_aspect_ids: Vec<Option<u64>>,
angular_location_ids: Vec<Option<u64>>,
angular_size_ids: Vec<Option<u64>>,
angularity_tolerance_ids: Vec<Option<u64>>,
annotation_curve_occurrence_ids: Vec<Option<u64>>,
annotation_fill_area_occurrence_ids: Vec<Option<u64>>,
annotation_occurrence_ids: Vec<Option<u64>>,
annotation_occurrence_associativity_ids: Vec<Option<u64>>,
annotation_occurrence_relationship_ids: Vec<Option<u64>>,
annotation_placeholder_leader_line_ids: Vec<Option<u64>>,
annotation_placeholder_occurrence_ids: Vec<Option<u64>>,
annotation_placeholder_occurrence_with_leader_line_ids: Vec<Option<u64>>,
annotation_plane_ids: Vec<Option<u64>>,
annotation_symbol_ids: Vec<Option<u64>>,
annotation_symbol_occurrence_ids: Vec<Option<u64>>,
annotation_text_ids: Vec<Option<u64>>,
annotation_text_character_ids: Vec<Option<u64>>,
annotation_text_occurrence_ids: Vec<Option<u64>>,
annotation_to_annotation_leader_line_ids: Vec<Option<u64>>,
annotation_to_model_leader_line_ids: Vec<Option<u64>>,
apll_point_ids: Vec<Option<u64>>,
apll_point_with_surface_ids: Vec<Option<u64>>,
application_context_ids: Vec<Option<u64>>,
application_context_element_ids: Vec<Option<u64>>,
application_protocol_definition_ids: Vec<Option<u64>>,
applied_approval_assignment_ids: Vec<Option<u64>>,
applied_date_and_time_assignment_ids: Vec<Option<u64>>,
applied_document_reference_ids: Vec<Option<u64>>,
applied_external_identification_assignment_ids: Vec<Option<u64>>,
applied_group_assignment_ids: Vec<Option<u64>>,
applied_person_and_organization_assignment_ids: Vec<Option<u64>>,
applied_presented_item_ids: Vec<Option<u64>>,
applied_security_classification_assignment_ids: Vec<Option<u64>>,
approval_ids: Vec<Option<u64>>,
approval_assignment_ids: Vec<Option<u64>>,
approval_date_time_ids: Vec<Option<u64>>,
approval_person_organization_ids: Vec<Option<u64>>,
approval_role_ids: Vec<Option<u64>>,
approval_status_ids: Vec<Option<u64>>,
approximation_tolerance_ids: Vec<Option<u64>>,
approximation_tolerance_deviation_ids: Vec<Option<u64>>,
approximation_tolerance_parameter_ids: Vec<Option<u64>>,
area_in_set_ids: Vec<Option<u64>>,
area_unit_ids: Vec<Option<u64>>,
ascribable_state_ids: Vec<Option<u64>>,
ascribable_state_relationship_ids: Vec<Option<u64>>,
assembly_component_usage_ids: Vec<Option<u64>>,
auxiliary_leader_line_ids: Vec<Option<u64>>,
axis1_placement_ids: Vec<Option<u64>>,
axis2_placement2d_ids: Vec<Option<u64>>,
axis2_placement3d_ids: Vec<Option<u64>>,
b_spline_curve_ids: Vec<Option<u64>>,
b_spline_curve_with_knots_ids: Vec<Option<u64>>,
b_spline_surface_ids: Vec<Option<u64>>,
b_spline_surface_with_knots_ids: Vec<Option<u64>>,
bezier_curve_ids: Vec<Option<u64>>,
bezier_surface_ids: Vec<Option<u64>>,
bounded_curve_ids: Vec<Option<u64>>,
bounded_pcurve_ids: Vec<Option<u64>>,
bounded_surface_ids: Vec<Option<u64>>,
bounded_surface_curve_ids: Vec<Option<u64>>,
brep_with_voids_ids: Vec<Option<u64>>,
calendar_date_ids: Vec<Option<u64>>,
camera_image_ids: Vec<Option<u64>>,
camera_image3d_with_scale_ids: Vec<Option<u64>>,
camera_model_ids: Vec<Option<u64>>,
camera_model_d3_ids: Vec<Option<u64>>,
camera_model_d3_multi_clipping_ids: Vec<Option<u64>>,
camera_model_d3_with_hlhsr_ids: Vec<Option<u64>>,
camera_usage_ids: Vec<Option<u64>>,
cartesian_point_ids: Vec<Option<u64>>,
cc_design_approval_ids: Vec<Option<u64>>,
cc_design_date_and_time_assignment_ids: Vec<Option<u64>>,
cc_design_person_and_organization_assignment_ids: Vec<Option<u64>>,
cc_design_security_classification_ids: Vec<Option<u64>>,
centre_of_symmetry_ids: Vec<Option<u64>>,
certification_ids: Vec<Option<u64>>,
certification_type_ids: Vec<Option<u64>>,
change_ids: Vec<Option<u64>>,
change_request_ids: Vec<Option<u64>>,
character_glyph_style_outline_ids: Vec<Option<u64>>,
character_glyph_style_stroke_ids: Vec<Option<u64>>,
characterized_item_within_representation_ids: Vec<Option<u64>>,
characterized_object_ids: Vec<Option<u64>>,
characterized_representation_ids: Vec<Option<u64>>,
circle_ids: Vec<Option<u64>>,
circular_runout_tolerance_ids: Vec<Option<u64>>,
closed_shell_ids: Vec<Option<u64>>,
coaxiality_tolerance_ids: Vec<Option<u64>>,
colour_ids: Vec<Option<u64>>,
colour_rgb_ids: Vec<Option<u64>>,
colour_specification_ids: Vec<Option<u64>>,
common_datum_ids: Vec<Option<u64>>,
complex_triangulated_face_ids: Vec<Option<u64>>,
complex_triangulated_surface_set_ids: Vec<Option<u64>>,
composite_curve_ids: Vec<Option<u64>>,
composite_curve_segment_ids: Vec<Option<u64>>,
composite_group_shape_aspect_ids: Vec<Option<u64>>,
composite_shape_aspect_ids: Vec<Option<u64>>,
composite_text_ids: Vec<Option<u64>>,
compound_representation_item_ids: Vec<Option<u64>>,
concentricity_tolerance_ids: Vec<Option<u64>>,
configuration_design_ids: Vec<Option<u64>>,
configuration_effectivity_ids: Vec<Option<u64>>,
configuration_item_ids: Vec<Option<u64>>,
conic_ids: Vec<Option<u64>>,
conical_surface_ids: Vec<Option<u64>>,
connected_face_set_ids: Vec<Option<u64>>,
constructive_geometry_representation_ids: Vec<Option<u64>>,
constructive_geometry_representation_relationship_ids: Vec<Option<u64>>,
context_dependent_over_riding_styled_item_ids: Vec<Option<u64>>,
context_dependent_shape_representation_ids: Vec<Option<u64>>,
context_dependent_unit_ids: Vec<Option<u64>>,
continuous_shape_aspect_ids: Vec<Option<u64>>,
contract_ids: Vec<Option<u64>>,
contract_type_ids: Vec<Option<u64>>,
conversion_based_unit_ids: Vec<Option<u64>>,
coordinated_universal_time_offset_ids: Vec<Option<u64>>,
coordinates_list_ids: Vec<Option<u64>>,
curve_ids: Vec<Option<u64>>,
curve_style_ids: Vec<Option<u64>>,
curve_style_font_ids: Vec<Option<u64>>,
curve_style_font_and_scaling_ids: Vec<Option<u64>>,
curve_style_font_pattern_ids: Vec<Option<u64>>,
curve_style_rendering_ids: Vec<Option<u64>>,
cylindrical_surface_ids: Vec<Option<u64>>,
cylindricity_tolerance_ids: Vec<Option<u64>>,
date_ids: Vec<Option<u64>>,
date_and_time_ids: Vec<Option<u64>>,
date_and_time_assignment_ids: Vec<Option<u64>>,
date_role_ids: Vec<Option<u64>>,
date_time_role_ids: Vec<Option<u64>>,
datum_ids: Vec<Option<u64>>,
datum_feature_ids: Vec<Option<u64>>,
datum_reference_ids: Vec<Option<u64>>,
datum_reference_compartment_ids: Vec<Option<u64>>,
datum_reference_element_ids: Vec<Option<u64>>,
datum_reference_modifier_with_value_ids: Vec<Option<u64>>,
datum_system_ids: Vec<Option<u64>>,
datum_target_ids: Vec<Option<u64>>,
default_model_geometric_view_ids: Vec<Option<u64>>,
defined_character_glyph_ids: Vec<Option<u64>>,
defined_symbol_ids: Vec<Option<u64>>,
definitional_representation_ids: Vec<Option<u64>>,
definitional_representation_relationship_ids: Vec<Option<u64>>,
definitional_representation_relationship_with_same_context_ids: Vec<Option<u64>>,
degenerate_toroidal_surface_ids: Vec<Option<u64>>,
derived_shape_aspect_ids: Vec<Option<u64>>,
derived_unit_ids: Vec<Option<u64>>,
derived_unit_element_ids: Vec<Option<u64>>,
description_attribute_ids: Vec<Option<u64>>,
descriptive_representation_item_ids: Vec<Option<u64>>,
design_context_ids: Vec<Option<u64>>,
dimensional_characteristic_representation_ids: Vec<Option<u64>>,
dimensional_exponents_ids: Vec<Option<u64>>,
dimensional_location_ids: Vec<Option<u64>>,
dimensional_location_with_path_ids: Vec<Option<u64>>,
dimensional_size_ids: Vec<Option<u64>>,
dimensional_size_with_datum_feature_ids: Vec<Option<u64>>,
dimensional_size_with_path_ids: Vec<Option<u64>>,
directed_dimensional_location_ids: Vec<Option<u64>>,
direction_ids: Vec<Option<u64>>,
document_ids: Vec<Option<u64>>,
document_file_ids: Vec<Option<u64>>,
document_product_association_ids: Vec<Option<u64>>,
document_product_equivalence_ids: Vec<Option<u64>>,
document_reference_ids: Vec<Option<u64>>,
document_representation_type_ids: Vec<Option<u64>>,
document_type_ids: Vec<Option<u64>>,
draughting_annotation_occurrence_ids: Vec<Option<u64>>,
draughting_callout_ids: Vec<Option<u64>>,
draughting_callout_relationship_ids: Vec<Option<u64>>,
draughting_model_ids: Vec<Option<u64>>,
draughting_model_item_association_ids: Vec<Option<u64>>,
draughting_model_item_association_with_placeholder_ids: Vec<Option<u64>>,
draughting_pre_defined_colour_ids: Vec<Option<u64>>,
draughting_pre_defined_curve_font_ids: Vec<Option<u64>>,
draughting_pre_defined_text_font_ids: Vec<Option<u64>>,
edge_ids: Vec<Option<u64>>,
edge_curve_ids: Vec<Option<u64>>,
edge_loop_ids: Vec<Option<u64>>,
effectivity_ids: Vec<Option<u64>>,
elementary_surface_ids: Vec<Option<u64>>,
ellipse_ids: Vec<Option<u64>>,
expression_ids: Vec<Option<u64>>,
external_identification_assignment_ids: Vec<Option<u64>>,
external_source_ids: Vec<Option<u64>>,
externally_defined_character_glyph_ids: Vec<Option<u64>>,
externally_defined_curve_font_ids: Vec<Option<u64>>,
externally_defined_hatch_style_ids: Vec<Option<u64>>,
externally_defined_item_ids: Vec<Option<u64>>,
externally_defined_style_ids: Vec<Option<u64>>,
externally_defined_symbol_ids: Vec<Option<u64>>,
externally_defined_text_font_ids: Vec<Option<u64>>,
externally_defined_tile_ids: Vec<Option<u64>>,
externally_defined_tile_style_ids: Vec<Option<u64>>,
face_ids: Vec<Option<u64>>,
face_bound_ids: Vec<Option<u64>>,
face_outer_bound_ids: Vec<Option<u64>>,
face_surface_ids: Vec<Option<u64>>,
feature_for_datum_target_relationship_ids: Vec<Option<u64>>,
fill_area_style_ids: Vec<Option<u64>>,
fill_area_style_colour_ids: Vec<Option<u64>>,
fill_area_style_hatching_ids: Vec<Option<u64>>,
fill_area_style_tile_coloured_region_ids: Vec<Option<u64>>,
fill_area_style_tile_curve_with_style_ids: Vec<Option<u64>>,
fill_area_style_tile_symbol_with_style_ids: Vec<Option<u64>>,
fill_area_style_tiles_ids: Vec<Option<u64>>,
flatness_tolerance_ids: Vec<Option<u64>>,
founded_item_ids: Vec<Option<u64>>,
functionally_defined_transformation_ids: Vec<Option<u64>>,
general_datum_reference_ids: Vec<Option<u64>>,
general_property_ids: Vec<Option<u64>>,
general_property_association_ids: Vec<Option<u64>>,
generic_expression_ids: Vec<Option<u64>>,
generic_literal_ids: Vec<Option<u64>>,
generic_product_definition_reference_ids: Vec<Option<u64>>,
geometric_curve_set_ids: Vec<Option<u64>>,
geometric_item_specific_usage_ids: Vec<Option<u64>>,
geometric_representation_context_ids: Vec<Option<u64>>,
geometric_representation_item_ids: Vec<Option<u64>>,
geometric_set_ids: Vec<Option<u64>>,
geometric_tolerance_ids: Vec<Option<u64>>,
geometric_tolerance_relationship_ids: Vec<Option<u64>>,
geometric_tolerance_with_datum_reference_ids: Vec<Option<u64>>,
geometric_tolerance_with_defined_area_unit_ids: Vec<Option<u64>>,
geometric_tolerance_with_defined_unit_ids: Vec<Option<u64>>,
geometric_tolerance_with_maximum_tolerance_ids: Vec<Option<u64>>,
geometric_tolerance_with_modifiers_ids: Vec<Option<u64>>,
geometrically_bounded_surface_shape_representation_ids: Vec<Option<u64>>,
geometrically_bounded_wireframe_shape_representation_ids: Vec<Option<u64>>,
global_uncertainty_assigned_context_ids: Vec<Option<u64>>,
global_unit_assigned_context_ids: Vec<Option<u64>>,
group_ids: Vec<Option<u64>>,
group_assignment_ids: Vec<Option<u64>>,
hyperbola_ids: Vec<Option<u64>>,
id_attribute_ids: Vec<Option<u64>>,
identification_assignment_ids: Vec<Option<u64>>,
identification_role_ids: Vec<Option<u64>>,
int_literal_ids: Vec<Option<u64>>,
integer_representation_item_ids: Vec<Option<u64>>,
intersection_curve_ids: Vec<Option<u64>>,
invisibility_ids: Vec<Option<u64>>,
item_defined_transformation_ids: Vec<Option<u64>>,
item_identified_representation_usage_ids: Vec<Option<u64>>,
leader_curve_ids: Vec<Option<u64>>,
leader_directed_callout_ids: Vec<Option<u64>>,
leader_terminator_ids: Vec<Option<u64>>,
length_measure_with_unit_ids: Vec<Option<u64>>,
length_unit_ids: Vec<Option<u64>>,
limits_and_fits_ids: Vec<Option<u64>>,
line_ids: Vec<Option<u64>>,
line_profile_tolerance_ids: Vec<Option<u64>>,
literal_number_ids: Vec<Option<u64>>,
local_time_ids: Vec<Option<u64>>,
loop_ids: Vec<Option<u64>>,
make_from_usage_option_ids: Vec<Option<u64>>,
manifold_solid_brep_ids: Vec<Option<u64>>,
manifold_surface_shape_representation_ids: Vec<Option<u64>>,
mapped_item_ids: Vec<Option<u64>>,
mass_measure_with_unit_ids: Vec<Option<u64>>,
mass_unit_ids: Vec<Option<u64>>,
measure_qualification_ids: Vec<Option<u64>>,
measure_representation_item_ids: Vec<Option<u64>>,
measure_with_unit_ids: Vec<Option<u64>>,
mechanical_context_ids: Vec<Option<u64>>,
mechanical_design_and_draughting_relationship_ids: Vec<Option<u64>>,
mechanical_design_geometric_presentation_representation_ids: Vec<Option<u64>>,
mechanical_design_presentation_representation_with_draughting_ids: Vec<Option<u64>>,
mechanical_design_shaded_presentation_representation_ids: Vec<Option<u64>>,
model_geometric_view_ids: Vec<Option<u64>>,
modified_geometric_tolerance_ids: Vec<Option<u64>>,
name_attribute_ids: Vec<Option<u64>>,
named_unit_ids: Vec<Option<u64>>,
next_assembly_usage_occurrence_ids: Vec<Option<u64>>,
numeric_expression_ids: Vec<Option<u64>>,
object_role_ids: Vec<Option<u64>>,
offset_surface_ids: Vec<Option<u64>>,
one_direction_repeat_factor_ids: Vec<Option<u64>>,
open_shell_ids: Vec<Option<u64>>,
organization_ids: Vec<Option<u64>>,
organization_relationship_ids: Vec<Option<u64>>,
organization_role_ids: Vec<Option<u64>>,
organization_type_ids: Vec<Option<u64>>,
organization_type_role_ids: Vec<Option<u64>>,
organizational_address_ids: Vec<Option<u64>>,
organizational_project_ids: Vec<Option<u64>>,
organizational_project_relationship_ids: Vec<Option<u64>>,
organizational_project_role_ids: Vec<Option<u64>>,
oriented_closed_shell_ids: Vec<Option<u64>>,
oriented_edge_ids: Vec<Option<u64>>,
over_riding_styled_item_ids: Vec<Option<u64>>,
parallelism_tolerance_ids: Vec<Option<u64>>,
parametric_representation_context_ids: Vec<Option<u64>>,
path_ids: Vec<Option<u64>>,
pcurve_ids: Vec<Option<u64>>,
perpendicularity_tolerance_ids: Vec<Option<u64>>,
person_ids: Vec<Option<u64>>,
person_and_organization_ids: Vec<Option<u64>>,
person_and_organization_address_ids: Vec<Option<u64>>,
person_and_organization_assignment_ids: Vec<Option<u64>>,
person_and_organization_role_ids: Vec<Option<u64>>,
personal_address_ids: Vec<Option<u64>>,
placed_datum_target_feature_ids: Vec<Option<u64>>,
placement_ids: Vec<Option<u64>>,
planar_box_ids: Vec<Option<u64>>,
planar_extent_ids: Vec<Option<u64>>,
plane_ids: Vec<Option<u64>>,
plane_angle_measure_with_unit_ids: Vec<Option<u64>>,
plane_angle_unit_ids: Vec<Option<u64>>,
plus_minus_tolerance_ids: Vec<Option<u64>>,
point_ids: Vec<Option<u64>>,
point_style_ids: Vec<Option<u64>>,
poly_loop_ids: Vec<Option<u64>>,
polyline_ids: Vec<Option<u64>>,
position_tolerance_ids: Vec<Option<u64>>,
pre_defined_character_glyph_ids: Vec<Option<u64>>,
pre_defined_colour_ids: Vec<Option<u64>>,
pre_defined_curve_font_ids: Vec<Option<u64>>,
pre_defined_item_ids: Vec<Option<u64>>,
pre_defined_marker_ids: Vec<Option<u64>>,
pre_defined_point_marker_symbol_ids: Vec<Option<u64>>,
pre_defined_presentation_style_ids: Vec<Option<u64>>,
pre_defined_surface_side_style_ids: Vec<Option<u64>>,
pre_defined_symbol_ids: Vec<Option<u64>>,
pre_defined_terminator_symbol_ids: Vec<Option<u64>>,
pre_defined_text_font_ids: Vec<Option<u64>>,
pre_defined_tile_ids: Vec<Option<u64>>,
precision_qualifier_ids: Vec<Option<u64>>,
presentation_area_ids: Vec<Option<u64>>,
presentation_layer_assignment_ids: Vec<Option<u64>>,
presentation_representation_ids: Vec<Option<u64>>,
presentation_set_ids: Vec<Option<u64>>,
presentation_size_ids: Vec<Option<u64>>,
presentation_style_assignment_ids: Vec<Option<u64>>,
presentation_style_by_context_ids: Vec<Option<u64>>,
presentation_view_ids: Vec<Option<u64>>,
presented_item_ids: Vec<Option<u64>>,
presented_item_representation_ids: Vec<Option<u64>>,
product_ids: Vec<Option<u64>>,
product_category_ids: Vec<Option<u64>>,
product_category_relationship_ids: Vec<Option<u64>>,
product_concept_ids: Vec<Option<u64>>,
product_concept_context_ids: Vec<Option<u64>>,
product_concept_feature_ids: Vec<Option<u64>>,
product_concept_feature_category_ids: Vec<Option<u64>>,
product_context_ids: Vec<Option<u64>>,
product_definition_ids: Vec<Option<u64>>,
product_definition_context_ids: Vec<Option<u64>>,
product_definition_context_association_ids: Vec<Option<u64>>,
product_definition_context_role_ids: Vec<Option<u64>>,
product_definition_effectivity_ids: Vec<Option<u64>>,
product_definition_formation_ids: Vec<Option<u64>>,
product_definition_formation_with_specified_source_ids: Vec<Option<u64>>,
product_definition_occurrence_ids: Vec<Option<u64>>,
product_definition_relationship_ids: Vec<Option<u64>>,
product_definition_relationship_relationship_ids: Vec<Option<u64>>,
product_definition_shape_ids: Vec<Option<u64>>,
product_definition_substitute_ids: Vec<Option<u64>>,
product_definition_usage_ids: Vec<Option<u64>>,
product_definition_with_associated_documents_ids: Vec<Option<u64>>,
product_related_product_category_ids: Vec<Option<u64>>,
projected_zone_definition_ids: Vec<Option<u64>>,
property_definition_ids: Vec<Option<u64>>,
property_definition_relationship_ids: Vec<Option<u64>>,
property_definition_representation_ids: Vec<Option<u64>>,
qualified_representation_item_ids: Vec<Option<u64>>,
quasi_uniform_curve_ids: Vec<Option<u64>>,
quasi_uniform_surface_ids: Vec<Option<u64>>,
ratio_measure_with_unit_ids: Vec<Option<u64>>,
ratio_unit_ids: Vec<Option<u64>>,
rational_b_spline_curve_ids: Vec<Option<u64>>,
rational_b_spline_surface_ids: Vec<Option<u64>>,
real_literal_ids: Vec<Option<u64>>,
real_representation_item_ids: Vec<Option<u64>>,
repositioned_tessellated_item_ids: Vec<Option<u64>>,
representation_ids: Vec<Option<u64>>,
representation_context_ids: Vec<Option<u64>>,
representation_context_reference_ids: Vec<Option<u64>>,
representation_item_ids: Vec<Option<u64>>,
representation_map_ids: Vec<Option<u64>>,
representation_reference_ids: Vec<Option<u64>>,
representation_relationship_ids: Vec<Option<u64>>,
representation_relationship_with_transformation_ids: Vec<Option<u64>>,
resource_property_ids: Vec<Option<u64>>,
resource_requirement_type_ids: Vec<Option<u64>>,
role_association_ids: Vec<Option<u64>>,
roundness_tolerance_ids: Vec<Option<u64>>,
seam_curve_ids: Vec<Option<u64>>,
security_classification_ids: Vec<Option<u64>>,
security_classification_assignment_ids: Vec<Option<u64>>,
security_classification_level_ids: Vec<Option<u64>>,
shape_aspect_ids: Vec<Option<u64>>,
shape_aspect_associativity_ids: Vec<Option<u64>>,
shape_aspect_deriving_relationship_ids: Vec<Option<u64>>,
shape_aspect_relationship_ids: Vec<Option<u64>>,
shape_definition_representation_ids: Vec<Option<u64>>,
shape_dimension_representation_ids: Vec<Option<u64>>,
shape_representation_ids: Vec<Option<u64>>,
shape_representation_relationship_ids: Vec<Option<u64>>,
shape_representation_with_parameters_ids: Vec<Option<u64>>,
shell_based_surface_model_ids: Vec<Option<u64>>,
si_unit_ids: Vec<Option<u64>>,
simple_generic_expression_ids: Vec<Option<u64>>,
simple_numeric_expression_ids: Vec<Option<u64>>,
solid_angle_unit_ids: Vec<Option<u64>>,
solid_model_ids: Vec<Option<u64>>,
spherical_surface_ids: Vec<Option<u64>>,
start_request_ids: Vec<Option<u64>>,
start_work_ids: Vec<Option<u64>>,
state_observed_ids: Vec<Option<u64>>,
state_type_ids: Vec<Option<u64>>,
straightness_tolerance_ids: Vec<Option<u64>>,
styled_item_ids: Vec<Option<u64>>,
surface_ids: Vec<Option<u64>>,
surface_curve_ids: Vec<Option<u64>>,
surface_of_linear_extrusion_ids: Vec<Option<u64>>,
surface_of_revolution_ids: Vec<Option<u64>>,
surface_profile_tolerance_ids: Vec<Option<u64>>,
surface_rendering_properties_ids: Vec<Option<u64>>,
surface_side_style_ids: Vec<Option<u64>>,
surface_style_boundary_ids: Vec<Option<u64>>,
surface_style_control_grid_ids: Vec<Option<u64>>,
surface_style_fill_area_ids: Vec<Option<u64>>,
surface_style_parameter_line_ids: Vec<Option<u64>>,
surface_style_reflectance_ambient_ids: Vec<Option<u64>>,
surface_style_rendering_ids: Vec<Option<u64>>,
surface_style_rendering_with_properties_ids: Vec<Option<u64>>,
surface_style_segmentation_curve_ids: Vec<Option<u64>>,
surface_style_silhouette_ids: Vec<Option<u64>>,
surface_style_transparent_ids: Vec<Option<u64>>,
surface_style_usage_ids: Vec<Option<u64>>,
swept_surface_ids: Vec<Option<u64>>,
symbol_colour_ids: Vec<Option<u64>>,
symbol_representation_ids: Vec<Option<u64>>,
symbol_style_ids: Vec<Option<u64>>,
symbol_target_ids: Vec<Option<u64>>,
symmetry_tolerance_ids: Vec<Option<u64>>,
terminator_symbol_ids: Vec<Option<u64>>,
tessellated_annotation_occurrence_ids: Vec<Option<u64>>,
tessellated_curve_set_ids: Vec<Option<u64>>,
tessellated_face_ids: Vec<Option<u64>>,
tessellated_geometric_set_ids: Vec<Option<u64>>,
tessellated_item_ids: Vec<Option<u64>>,
tessellated_shape_representation_ids: Vec<Option<u64>>,
tessellated_shell_ids: Vec<Option<u64>>,
tessellated_solid_ids: Vec<Option<u64>>,
tessellated_structured_item_ids: Vec<Option<u64>>,
tessellated_surface_set_ids: Vec<Option<u64>>,
text_font_ids: Vec<Option<u64>>,
text_literal_ids: Vec<Option<u64>>,
text_style_ids: Vec<Option<u64>>,
text_style_for_defined_font_ids: Vec<Option<u64>>,
text_style_with_box_characteristics_ids: Vec<Option<u64>>,
texture_style_specification_ids: Vec<Option<u64>>,
texture_style_tessellation_specification_ids: Vec<Option<u64>>,
time_unit_ids: Vec<Option<u64>>,
tolerance_value_ids: Vec<Option<u64>>,
tolerance_zone_ids: Vec<Option<u64>>,
tolerance_zone_definition_ids: Vec<Option<u64>>,
tolerance_zone_form_ids: Vec<Option<u64>>,
tolerance_zone_with_datum_ids: Vec<Option<u64>>,
topological_representation_item_ids: Vec<Option<u64>>,
toroidal_surface_ids: Vec<Option<u64>>,
total_runout_tolerance_ids: Vec<Option<u64>>,
trimmed_curve_ids: Vec<Option<u64>>,
two_direction_repeat_factor_ids: Vec<Option<u64>>,
type_qualifier_ids: Vec<Option<u64>>,
uncertainty_measure_with_unit_ids: Vec<Option<u64>>,
uncertainty_qualifier_ids: Vec<Option<u64>>,
unequally_disposed_geometric_tolerance_ids: Vec<Option<u64>>,
uniform_curve_ids: Vec<Option<u64>>,
uniform_surface_ids: Vec<Option<u64>>,
value_format_type_qualifier_ids: Vec<Option<u64>>,
value_representation_item_ids: Vec<Option<u64>>,
vector_ids: Vec<Option<u64>>,
versioned_action_request_ids: Vec<Option<u64>>,
vertex_ids: Vec<Option<u64>>,
vertex_loop_ids: Vec<Option<u64>>,
vertex_point_ids: Vec<Option<u64>>,
vertex_shell_ids: Vec<Option<u64>>,
view_volume_ids: Vec<Option<u64>>,
volume_unit_ids: Vec<Option<u64>>,
wire_shell_ids: Vec<Option<u64>>,
complex_ids: Vec<Option<u64>>,
}
impl<'a> Writer<'a> {
pub fn new(model: &'a StepModel) -> Self {
Writer {
model,
next: 1,
out: String::new(),
rename: std::collections::HashMap::new(),
action_ids: vec![None; model.action_arena.items.len()],
action_assignment_ids: vec![None; model.action_assignment_arena.items.len()],
action_directive_ids: vec![None; model.action_directive_arena.items.len()],
action_method_ids: vec![None; model.action_method_arena.items.len()],
action_method_relationship_ids: vec![
None;
model.action_method_relationship_arena.items.len()
],
action_property_ids: vec![None; model.action_property_arena.items.len()],
action_relationship_ids: vec![None; model.action_relationship_arena.items.len()],
action_request_assignment_ids: vec![
None;
model.action_request_assignment_arena.items.len()
],
action_request_solution_ids: vec![
None;
model.action_request_solution_arena.items.len()
],
action_resource_ids: vec![None; model.action_resource_arena.items.len()],
action_resource_relationship_ids: vec![
None;
model
.action_resource_relationship_arena
.items
.len()
],
action_resource_requirement_ids: vec![
None;
model
.action_resource_requirement_arena
.items
.len()
],
action_resource_type_ids: vec![None; model.action_resource_type_arena.items.len()],
address_ids: vec![None; model.address_arena.items.len()],
advanced_brep_shape_representation_ids: vec![
None;
model
.advanced_brep_shape_representation_arena
.items
.len()
],
advanced_face_ids: vec![None; model.advanced_face_arena.items.len()],
all_around_shape_aspect_ids: vec![
None;
model.all_around_shape_aspect_arena.items.len()
],
angular_location_ids: vec![None; model.angular_location_arena.items.len()],
angular_size_ids: vec![None; model.angular_size_arena.items.len()],
angularity_tolerance_ids: vec![None; model.angularity_tolerance_arena.items.len()],
annotation_curve_occurrence_ids: vec![
None;
model
.annotation_curve_occurrence_arena
.items
.len()
],
annotation_fill_area_occurrence_ids: vec![
None;
model
.annotation_fill_area_occurrence_arena
.items
.len()
],
annotation_occurrence_ids: vec![None; model.annotation_occurrence_arena.items.len()],
annotation_occurrence_associativity_ids: vec![
None;
model
.annotation_occurrence_associativity_arena
.items
.len()
],
annotation_occurrence_relationship_ids: vec![
None;
model
.annotation_occurrence_relationship_arena
.items
.len()
],
annotation_placeholder_leader_line_ids: vec![
None;
model
.annotation_placeholder_leader_line_arena
.items
.len()
],
annotation_placeholder_occurrence_ids: vec![
None;
model
.annotation_placeholder_occurrence_arena
.items
.len()
],
annotation_placeholder_occurrence_with_leader_line_ids: vec![
None;
model
.annotation_placeholder_occurrence_with_leader_line_arena
.items
.len()
],
annotation_plane_ids: vec![None; model.annotation_plane_arena.items.len()],
annotation_symbol_ids: vec![None; model.annotation_symbol_arena.items.len()],
annotation_symbol_occurrence_ids: vec![
None;
model
.annotation_symbol_occurrence_arena
.items
.len()
],
annotation_text_ids: vec![None; model.annotation_text_arena.items.len()],
annotation_text_character_ids: vec![
None;
model.annotation_text_character_arena.items.len()
],
annotation_text_occurrence_ids: vec![
None;
model.annotation_text_occurrence_arena.items.len()
],
annotation_to_annotation_leader_line_ids: vec![
None;
model
.annotation_to_annotation_leader_line_arena
.items
.len()
],
annotation_to_model_leader_line_ids: vec![
None;
model
.annotation_to_model_leader_line_arena
.items
.len()
],
apll_point_ids: vec![None; model.apll_point_arena.items.len()],
apll_point_with_surface_ids: vec![
None;
model.apll_point_with_surface_arena.items.len()
],
application_context_ids: vec![None; model.application_context_arena.items.len()],
application_context_element_ids: vec![
None;
model
.application_context_element_arena
.items
.len()
],
application_protocol_definition_ids: vec![
None;
model
.application_protocol_definition_arena
.items
.len()
],
applied_approval_assignment_ids: vec![
None;
model
.applied_approval_assignment_arena
.items
.len()
],
applied_date_and_time_assignment_ids: vec![
None;
model
.applied_date_and_time_assignment_arena
.items
.len()
],
applied_document_reference_ids: vec![
None;
model.applied_document_reference_arena.items.len()
],
applied_external_identification_assignment_ids: vec![
None;
model
.applied_external_identification_assignment_arena
.items
.len()
],
applied_group_assignment_ids: vec![
None;
model.applied_group_assignment_arena.items.len()
],
applied_person_and_organization_assignment_ids: vec![
None;
model
.applied_person_and_organization_assignment_arena
.items
.len()
],
applied_presented_item_ids: vec![None; model.applied_presented_item_arena.items.len()],
applied_security_classification_assignment_ids: vec![
None;
model
.applied_security_classification_assignment_arena
.items
.len()
],
approval_ids: vec![None; model.approval_arena.items.len()],
approval_assignment_ids: vec![None; model.approval_assignment_arena.items.len()],
approval_date_time_ids: vec![None; model.approval_date_time_arena.items.len()],
approval_person_organization_ids: vec![
None;
model
.approval_person_organization_arena
.items
.len()
],
approval_role_ids: vec![None; model.approval_role_arena.items.len()],
approval_status_ids: vec![None; model.approval_status_arena.items.len()],
approximation_tolerance_ids: vec![
None;
model.approximation_tolerance_arena.items.len()
],
approximation_tolerance_deviation_ids: vec![
None;
model
.approximation_tolerance_deviation_arena
.items
.len()
],
approximation_tolerance_parameter_ids: vec![
None;
model
.approximation_tolerance_parameter_arena
.items
.len()
],
area_in_set_ids: vec![None; model.area_in_set_arena.items.len()],
area_unit_ids: vec![None; model.area_unit_arena.items.len()],
ascribable_state_ids: vec![None; model.ascribable_state_arena.items.len()],
ascribable_state_relationship_ids: vec![
None;
model
.ascribable_state_relationship_arena
.items
.len()
],
assembly_component_usage_ids: vec![
None;
model.assembly_component_usage_arena.items.len()
],
auxiliary_leader_line_ids: vec![None; model.auxiliary_leader_line_arena.items.len()],
axis1_placement_ids: vec![None; model.axis1_placement_arena.items.len()],
axis2_placement2d_ids: vec![None; model.axis2_placement2d_arena.items.len()],
axis2_placement3d_ids: vec![None; model.axis2_placement3d_arena.items.len()],
b_spline_curve_ids: vec![None; model.b_spline_curve_arena.items.len()],
b_spline_curve_with_knots_ids: vec![
None;
model.b_spline_curve_with_knots_arena.items.len()
],
b_spline_surface_ids: vec![None; model.b_spline_surface_arena.items.len()],
b_spline_surface_with_knots_ids: vec![
None;
model
.b_spline_surface_with_knots_arena
.items
.len()
],
bezier_curve_ids: vec![None; model.bezier_curve_arena.items.len()],
bezier_surface_ids: vec![None; model.bezier_surface_arena.items.len()],
bounded_curve_ids: vec![None; model.bounded_curve_arena.items.len()],
bounded_pcurve_ids: vec![None; model.bounded_pcurve_arena.items.len()],
bounded_surface_ids: vec![None; model.bounded_surface_arena.items.len()],
bounded_surface_curve_ids: vec![None; model.bounded_surface_curve_arena.items.len()],
brep_with_voids_ids: vec![None; model.brep_with_voids_arena.items.len()],
calendar_date_ids: vec![None; model.calendar_date_arena.items.len()],
camera_image_ids: vec![None; model.camera_image_arena.items.len()],
camera_image3d_with_scale_ids: vec![
None;
model.camera_image3d_with_scale_arena.items.len()
],
camera_model_ids: vec![None; model.camera_model_arena.items.len()],
camera_model_d3_ids: vec![None; model.camera_model_d3_arena.items.len()],
camera_model_d3_multi_clipping_ids: vec![
None;
model
.camera_model_d3_multi_clipping_arena
.items
.len()
],
camera_model_d3_with_hlhsr_ids: vec![
None;
model.camera_model_d3_with_hlhsr_arena.items.len()
],
camera_usage_ids: vec![None; model.camera_usage_arena.items.len()],
cartesian_point_ids: vec![None; model.cartesian_point_arena.items.len()],
cc_design_approval_ids: vec![None; model.cc_design_approval_arena.items.len()],
cc_design_date_and_time_assignment_ids: vec![
None;
model
.cc_design_date_and_time_assignment_arena
.items
.len()
],
cc_design_person_and_organization_assignment_ids: vec![
None;
model
.cc_design_person_and_organization_assignment_arena
.items
.len()
],
cc_design_security_classification_ids: vec![
None;
model
.cc_design_security_classification_arena
.items
.len()
],
centre_of_symmetry_ids: vec![None; model.centre_of_symmetry_arena.items.len()],
certification_ids: vec![None; model.certification_arena.items.len()],
certification_type_ids: vec![None; model.certification_type_arena.items.len()],
change_ids: vec![None; model.change_arena.items.len()],
change_request_ids: vec![None; model.change_request_arena.items.len()],
character_glyph_style_outline_ids: vec![
None;
model
.character_glyph_style_outline_arena
.items
.len()
],
character_glyph_style_stroke_ids: vec![
None;
model
.character_glyph_style_stroke_arena
.items
.len()
],
characterized_item_within_representation_ids: vec![
None;
model
.characterized_item_within_representation_arena
.items
.len()
],
characterized_object_ids: vec![None; model.characterized_object_arena.items.len()],
characterized_representation_ids: vec![
None;
model
.characterized_representation_arena
.items
.len()
],
circle_ids: vec![None; model.circle_arena.items.len()],
circular_runout_tolerance_ids: vec![
None;
model.circular_runout_tolerance_arena.items.len()
],
closed_shell_ids: vec![None; model.closed_shell_arena.items.len()],
coaxiality_tolerance_ids: vec![None; model.coaxiality_tolerance_arena.items.len()],
colour_ids: vec![None; model.colour_arena.items.len()],
colour_rgb_ids: vec![None; model.colour_rgb_arena.items.len()],
colour_specification_ids: vec![None; model.colour_specification_arena.items.len()],
common_datum_ids: vec![None; model.common_datum_arena.items.len()],
complex_triangulated_face_ids: vec![
None;
model.complex_triangulated_face_arena.items.len()
],
complex_triangulated_surface_set_ids: vec![
None;
model
.complex_triangulated_surface_set_arena
.items
.len()
],
composite_curve_ids: vec![None; model.composite_curve_arena.items.len()],
composite_curve_segment_ids: vec![
None;
model.composite_curve_segment_arena.items.len()
],
composite_group_shape_aspect_ids: vec![
None;
model
.composite_group_shape_aspect_arena
.items
.len()
],
composite_shape_aspect_ids: vec![None; model.composite_shape_aspect_arena.items.len()],
composite_text_ids: vec![None; model.composite_text_arena.items.len()],
compound_representation_item_ids: vec![
None;
model
.compound_representation_item_arena
.items
.len()
],
concentricity_tolerance_ids: vec![
None;
model.concentricity_tolerance_arena.items.len()
],
configuration_design_ids: vec![None; model.configuration_design_arena.items.len()],
configuration_effectivity_ids: vec![
None;
model.configuration_effectivity_arena.items.len()
],
configuration_item_ids: vec![None; model.configuration_item_arena.items.len()],
conic_ids: vec![None; model.conic_arena.items.len()],
conical_surface_ids: vec![None; model.conical_surface_arena.items.len()],
connected_face_set_ids: vec![None; model.connected_face_set_arena.items.len()],
constructive_geometry_representation_ids: vec![
None;
model
.constructive_geometry_representation_arena
.items
.len()
],
constructive_geometry_representation_relationship_ids: vec![
None;
model
.constructive_geometry_representation_relationship_arena
.items
.len()
],
context_dependent_over_riding_styled_item_ids: vec![
None;
model
.context_dependent_over_riding_styled_item_arena
.items
.len()
],
context_dependent_shape_representation_ids: vec![
None;
model
.context_dependent_shape_representation_arena
.items
.len()
],
context_dependent_unit_ids: vec![None; model.context_dependent_unit_arena.items.len()],
continuous_shape_aspect_ids: vec![
None;
model.continuous_shape_aspect_arena.items.len()
],
contract_ids: vec![None; model.contract_arena.items.len()],
contract_type_ids: vec![None; model.contract_type_arena.items.len()],
conversion_based_unit_ids: vec![None; model.conversion_based_unit_arena.items.len()],
coordinated_universal_time_offset_ids: vec![
None;
model
.coordinated_universal_time_offset_arena
.items
.len()
],
coordinates_list_ids: vec![None; model.coordinates_list_arena.items.len()],
curve_ids: vec![None; model.curve_arena.items.len()],
curve_style_ids: vec![None; model.curve_style_arena.items.len()],
curve_style_font_ids: vec![None; model.curve_style_font_arena.items.len()],
curve_style_font_and_scaling_ids: vec![
None;
model
.curve_style_font_and_scaling_arena
.items
.len()
],
curve_style_font_pattern_ids: vec![
None;
model.curve_style_font_pattern_arena.items.len()
],
curve_style_rendering_ids: vec![None; model.curve_style_rendering_arena.items.len()],
cylindrical_surface_ids: vec![None; model.cylindrical_surface_arena.items.len()],
cylindricity_tolerance_ids: vec![None; model.cylindricity_tolerance_arena.items.len()],
date_ids: vec![None; model.date_arena.items.len()],
date_and_time_ids: vec![None; model.date_and_time_arena.items.len()],
date_and_time_assignment_ids: vec![
None;
model.date_and_time_assignment_arena.items.len()
],
date_role_ids: vec![None; model.date_role_arena.items.len()],
date_time_role_ids: vec![None; model.date_time_role_arena.items.len()],
datum_ids: vec![None; model.datum_arena.items.len()],
datum_feature_ids: vec![None; model.datum_feature_arena.items.len()],
datum_reference_ids: vec![None; model.datum_reference_arena.items.len()],
datum_reference_compartment_ids: vec![
None;
model
.datum_reference_compartment_arena
.items
.len()
],
datum_reference_element_ids: vec![
None;
model.datum_reference_element_arena.items.len()
],
datum_reference_modifier_with_value_ids: vec![
None;
model
.datum_reference_modifier_with_value_arena
.items
.len()
],
datum_system_ids: vec![None; model.datum_system_arena.items.len()],
datum_target_ids: vec![None; model.datum_target_arena.items.len()],
default_model_geometric_view_ids: vec![
None;
model
.default_model_geometric_view_arena
.items
.len()
],
defined_character_glyph_ids: vec![
None;
model.defined_character_glyph_arena.items.len()
],
defined_symbol_ids: vec![None; model.defined_symbol_arena.items.len()],
definitional_representation_ids: vec![
None;
model
.definitional_representation_arena
.items
.len()
],
definitional_representation_relationship_ids: vec![
None;
model
.definitional_representation_relationship_arena
.items
.len()
],
definitional_representation_relationship_with_same_context_ids: vec![
None;
model
.definitional_representation_relationship_with_same_context_arena
.items
.len()
],
degenerate_toroidal_surface_ids: vec![
None;
model
.degenerate_toroidal_surface_arena
.items
.len()
],
derived_shape_aspect_ids: vec![None; model.derived_shape_aspect_arena.items.len()],
derived_unit_ids: vec![None; model.derived_unit_arena.items.len()],
derived_unit_element_ids: vec![None; model.derived_unit_element_arena.items.len()],
description_attribute_ids: vec![None; model.description_attribute_arena.items.len()],
descriptive_representation_item_ids: vec![
None;
model
.descriptive_representation_item_arena
.items
.len()
],
design_context_ids: vec![None; model.design_context_arena.items.len()],
dimensional_characteristic_representation_ids: vec![
None;
model
.dimensional_characteristic_representation_arena
.items
.len()
],
dimensional_exponents_ids: vec![None; model.dimensional_exponents_arena.items.len()],
dimensional_location_ids: vec![None; model.dimensional_location_arena.items.len()],
dimensional_location_with_path_ids: vec![
None;
model
.dimensional_location_with_path_arena
.items
.len()
],
dimensional_size_ids: vec![None; model.dimensional_size_arena.items.len()],
dimensional_size_with_datum_feature_ids: vec![
None;
model
.dimensional_size_with_datum_feature_arena
.items
.len()
],
dimensional_size_with_path_ids: vec![
None;
model.dimensional_size_with_path_arena.items.len()
],
directed_dimensional_location_ids: vec![
None;
model
.directed_dimensional_location_arena
.items
.len()
],
direction_ids: vec![None; model.direction_arena.items.len()],
document_ids: vec![None; model.document_arena.items.len()],
document_file_ids: vec![None; model.document_file_arena.items.len()],
document_product_association_ids: vec![
None;
model
.document_product_association_arena
.items
.len()
],
document_product_equivalence_ids: vec![
None;
model
.document_product_equivalence_arena
.items
.len()
],
document_reference_ids: vec![None; model.document_reference_arena.items.len()],
document_representation_type_ids: vec![
None;
model
.document_representation_type_arena
.items
.len()
],
document_type_ids: vec![None; model.document_type_arena.items.len()],
draughting_annotation_occurrence_ids: vec![
None;
model
.draughting_annotation_occurrence_arena
.items
.len()
],
draughting_callout_ids: vec![None; model.draughting_callout_arena.items.len()],
draughting_callout_relationship_ids: vec![
None;
model
.draughting_callout_relationship_arena
.items
.len()
],
draughting_model_ids: vec![None; model.draughting_model_arena.items.len()],
draughting_model_item_association_ids: vec![
None;
model
.draughting_model_item_association_arena
.items
.len()
],
draughting_model_item_association_with_placeholder_ids: vec![
None;
model
.draughting_model_item_association_with_placeholder_arena
.items
.len()
],
draughting_pre_defined_colour_ids: vec![
None;
model
.draughting_pre_defined_colour_arena
.items
.len()
],
draughting_pre_defined_curve_font_ids: vec![
None;
model
.draughting_pre_defined_curve_font_arena
.items
.len()
],
draughting_pre_defined_text_font_ids: vec![
None;
model
.draughting_pre_defined_text_font_arena
.items
.len()
],
edge_ids: vec![None; model.edge_arena.items.len()],
edge_curve_ids: vec![None; model.edge_curve_arena.items.len()],
edge_loop_ids: vec![None; model.edge_loop_arena.items.len()],
effectivity_ids: vec![None; model.effectivity_arena.items.len()],
elementary_surface_ids: vec![None; model.elementary_surface_arena.items.len()],
ellipse_ids: vec![None; model.ellipse_arena.items.len()],
expression_ids: vec![None; model.expression_arena.items.len()],
external_identification_assignment_ids: vec![
None;
model
.external_identification_assignment_arena
.items
.len()
],
external_source_ids: vec![None; model.external_source_arena.items.len()],
externally_defined_character_glyph_ids: vec![
None;
model
.externally_defined_character_glyph_arena
.items
.len()
],
externally_defined_curve_font_ids: vec![
None;
model
.externally_defined_curve_font_arena
.items
.len()
],
externally_defined_hatch_style_ids: vec![
None;
model
.externally_defined_hatch_style_arena
.items
.len()
],
externally_defined_item_ids: vec![
None;
model.externally_defined_item_arena.items.len()
],
externally_defined_style_ids: vec![
None;
model.externally_defined_style_arena.items.len()
],
externally_defined_symbol_ids: vec![
None;
model.externally_defined_symbol_arena.items.len()
],
externally_defined_text_font_ids: vec![
None;
model
.externally_defined_text_font_arena
.items
.len()
],
externally_defined_tile_ids: vec![
None;
model.externally_defined_tile_arena.items.len()
],
externally_defined_tile_style_ids: vec![
None;
model
.externally_defined_tile_style_arena
.items
.len()
],
face_ids: vec![None; model.face_arena.items.len()],
face_bound_ids: vec![None; model.face_bound_arena.items.len()],
face_outer_bound_ids: vec![None; model.face_outer_bound_arena.items.len()],
face_surface_ids: vec![None; model.face_surface_arena.items.len()],
feature_for_datum_target_relationship_ids: vec![
None;
model
.feature_for_datum_target_relationship_arena
.items
.len()
],
fill_area_style_ids: vec![None; model.fill_area_style_arena.items.len()],
fill_area_style_colour_ids: vec![None; model.fill_area_style_colour_arena.items.len()],
fill_area_style_hatching_ids: vec![
None;
model.fill_area_style_hatching_arena.items.len()
],
fill_area_style_tile_coloured_region_ids: vec![
None;
model
.fill_area_style_tile_coloured_region_arena
.items
.len()
],
fill_area_style_tile_curve_with_style_ids: vec![
None;
model
.fill_area_style_tile_curve_with_style_arena
.items
.len()
],
fill_area_style_tile_symbol_with_style_ids: vec![
None;
model
.fill_area_style_tile_symbol_with_style_arena
.items
.len()
],
fill_area_style_tiles_ids: vec![None; model.fill_area_style_tiles_arena.items.len()],
flatness_tolerance_ids: vec![None; model.flatness_tolerance_arena.items.len()],
founded_item_ids: vec![None; model.founded_item_arena.items.len()],
functionally_defined_transformation_ids: vec![
None;
model
.functionally_defined_transformation_arena
.items
.len()
],
general_datum_reference_ids: vec![
None;
model.general_datum_reference_arena.items.len()
],
general_property_ids: vec![None; model.general_property_arena.items.len()],
general_property_association_ids: vec![
None;
model
.general_property_association_arena
.items
.len()
],
generic_expression_ids: vec![None; model.generic_expression_arena.items.len()],
generic_literal_ids: vec![None; model.generic_literal_arena.items.len()],
generic_product_definition_reference_ids: vec![
None;
model
.generic_product_definition_reference_arena
.items
.len()
],
geometric_curve_set_ids: vec![None; model.geometric_curve_set_arena.items.len()],
geometric_item_specific_usage_ids: vec![
None;
model
.geometric_item_specific_usage_arena
.items
.len()
],
geometric_representation_context_ids: vec![
None;
model
.geometric_representation_context_arena
.items
.len()
],
geometric_representation_item_ids: vec![
None;
model
.geometric_representation_item_arena
.items
.len()
],
geometric_set_ids: vec![None; model.geometric_set_arena.items.len()],
geometric_tolerance_ids: vec![None; model.geometric_tolerance_arena.items.len()],
geometric_tolerance_relationship_ids: vec![
None;
model
.geometric_tolerance_relationship_arena
.items
.len()
],
geometric_tolerance_with_datum_reference_ids: vec![
None;
model
.geometric_tolerance_with_datum_reference_arena
.items
.len()
],
geometric_tolerance_with_defined_area_unit_ids: vec![
None;
model
.geometric_tolerance_with_defined_area_unit_arena
.items
.len()
],
geometric_tolerance_with_defined_unit_ids: vec![
None;
model
.geometric_tolerance_with_defined_unit_arena
.items
.len()
],
geometric_tolerance_with_maximum_tolerance_ids: vec![
None;
model
.geometric_tolerance_with_maximum_tolerance_arena
.items
.len()
],
geometric_tolerance_with_modifiers_ids: vec![
None;
model
.geometric_tolerance_with_modifiers_arena
.items
.len()
],
geometrically_bounded_surface_shape_representation_ids: vec![
None;
model
.geometrically_bounded_surface_shape_representation_arena
.items
.len()
],
geometrically_bounded_wireframe_shape_representation_ids: vec![
None;
model
.geometrically_bounded_wireframe_shape_representation_arena
.items
.len()
],
global_uncertainty_assigned_context_ids: vec![
None;
model
.global_uncertainty_assigned_context_arena
.items
.len()
],
global_unit_assigned_context_ids: vec![
None;
model
.global_unit_assigned_context_arena
.items
.len()
],
group_ids: vec![None; model.group_arena.items.len()],
group_assignment_ids: vec![None; model.group_assignment_arena.items.len()],
hyperbola_ids: vec![None; model.hyperbola_arena.items.len()],
id_attribute_ids: vec![None; model.id_attribute_arena.items.len()],
identification_assignment_ids: vec![
None;
model.identification_assignment_arena.items.len()
],
identification_role_ids: vec![None; model.identification_role_arena.items.len()],
int_literal_ids: vec![None; model.int_literal_arena.items.len()],
integer_representation_item_ids: vec![
None;
model
.integer_representation_item_arena
.items
.len()
],
intersection_curve_ids: vec![None; model.intersection_curve_arena.items.len()],
invisibility_ids: vec![None; model.invisibility_arena.items.len()],
item_defined_transformation_ids: vec![
None;
model
.item_defined_transformation_arena
.items
.len()
],
item_identified_representation_usage_ids: vec![
None;
model
.item_identified_representation_usage_arena
.items
.len()
],
leader_curve_ids: vec![None; model.leader_curve_arena.items.len()],
leader_directed_callout_ids: vec![
None;
model.leader_directed_callout_arena.items.len()
],
leader_terminator_ids: vec![None; model.leader_terminator_arena.items.len()],
length_measure_with_unit_ids: vec![
None;
model.length_measure_with_unit_arena.items.len()
],
length_unit_ids: vec![None; model.length_unit_arena.items.len()],
limits_and_fits_ids: vec![None; model.limits_and_fits_arena.items.len()],
line_ids: vec![None; model.line_arena.items.len()],
line_profile_tolerance_ids: vec![None; model.line_profile_tolerance_arena.items.len()],
literal_number_ids: vec![None; model.literal_number_arena.items.len()],
local_time_ids: vec![None; model.local_time_arena.items.len()],
loop_ids: vec![None; model.loop_arena.items.len()],
make_from_usage_option_ids: vec![None; model.make_from_usage_option_arena.items.len()],
manifold_solid_brep_ids: vec![None; model.manifold_solid_brep_arena.items.len()],
manifold_surface_shape_representation_ids: vec![
None;
model
.manifold_surface_shape_representation_arena
.items
.len()
],
mapped_item_ids: vec![None; model.mapped_item_arena.items.len()],
mass_measure_with_unit_ids: vec![None; model.mass_measure_with_unit_arena.items.len()],
mass_unit_ids: vec![None; model.mass_unit_arena.items.len()],
measure_qualification_ids: vec![None; model.measure_qualification_arena.items.len()],
measure_representation_item_ids: vec![
None;
model
.measure_representation_item_arena
.items
.len()
],
measure_with_unit_ids: vec![None; model.measure_with_unit_arena.items.len()],
mechanical_context_ids: vec![None; model.mechanical_context_arena.items.len()],
mechanical_design_and_draughting_relationship_ids: vec![
None;
model
.mechanical_design_and_draughting_relationship_arena
.items
.len()
],
mechanical_design_geometric_presentation_representation_ids: vec![
None;
model
.mechanical_design_geometric_presentation_representation_arena
.items
.len()
],
mechanical_design_presentation_representation_with_draughting_ids: vec![
None;
model
.mechanical_design_presentation_representation_with_draughting_arena
.items
.len()
],
mechanical_design_shaded_presentation_representation_ids: vec![
None;
model
.mechanical_design_shaded_presentation_representation_arena
.items
.len()
],
model_geometric_view_ids: vec![None; model.model_geometric_view_arena.items.len()],
modified_geometric_tolerance_ids: vec![
None;
model
.modified_geometric_tolerance_arena
.items
.len()
],
name_attribute_ids: vec![None; model.name_attribute_arena.items.len()],
named_unit_ids: vec![None; model.named_unit_arena.items.len()],
next_assembly_usage_occurrence_ids: vec![
None;
model
.next_assembly_usage_occurrence_arena
.items
.len()
],
numeric_expression_ids: vec![None; model.numeric_expression_arena.items.len()],
object_role_ids: vec![None; model.object_role_arena.items.len()],
offset_surface_ids: vec![None; model.offset_surface_arena.items.len()],
one_direction_repeat_factor_ids: vec![
None;
model
.one_direction_repeat_factor_arena
.items
.len()
],
open_shell_ids: vec![None; model.open_shell_arena.items.len()],
organization_ids: vec![None; model.organization_arena.items.len()],
organization_relationship_ids: vec![
None;
model.organization_relationship_arena.items.len()
],
organization_role_ids: vec![None; model.organization_role_arena.items.len()],
organization_type_ids: vec![None; model.organization_type_arena.items.len()],
organization_type_role_ids: vec![None; model.organization_type_role_arena.items.len()],
organizational_address_ids: vec![None; model.organizational_address_arena.items.len()],
organizational_project_ids: vec![None; model.organizational_project_arena.items.len()],
organizational_project_relationship_ids: vec![
None;
model
.organizational_project_relationship_arena
.items
.len()
],
organizational_project_role_ids: vec![
None;
model
.organizational_project_role_arena
.items
.len()
],
oriented_closed_shell_ids: vec![None; model.oriented_closed_shell_arena.items.len()],
oriented_edge_ids: vec![None; model.oriented_edge_arena.items.len()],
over_riding_styled_item_ids: vec![
None;
model.over_riding_styled_item_arena.items.len()
],
parallelism_tolerance_ids: vec![None; model.parallelism_tolerance_arena.items.len()],
parametric_representation_context_ids: vec![
None;
model
.parametric_representation_context_arena
.items
.len()
],
path_ids: vec![None; model.path_arena.items.len()],
pcurve_ids: vec![None; model.pcurve_arena.items.len()],
perpendicularity_tolerance_ids: vec![
None;
model.perpendicularity_tolerance_arena.items.len()
],
person_ids: vec![None; model.person_arena.items.len()],
person_and_organization_ids: vec![
None;
model.person_and_organization_arena.items.len()
],
person_and_organization_address_ids: vec![
None;
model
.person_and_organization_address_arena
.items
.len()
],
person_and_organization_assignment_ids: vec![
None;
model
.person_and_organization_assignment_arena
.items
.len()
],
person_and_organization_role_ids: vec![
None;
model
.person_and_organization_role_arena
.items
.len()
],
personal_address_ids: vec![None; model.personal_address_arena.items.len()],
placed_datum_target_feature_ids: vec![
None;
model
.placed_datum_target_feature_arena
.items
.len()
],
placement_ids: vec![None; model.placement_arena.items.len()],
planar_box_ids: vec![None; model.planar_box_arena.items.len()],
planar_extent_ids: vec![None; model.planar_extent_arena.items.len()],
plane_ids: vec![None; model.plane_arena.items.len()],
plane_angle_measure_with_unit_ids: vec![
None;
model
.plane_angle_measure_with_unit_arena
.items
.len()
],
plane_angle_unit_ids: vec![None; model.plane_angle_unit_arena.items.len()],
plus_minus_tolerance_ids: vec![None; model.plus_minus_tolerance_arena.items.len()],
point_ids: vec![None; model.point_arena.items.len()],
point_style_ids: vec![None; model.point_style_arena.items.len()],
poly_loop_ids: vec![None; model.poly_loop_arena.items.len()],
polyline_ids: vec![None; model.polyline_arena.items.len()],
position_tolerance_ids: vec![None; model.position_tolerance_arena.items.len()],
pre_defined_character_glyph_ids: vec![
None;
model
.pre_defined_character_glyph_arena
.items
.len()
],
pre_defined_colour_ids: vec![None; model.pre_defined_colour_arena.items.len()],
pre_defined_curve_font_ids: vec![None; model.pre_defined_curve_font_arena.items.len()],
pre_defined_item_ids: vec![None; model.pre_defined_item_arena.items.len()],
pre_defined_marker_ids: vec![None; model.pre_defined_marker_arena.items.len()],
pre_defined_point_marker_symbol_ids: vec![
None;
model
.pre_defined_point_marker_symbol_arena
.items
.len()
],
pre_defined_presentation_style_ids: vec![
None;
model
.pre_defined_presentation_style_arena
.items
.len()
],
pre_defined_surface_side_style_ids: vec![
None;
model
.pre_defined_surface_side_style_arena
.items
.len()
],
pre_defined_symbol_ids: vec![None; model.pre_defined_symbol_arena.items.len()],
pre_defined_terminator_symbol_ids: vec![
None;
model
.pre_defined_terminator_symbol_arena
.items
.len()
],
pre_defined_text_font_ids: vec![None; model.pre_defined_text_font_arena.items.len()],
pre_defined_tile_ids: vec![None; model.pre_defined_tile_arena.items.len()],
precision_qualifier_ids: vec![None; model.precision_qualifier_arena.items.len()],
presentation_area_ids: vec![None; model.presentation_area_arena.items.len()],
presentation_layer_assignment_ids: vec![
None;
model
.presentation_layer_assignment_arena
.items
.len()
],
presentation_representation_ids: vec![
None;
model
.presentation_representation_arena
.items
.len()
],
presentation_set_ids: vec![None; model.presentation_set_arena.items.len()],
presentation_size_ids: vec![None; model.presentation_size_arena.items.len()],
presentation_style_assignment_ids: vec![
None;
model
.presentation_style_assignment_arena
.items
.len()
],
presentation_style_by_context_ids: vec![
None;
model
.presentation_style_by_context_arena
.items
.len()
],
presentation_view_ids: vec![None; model.presentation_view_arena.items.len()],
presented_item_ids: vec![None; model.presented_item_arena.items.len()],
presented_item_representation_ids: vec![
None;
model
.presented_item_representation_arena
.items
.len()
],
product_ids: vec![None; model.product_arena.items.len()],
product_category_ids: vec![None; model.product_category_arena.items.len()],
product_category_relationship_ids: vec![
None;
model
.product_category_relationship_arena
.items
.len()
],
product_concept_ids: vec![None; model.product_concept_arena.items.len()],
product_concept_context_ids: vec![
None;
model.product_concept_context_arena.items.len()
],
product_concept_feature_ids: vec![
None;
model.product_concept_feature_arena.items.len()
],
product_concept_feature_category_ids: vec![
None;
model
.product_concept_feature_category_arena
.items
.len()
],
product_context_ids: vec![None; model.product_context_arena.items.len()],
product_definition_ids: vec![None; model.product_definition_arena.items.len()],
product_definition_context_ids: vec![
None;
model.product_definition_context_arena.items.len()
],
product_definition_context_association_ids: vec![
None;
model
.product_definition_context_association_arena
.items
.len()
],
product_definition_context_role_ids: vec![
None;
model
.product_definition_context_role_arena
.items
.len()
],
product_definition_effectivity_ids: vec![
None;
model
.product_definition_effectivity_arena
.items
.len()
],
product_definition_formation_ids: vec![
None;
model
.product_definition_formation_arena
.items
.len()
],
product_definition_formation_with_specified_source_ids: vec![
None;
model
.product_definition_formation_with_specified_source_arena
.items
.len()
],
product_definition_occurrence_ids: vec![
None;
model
.product_definition_occurrence_arena
.items
.len()
],
product_definition_relationship_ids: vec![
None;
model
.product_definition_relationship_arena
.items
.len()
],
product_definition_relationship_relationship_ids: vec![
None;
model
.product_definition_relationship_relationship_arena
.items
.len()
],
product_definition_shape_ids: vec![
None;
model.product_definition_shape_arena.items.len()
],
product_definition_substitute_ids: vec![
None;
model
.product_definition_substitute_arena
.items
.len()
],
product_definition_usage_ids: vec![
None;
model.product_definition_usage_arena.items.len()
],
product_definition_with_associated_documents_ids: vec![
None;
model
.product_definition_with_associated_documents_arena
.items
.len()
],
product_related_product_category_ids: vec![
None;
model
.product_related_product_category_arena
.items
.len()
],
projected_zone_definition_ids: vec![
None;
model.projected_zone_definition_arena.items.len()
],
property_definition_ids: vec![None; model.property_definition_arena.items.len()],
property_definition_relationship_ids: vec![
None;
model
.property_definition_relationship_arena
.items
.len()
],
property_definition_representation_ids: vec![
None;
model
.property_definition_representation_arena
.items
.len()
],
qualified_representation_item_ids: vec![
None;
model
.qualified_representation_item_arena
.items
.len()
],
quasi_uniform_curve_ids: vec![None; model.quasi_uniform_curve_arena.items.len()],
quasi_uniform_surface_ids: vec![None; model.quasi_uniform_surface_arena.items.len()],
ratio_measure_with_unit_ids: vec![
None;
model.ratio_measure_with_unit_arena.items.len()
],
ratio_unit_ids: vec![None; model.ratio_unit_arena.items.len()],
rational_b_spline_curve_ids: vec![
None;
model.rational_b_spline_curve_arena.items.len()
],
rational_b_spline_surface_ids: vec![
None;
model.rational_b_spline_surface_arena.items.len()
],
real_literal_ids: vec![None; model.real_literal_arena.items.len()],
real_representation_item_ids: vec![
None;
model.real_representation_item_arena.items.len()
],
repositioned_tessellated_item_ids: vec![
None;
model
.repositioned_tessellated_item_arena
.items
.len()
],
representation_ids: vec![None; model.representation_arena.items.len()],
representation_context_ids: vec![None; model.representation_context_arena.items.len()],
representation_context_reference_ids: vec![
None;
model
.representation_context_reference_arena
.items
.len()
],
representation_item_ids: vec![None; model.representation_item_arena.items.len()],
representation_map_ids: vec![None; model.representation_map_arena.items.len()],
representation_reference_ids: vec![
None;
model.representation_reference_arena.items.len()
],
representation_relationship_ids: vec![
None;
model
.representation_relationship_arena
.items
.len()
],
representation_relationship_with_transformation_ids: vec![
None;
model
.representation_relationship_with_transformation_arena
.items
.len()
],
resource_property_ids: vec![None; model.resource_property_arena.items.len()],
resource_requirement_type_ids: vec![
None;
model.resource_requirement_type_arena.items.len()
],
role_association_ids: vec![None; model.role_association_arena.items.len()],
roundness_tolerance_ids: vec![None; model.roundness_tolerance_arena.items.len()],
seam_curve_ids: vec![None; model.seam_curve_arena.items.len()],
security_classification_ids: vec![
None;
model.security_classification_arena.items.len()
],
security_classification_assignment_ids: vec![
None;
model
.security_classification_assignment_arena
.items
.len()
],
security_classification_level_ids: vec![
None;
model
.security_classification_level_arena
.items
.len()
],
shape_aspect_ids: vec![None; model.shape_aspect_arena.items.len()],
shape_aspect_associativity_ids: vec![
None;
model.shape_aspect_associativity_arena.items.len()
],
shape_aspect_deriving_relationship_ids: vec![
None;
model
.shape_aspect_deriving_relationship_arena
.items
.len()
],
shape_aspect_relationship_ids: vec![
None;
model.shape_aspect_relationship_arena.items.len()
],
shape_definition_representation_ids: vec![
None;
model
.shape_definition_representation_arena
.items
.len()
],
shape_dimension_representation_ids: vec![
None;
model
.shape_dimension_representation_arena
.items
.len()
],
shape_representation_ids: vec![None; model.shape_representation_arena.items.len()],
shape_representation_relationship_ids: vec![
None;
model
.shape_representation_relationship_arena
.items
.len()
],
shape_representation_with_parameters_ids: vec![
None;
model
.shape_representation_with_parameters_arena
.items
.len()
],
shell_based_surface_model_ids: vec![
None;
model.shell_based_surface_model_arena.items.len()
],
si_unit_ids: vec![None; model.si_unit_arena.items.len()],
simple_generic_expression_ids: vec![
None;
model.simple_generic_expression_arena.items.len()
],
simple_numeric_expression_ids: vec![
None;
model.simple_numeric_expression_arena.items.len()
],
solid_angle_unit_ids: vec![None; model.solid_angle_unit_arena.items.len()],
solid_model_ids: vec![None; model.solid_model_arena.items.len()],
spherical_surface_ids: vec![None; model.spherical_surface_arena.items.len()],
start_request_ids: vec![None; model.start_request_arena.items.len()],
start_work_ids: vec![None; model.start_work_arena.items.len()],
state_observed_ids: vec![None; model.state_observed_arena.items.len()],
state_type_ids: vec![None; model.state_type_arena.items.len()],
straightness_tolerance_ids: vec![None; model.straightness_tolerance_arena.items.len()],
styled_item_ids: vec![None; model.styled_item_arena.items.len()],
surface_ids: vec![None; model.surface_arena.items.len()],
surface_curve_ids: vec![None; model.surface_curve_arena.items.len()],
surface_of_linear_extrusion_ids: vec![
None;
model
.surface_of_linear_extrusion_arena
.items
.len()
],
surface_of_revolution_ids: vec![None; model.surface_of_revolution_arena.items.len()],
surface_profile_tolerance_ids: vec![
None;
model.surface_profile_tolerance_arena.items.len()
],
surface_rendering_properties_ids: vec![
None;
model
.surface_rendering_properties_arena
.items
.len()
],
surface_side_style_ids: vec![None; model.surface_side_style_arena.items.len()],
surface_style_boundary_ids: vec![None; model.surface_style_boundary_arena.items.len()],
surface_style_control_grid_ids: vec![
None;
model.surface_style_control_grid_arena.items.len()
],
surface_style_fill_area_ids: vec![
None;
model.surface_style_fill_area_arena.items.len()
],
surface_style_parameter_line_ids: vec![
None;
model
.surface_style_parameter_line_arena
.items
.len()
],
surface_style_reflectance_ambient_ids: vec![
None;
model
.surface_style_reflectance_ambient_arena
.items
.len()
],
surface_style_rendering_ids: vec![
None;
model.surface_style_rendering_arena.items.len()
],
surface_style_rendering_with_properties_ids: vec![
None;
model
.surface_style_rendering_with_properties_arena
.items
.len()
],
surface_style_segmentation_curve_ids: vec![
None;
model
.surface_style_segmentation_curve_arena
.items
.len()
],
surface_style_silhouette_ids: vec![
None;
model.surface_style_silhouette_arena.items.len()
],
surface_style_transparent_ids: vec![
None;
model.surface_style_transparent_arena.items.len()
],
surface_style_usage_ids: vec![None; model.surface_style_usage_arena.items.len()],
swept_surface_ids: vec![None; model.swept_surface_arena.items.len()],
symbol_colour_ids: vec![None; model.symbol_colour_arena.items.len()],
symbol_representation_ids: vec![None; model.symbol_representation_arena.items.len()],
symbol_style_ids: vec![None; model.symbol_style_arena.items.len()],
symbol_target_ids: vec![None; model.symbol_target_arena.items.len()],
symmetry_tolerance_ids: vec![None; model.symmetry_tolerance_arena.items.len()],
terminator_symbol_ids: vec![None; model.terminator_symbol_arena.items.len()],
tessellated_annotation_occurrence_ids: vec![
None;
model
.tessellated_annotation_occurrence_arena
.items
.len()
],
tessellated_curve_set_ids: vec![None; model.tessellated_curve_set_arena.items.len()],
tessellated_face_ids: vec![None; model.tessellated_face_arena.items.len()],
tessellated_geometric_set_ids: vec![
None;
model.tessellated_geometric_set_arena.items.len()
],
tessellated_item_ids: vec![None; model.tessellated_item_arena.items.len()],
tessellated_shape_representation_ids: vec![
None;
model
.tessellated_shape_representation_arena
.items
.len()
],
tessellated_shell_ids: vec![None; model.tessellated_shell_arena.items.len()],
tessellated_solid_ids: vec![None; model.tessellated_solid_arena.items.len()],
tessellated_structured_item_ids: vec![
None;
model
.tessellated_structured_item_arena
.items
.len()
],
tessellated_surface_set_ids: vec![
None;
model.tessellated_surface_set_arena.items.len()
],
text_font_ids: vec![None; model.text_font_arena.items.len()],
text_literal_ids: vec![None; model.text_literal_arena.items.len()],
text_style_ids: vec![None; model.text_style_arena.items.len()],
text_style_for_defined_font_ids: vec![
None;
model
.text_style_for_defined_font_arena
.items
.len()
],
text_style_with_box_characteristics_ids: vec![
None;
model
.text_style_with_box_characteristics_arena
.items
.len()
],
texture_style_specification_ids: vec![
None;
model
.texture_style_specification_arena
.items
.len()
],
texture_style_tessellation_specification_ids: vec![
None;
model
.texture_style_tessellation_specification_arena
.items
.len()
],
time_unit_ids: vec![None; model.time_unit_arena.items.len()],
tolerance_value_ids: vec![None; model.tolerance_value_arena.items.len()],
tolerance_zone_ids: vec![None; model.tolerance_zone_arena.items.len()],
tolerance_zone_definition_ids: vec![
None;
model.tolerance_zone_definition_arena.items.len()
],
tolerance_zone_form_ids: vec![None; model.tolerance_zone_form_arena.items.len()],
tolerance_zone_with_datum_ids: vec![
None;
model.tolerance_zone_with_datum_arena.items.len()
],
topological_representation_item_ids: vec![
None;
model
.topological_representation_item_arena
.items
.len()
],
toroidal_surface_ids: vec![None; model.toroidal_surface_arena.items.len()],
total_runout_tolerance_ids: vec![None; model.total_runout_tolerance_arena.items.len()],
trimmed_curve_ids: vec![None; model.trimmed_curve_arena.items.len()],
two_direction_repeat_factor_ids: vec![
None;
model
.two_direction_repeat_factor_arena
.items
.len()
],
type_qualifier_ids: vec![None; model.type_qualifier_arena.items.len()],
uncertainty_measure_with_unit_ids: vec![
None;
model
.uncertainty_measure_with_unit_arena
.items
.len()
],
uncertainty_qualifier_ids: vec![None; model.uncertainty_qualifier_arena.items.len()],
unequally_disposed_geometric_tolerance_ids: vec![
None;
model
.unequally_disposed_geometric_tolerance_arena
.items
.len()
],
uniform_curve_ids: vec![None; model.uniform_curve_arena.items.len()],
uniform_surface_ids: vec![None; model.uniform_surface_arena.items.len()],
value_format_type_qualifier_ids: vec![
None;
model
.value_format_type_qualifier_arena
.items
.len()
],
value_representation_item_ids: vec![
None;
model.value_representation_item_arena.items.len()
],
vector_ids: vec![None; model.vector_arena.items.len()],
versioned_action_request_ids: vec![
None;
model.versioned_action_request_arena.items.len()
],
vertex_ids: vec![None; model.vertex_arena.items.len()],
vertex_loop_ids: vec![None; model.vertex_loop_arena.items.len()],
vertex_point_ids: vec![None; model.vertex_point_arena.items.len()],
vertex_shell_ids: vec![None; model.vertex_shell_arena.items.len()],
view_volume_ids: vec![None; model.view_volume_arena.items.len()],
volume_unit_ids: vec![None; model.volume_unit_arena.items.len()],
wire_shell_ids: vec![None; model.wire_shell_arena.items.len()],
complex_ids: vec![None; model.complex_unit_arena.items.len()],
}
}
fn fresh(&mut self) -> u64 {
let n = self.next;
self.next += 1;
n
}
fn get_id(&self, any: EntityKey) -> Option<u64> {
match any {
EntityKey::Action(i) => self.action_ids[i.0],
EntityKey::ActionAssignment(i) => self.action_assignment_ids[i.0],
EntityKey::ActionDirective(i) => self.action_directive_ids[i.0],
EntityKey::ActionMethod(i) => self.action_method_ids[i.0],
EntityKey::ActionMethodRelationship(i) => self.action_method_relationship_ids[i.0],
EntityKey::ActionProperty(i) => self.action_property_ids[i.0],
EntityKey::ActionRelationship(i) => self.action_relationship_ids[i.0],
EntityKey::ActionRequestAssignment(i) => self.action_request_assignment_ids[i.0],
EntityKey::ActionRequestSolution(i) => self.action_request_solution_ids[i.0],
EntityKey::ActionResource(i) => self.action_resource_ids[i.0],
EntityKey::ActionResourceRelationship(i) => self.action_resource_relationship_ids[i.0],
EntityKey::ActionResourceRequirement(i) => self.action_resource_requirement_ids[i.0],
EntityKey::ActionResourceType(i) => self.action_resource_type_ids[i.0],
EntityKey::Address(i) => self.address_ids[i.0],
EntityKey::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0]
}
EntityKey::AdvancedFace(i) => self.advanced_face_ids[i.0],
EntityKey::AllAroundShapeAspect(i) => self.all_around_shape_aspect_ids[i.0],
EntityKey::AngularLocation(i) => self.angular_location_ids[i.0],
EntityKey::AngularSize(i) => self.angular_size_ids[i.0],
EntityKey::AngularityTolerance(i) => self.angularity_tolerance_ids[i.0],
EntityKey::AnnotationCurveOccurrence(i) => self.annotation_curve_occurrence_ids[i.0],
EntityKey::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0]
}
EntityKey::AnnotationOccurrence(i) => self.annotation_occurrence_ids[i.0],
EntityKey::AnnotationOccurrenceAssociativity(i) => {
self.annotation_occurrence_associativity_ids[i.0]
}
EntityKey::AnnotationOccurrenceRelationship(i) => {
self.annotation_occurrence_relationship_ids[i.0]
}
EntityKey::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0]
}
EntityKey::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0]
}
EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
self.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
}
EntityKey::AnnotationPlane(i) => self.annotation_plane_ids[i.0],
EntityKey::AnnotationSymbol(i) => self.annotation_symbol_ids[i.0],
EntityKey::AnnotationSymbolOccurrence(i) => self.annotation_symbol_occurrence_ids[i.0],
EntityKey::AnnotationText(i) => self.annotation_text_ids[i.0],
EntityKey::AnnotationTextCharacter(i) => self.annotation_text_character_ids[i.0],
EntityKey::AnnotationTextOccurrence(i) => self.annotation_text_occurrence_ids[i.0],
EntityKey::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0]
}
EntityKey::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0]
}
EntityKey::ApllPoint(i) => self.apll_point_ids[i.0],
EntityKey::ApllPointWithSurface(i) => self.apll_point_with_surface_ids[i.0],
EntityKey::ApplicationContext(i) => self.application_context_ids[i.0],
EntityKey::ApplicationContextElement(i) => self.application_context_element_ids[i.0],
EntityKey::ApplicationProtocolDefinition(i) => {
self.application_protocol_definition_ids[i.0]
}
EntityKey::AppliedApprovalAssignment(i) => self.applied_approval_assignment_ids[i.0],
EntityKey::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0]
}
EntityKey::AppliedDocumentReference(i) => self.applied_document_reference_ids[i.0],
EntityKey::AppliedExternalIdentificationAssignment(i) => {
self.applied_external_identification_assignment_ids[i.0]
}
EntityKey::AppliedGroupAssignment(i) => self.applied_group_assignment_ids[i.0],
EntityKey::AppliedPersonAndOrganizationAssignment(i) => {
self.applied_person_and_organization_assignment_ids[i.0]
}
EntityKey::AppliedPresentedItem(i) => self.applied_presented_item_ids[i.0],
EntityKey::AppliedSecurityClassificationAssignment(i) => {
self.applied_security_classification_assignment_ids[i.0]
}
EntityKey::Approval(i) => self.approval_ids[i.0],
EntityKey::ApprovalAssignment(i) => self.approval_assignment_ids[i.0],
EntityKey::ApprovalDateTime(i) => self.approval_date_time_ids[i.0],
EntityKey::ApprovalPersonOrganization(i) => self.approval_person_organization_ids[i.0],
EntityKey::ApprovalRole(i) => self.approval_role_ids[i.0],
EntityKey::ApprovalStatus(i) => self.approval_status_ids[i.0],
EntityKey::ApproximationTolerance(i) => self.approximation_tolerance_ids[i.0],
EntityKey::ApproximationToleranceDeviation(i) => {
self.approximation_tolerance_deviation_ids[i.0]
}
EntityKey::ApproximationToleranceParameter(i) => {
self.approximation_tolerance_parameter_ids[i.0]
}
EntityKey::AreaInSet(i) => self.area_in_set_ids[i.0],
EntityKey::AreaUnit(i) => self.area_unit_ids[i.0],
EntityKey::AscribableState(i) => self.ascribable_state_ids[i.0],
EntityKey::AscribableStateRelationship(i) => {
self.ascribable_state_relationship_ids[i.0]
}
EntityKey::AssemblyComponentUsage(i) => self.assembly_component_usage_ids[i.0],
EntityKey::AuxiliaryLeaderLine(i) => self.auxiliary_leader_line_ids[i.0],
EntityKey::Axis1Placement(i) => self.axis1_placement_ids[i.0],
EntityKey::Axis2Placement2d(i) => self.axis2_placement2d_ids[i.0],
EntityKey::Axis2Placement3d(i) => self.axis2_placement3d_ids[i.0],
EntityKey::BSplineCurve(i) => self.b_spline_curve_ids[i.0],
EntityKey::BSplineCurveWithKnots(i) => self.b_spline_curve_with_knots_ids[i.0],
EntityKey::BSplineSurface(i) => self.b_spline_surface_ids[i.0],
EntityKey::BSplineSurfaceWithKnots(i) => self.b_spline_surface_with_knots_ids[i.0],
EntityKey::BezierCurve(i) => self.bezier_curve_ids[i.0],
EntityKey::BezierSurface(i) => self.bezier_surface_ids[i.0],
EntityKey::BoundedCurve(i) => self.bounded_curve_ids[i.0],
EntityKey::BoundedPcurve(i) => self.bounded_pcurve_ids[i.0],
EntityKey::BoundedSurface(i) => self.bounded_surface_ids[i.0],
EntityKey::BoundedSurfaceCurve(i) => self.bounded_surface_curve_ids[i.0],
EntityKey::BrepWithVoids(i) => self.brep_with_voids_ids[i.0],
EntityKey::CalendarDate(i) => self.calendar_date_ids[i.0],
EntityKey::CameraImage(i) => self.camera_image_ids[i.0],
EntityKey::CameraImage3dWithScale(i) => self.camera_image3d_with_scale_ids[i.0],
EntityKey::CameraModel(i) => self.camera_model_ids[i.0],
EntityKey::CameraModelD3(i) => self.camera_model_d3_ids[i.0],
EntityKey::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0]
}
EntityKey::CameraModelD3WithHlhsr(i) => self.camera_model_d3_with_hlhsr_ids[i.0],
EntityKey::CameraUsage(i) => self.camera_usage_ids[i.0],
EntityKey::CartesianPoint(i) => self.cartesian_point_ids[i.0],
EntityKey::CcDesignApproval(i) => self.cc_design_approval_ids[i.0],
EntityKey::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0]
}
EntityKey::CcDesignPersonAndOrganizationAssignment(i) => {
self.cc_design_person_and_organization_assignment_ids[i.0]
}
EntityKey::CcDesignSecurityClassification(i) => {
self.cc_design_security_classification_ids[i.0]
}
EntityKey::CentreOfSymmetry(i) => self.centre_of_symmetry_ids[i.0],
EntityKey::Certification(i) => self.certification_ids[i.0],
EntityKey::CertificationType(i) => self.certification_type_ids[i.0],
EntityKey::Change(i) => self.change_ids[i.0],
EntityKey::ChangeRequest(i) => self.change_request_ids[i.0],
EntityKey::CharacterGlyphStyleOutline(i) => self.character_glyph_style_outline_ids[i.0],
EntityKey::CharacterGlyphStyleStroke(i) => self.character_glyph_style_stroke_ids[i.0],
EntityKey::CharacterizedItemWithinRepresentation(i) => {
self.characterized_item_within_representation_ids[i.0]
}
EntityKey::CharacterizedObject(i) => self.characterized_object_ids[i.0],
EntityKey::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0],
EntityKey::Circle(i) => self.circle_ids[i.0],
EntityKey::CircularRunoutTolerance(i) => self.circular_runout_tolerance_ids[i.0],
EntityKey::ClosedShell(i) => self.closed_shell_ids[i.0],
EntityKey::CoaxialityTolerance(i) => self.coaxiality_tolerance_ids[i.0],
EntityKey::Colour(i) => self.colour_ids[i.0],
EntityKey::ColourRgb(i) => self.colour_rgb_ids[i.0],
EntityKey::ColourSpecification(i) => self.colour_specification_ids[i.0],
EntityKey::CommonDatum(i) => self.common_datum_ids[i.0],
EntityKey::ComplexTriangulatedFace(i) => self.complex_triangulated_face_ids[i.0],
EntityKey::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0]
}
EntityKey::CompositeCurve(i) => self.composite_curve_ids[i.0],
EntityKey::CompositeCurveSegment(i) => self.composite_curve_segment_ids[i.0],
EntityKey::CompositeGroupShapeAspect(i) => self.composite_group_shape_aspect_ids[i.0],
EntityKey::CompositeShapeAspect(i) => self.composite_shape_aspect_ids[i.0],
EntityKey::CompositeText(i) => self.composite_text_ids[i.0],
EntityKey::CompoundRepresentationItem(i) => self.compound_representation_item_ids[i.0],
EntityKey::ConcentricityTolerance(i) => self.concentricity_tolerance_ids[i.0],
EntityKey::ConfigurationDesign(i) => self.configuration_design_ids[i.0],
EntityKey::ConfigurationEffectivity(i) => self.configuration_effectivity_ids[i.0],
EntityKey::ConfigurationItem(i) => self.configuration_item_ids[i.0],
EntityKey::Conic(i) => self.conic_ids[i.0],
EntityKey::ConicalSurface(i) => self.conical_surface_ids[i.0],
EntityKey::ConnectedFaceSet(i) => self.connected_face_set_ids[i.0],
EntityKey::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0]
}
EntityKey::ConstructiveGeometryRepresentationRelationship(i) => {
self.constructive_geometry_representation_relationship_ids[i.0]
}
EntityKey::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0]
}
EntityKey::ContextDependentShapeRepresentation(i) => {
self.context_dependent_shape_representation_ids[i.0]
}
EntityKey::ContextDependentUnit(i) => self.context_dependent_unit_ids[i.0],
EntityKey::ContinuousShapeAspect(i) => self.continuous_shape_aspect_ids[i.0],
EntityKey::Contract(i) => self.contract_ids[i.0],
EntityKey::ContractType(i) => self.contract_type_ids[i.0],
EntityKey::ConversionBasedUnit(i) => self.conversion_based_unit_ids[i.0],
EntityKey::CoordinatedUniversalTimeOffset(i) => {
self.coordinated_universal_time_offset_ids[i.0]
}
EntityKey::CoordinatesList(i) => self.coordinates_list_ids[i.0],
EntityKey::Curve(i) => self.curve_ids[i.0],
EntityKey::CurveStyle(i) => self.curve_style_ids[i.0],
EntityKey::CurveStyleFont(i) => self.curve_style_font_ids[i.0],
EntityKey::CurveStyleFontAndScaling(i) => self.curve_style_font_and_scaling_ids[i.0],
EntityKey::CurveStyleFontPattern(i) => self.curve_style_font_pattern_ids[i.0],
EntityKey::CurveStyleRendering(i) => self.curve_style_rendering_ids[i.0],
EntityKey::CylindricalSurface(i) => self.cylindrical_surface_ids[i.0],
EntityKey::CylindricityTolerance(i) => self.cylindricity_tolerance_ids[i.0],
EntityKey::Date(i) => self.date_ids[i.0],
EntityKey::DateAndTime(i) => self.date_and_time_ids[i.0],
EntityKey::DateAndTimeAssignment(i) => self.date_and_time_assignment_ids[i.0],
EntityKey::DateRole(i) => self.date_role_ids[i.0],
EntityKey::DateTimeRole(i) => self.date_time_role_ids[i.0],
EntityKey::Datum(i) => self.datum_ids[i.0],
EntityKey::DatumFeature(i) => self.datum_feature_ids[i.0],
EntityKey::DatumReference(i) => self.datum_reference_ids[i.0],
EntityKey::DatumReferenceCompartment(i) => self.datum_reference_compartment_ids[i.0],
EntityKey::DatumReferenceElement(i) => self.datum_reference_element_ids[i.0],
EntityKey::DatumReferenceModifierWithValue(i) => {
self.datum_reference_modifier_with_value_ids[i.0]
}
EntityKey::DatumSystem(i) => self.datum_system_ids[i.0],
EntityKey::DatumTarget(i) => self.datum_target_ids[i.0],
EntityKey::DefaultModelGeometricView(i) => self.default_model_geometric_view_ids[i.0],
EntityKey::DefinedCharacterGlyph(i) => self.defined_character_glyph_ids[i.0],
EntityKey::DefinedSymbol(i) => self.defined_symbol_ids[i.0],
EntityKey::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0],
EntityKey::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0]
}
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(i) => {
self.definitional_representation_relationship_with_same_context_ids[i.0]
}
EntityKey::DegenerateToroidalSurface(i) => self.degenerate_toroidal_surface_ids[i.0],
EntityKey::DerivedShapeAspect(i) => self.derived_shape_aspect_ids[i.0],
EntityKey::DerivedUnit(i) => self.derived_unit_ids[i.0],
EntityKey::DerivedUnitElement(i) => self.derived_unit_element_ids[i.0],
EntityKey::DescriptionAttribute(i) => self.description_attribute_ids[i.0],
EntityKey::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0]
}
EntityKey::DesignContext(i) => self.design_context_ids[i.0],
EntityKey::DimensionalCharacteristicRepresentation(i) => {
self.dimensional_characteristic_representation_ids[i.0]
}
EntityKey::DimensionalExponents(i) => self.dimensional_exponents_ids[i.0],
EntityKey::DimensionalLocation(i) => self.dimensional_location_ids[i.0],
EntityKey::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0]
}
EntityKey::DimensionalSize(i) => self.dimensional_size_ids[i.0],
EntityKey::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0]
}
EntityKey::DimensionalSizeWithPath(i) => self.dimensional_size_with_path_ids[i.0],
EntityKey::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0]
}
EntityKey::Direction(i) => self.direction_ids[i.0],
EntityKey::Document(i) => self.document_ids[i.0],
EntityKey::DocumentFile(i) => self.document_file_ids[i.0],
EntityKey::DocumentProductAssociation(i) => self.document_product_association_ids[i.0],
EntityKey::DocumentProductEquivalence(i) => self.document_product_equivalence_ids[i.0],
EntityKey::DocumentReference(i) => self.document_reference_ids[i.0],
EntityKey::DocumentRepresentationType(i) => self.document_representation_type_ids[i.0],
EntityKey::DocumentType(i) => self.document_type_ids[i.0],
EntityKey::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0]
}
EntityKey::DraughtingCallout(i) => self.draughting_callout_ids[i.0],
EntityKey::DraughtingCalloutRelationship(i) => {
self.draughting_callout_relationship_ids[i.0]
}
EntityKey::DraughtingModel(i) => self.draughting_model_ids[i.0],
EntityKey::DraughtingModelItemAssociation(i) => {
self.draughting_model_item_association_ids[i.0]
}
EntityKey::DraughtingModelItemAssociationWithPlaceholder(i) => {
self.draughting_model_item_association_with_placeholder_ids[i.0]
}
EntityKey::DraughtingPreDefinedColour(i) => self.draughting_pre_defined_colour_ids[i.0],
EntityKey::DraughtingPreDefinedCurveFont(i) => {
self.draughting_pre_defined_curve_font_ids[i.0]
}
EntityKey::DraughtingPreDefinedTextFont(i) => {
self.draughting_pre_defined_text_font_ids[i.0]
}
EntityKey::Edge(i) => self.edge_ids[i.0],
EntityKey::EdgeCurve(i) => self.edge_curve_ids[i.0],
EntityKey::EdgeLoop(i) => self.edge_loop_ids[i.0],
EntityKey::Effectivity(i) => self.effectivity_ids[i.0],
EntityKey::ElementarySurface(i) => self.elementary_surface_ids[i.0],
EntityKey::Ellipse(i) => self.ellipse_ids[i.0],
EntityKey::Expression(i) => self.expression_ids[i.0],
EntityKey::ExternalIdentificationAssignment(i) => {
self.external_identification_assignment_ids[i.0]
}
EntityKey::ExternalSource(i) => self.external_source_ids[i.0],
EntityKey::ExternallyDefinedCharacterGlyph(i) => {
self.externally_defined_character_glyph_ids[i.0]
}
EntityKey::ExternallyDefinedCurveFont(i) => self.externally_defined_curve_font_ids[i.0],
EntityKey::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0]
}
EntityKey::ExternallyDefinedItem(i) => self.externally_defined_item_ids[i.0],
EntityKey::ExternallyDefinedStyle(i) => self.externally_defined_style_ids[i.0],
EntityKey::ExternallyDefinedSymbol(i) => self.externally_defined_symbol_ids[i.0],
EntityKey::ExternallyDefinedTextFont(i) => self.externally_defined_text_font_ids[i.0],
EntityKey::ExternallyDefinedTile(i) => self.externally_defined_tile_ids[i.0],
EntityKey::ExternallyDefinedTileStyle(i) => self.externally_defined_tile_style_ids[i.0],
EntityKey::Face(i) => self.face_ids[i.0],
EntityKey::FaceBound(i) => self.face_bound_ids[i.0],
EntityKey::FaceOuterBound(i) => self.face_outer_bound_ids[i.0],
EntityKey::FaceSurface(i) => self.face_surface_ids[i.0],
EntityKey::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0]
}
EntityKey::FillAreaStyle(i) => self.fill_area_style_ids[i.0],
EntityKey::FillAreaStyleColour(i) => self.fill_area_style_colour_ids[i.0],
EntityKey::FillAreaStyleHatching(i) => self.fill_area_style_hatching_ids[i.0],
EntityKey::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0]
}
EntityKey::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0]
}
EntityKey::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0]
}
EntityKey::FillAreaStyleTiles(i) => self.fill_area_style_tiles_ids[i.0],
EntityKey::FlatnessTolerance(i) => self.flatness_tolerance_ids[i.0],
EntityKey::FoundedItem(i) => self.founded_item_ids[i.0],
EntityKey::FunctionallyDefinedTransformation(i) => {
self.functionally_defined_transformation_ids[i.0]
}
EntityKey::GeneralDatumReference(i) => self.general_datum_reference_ids[i.0],
EntityKey::GeneralProperty(i) => self.general_property_ids[i.0],
EntityKey::GeneralPropertyAssociation(i) => self.general_property_association_ids[i.0],
EntityKey::GenericExpression(i) => self.generic_expression_ids[i.0],
EntityKey::GenericLiteral(i) => self.generic_literal_ids[i.0],
EntityKey::GenericProductDefinitionReference(i) => {
self.generic_product_definition_reference_ids[i.0]
}
EntityKey::GeometricCurveSet(i) => self.geometric_curve_set_ids[i.0],
EntityKey::GeometricItemSpecificUsage(i) => self.geometric_item_specific_usage_ids[i.0],
EntityKey::GeometricRepresentationContext(i) => {
self.geometric_representation_context_ids[i.0]
}
EntityKey::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0]
}
EntityKey::GeometricSet(i) => self.geometric_set_ids[i.0],
EntityKey::GeometricTolerance(i) => self.geometric_tolerance_ids[i.0],
EntityKey::GeometricToleranceRelationship(i) => {
self.geometric_tolerance_relationship_ids[i.0]
}
EntityKey::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0]
}
EntityKey::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0]
}
EntityKey::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0]
}
EntityKey::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0]
}
EntityKey::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0]
}
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(i) => {
self.geometrically_bounded_surface_shape_representation_ids[i.0]
}
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(i) => {
self.geometrically_bounded_wireframe_shape_representation_ids[i.0]
}
EntityKey::GlobalUncertaintyAssignedContext(i) => {
self.global_uncertainty_assigned_context_ids[i.0]
}
EntityKey::GlobalUnitAssignedContext(i) => self.global_unit_assigned_context_ids[i.0],
EntityKey::Group(i) => self.group_ids[i.0],
EntityKey::GroupAssignment(i) => self.group_assignment_ids[i.0],
EntityKey::Hyperbola(i) => self.hyperbola_ids[i.0],
EntityKey::IdAttribute(i) => self.id_attribute_ids[i.0],
EntityKey::IdentificationAssignment(i) => self.identification_assignment_ids[i.0],
EntityKey::IdentificationRole(i) => self.identification_role_ids[i.0],
EntityKey::IntLiteral(i) => self.int_literal_ids[i.0],
EntityKey::IntegerRepresentationItem(i) => self.integer_representation_item_ids[i.0],
EntityKey::IntersectionCurve(i) => self.intersection_curve_ids[i.0],
EntityKey::Invisibility(i) => self.invisibility_ids[i.0],
EntityKey::ItemDefinedTransformation(i) => self.item_defined_transformation_ids[i.0],
EntityKey::ItemIdentifiedRepresentationUsage(i) => {
self.item_identified_representation_usage_ids[i.0]
}
EntityKey::LeaderCurve(i) => self.leader_curve_ids[i.0],
EntityKey::LeaderDirectedCallout(i) => self.leader_directed_callout_ids[i.0],
EntityKey::LeaderTerminator(i) => self.leader_terminator_ids[i.0],
EntityKey::LengthMeasureWithUnit(i) => self.length_measure_with_unit_ids[i.0],
EntityKey::LengthUnit(i) => self.length_unit_ids[i.0],
EntityKey::LimitsAndFits(i) => self.limits_and_fits_ids[i.0],
EntityKey::Line(i) => self.line_ids[i.0],
EntityKey::LineProfileTolerance(i) => self.line_profile_tolerance_ids[i.0],
EntityKey::LiteralNumber(i) => self.literal_number_ids[i.0],
EntityKey::LocalTime(i) => self.local_time_ids[i.0],
EntityKey::Loop(i) => self.loop_ids[i.0],
EntityKey::MakeFromUsageOption(i) => self.make_from_usage_option_ids[i.0],
EntityKey::ManifoldSolidBrep(i) => self.manifold_solid_brep_ids[i.0],
EntityKey::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0]
}
EntityKey::MappedItem(i) => self.mapped_item_ids[i.0],
EntityKey::MassMeasureWithUnit(i) => self.mass_measure_with_unit_ids[i.0],
EntityKey::MassUnit(i) => self.mass_unit_ids[i.0],
EntityKey::MeasureQualification(i) => self.measure_qualification_ids[i.0],
EntityKey::MeasureRepresentationItem(i) => self.measure_representation_item_ids[i.0],
EntityKey::MeasureWithUnit(i) => self.measure_with_unit_ids[i.0],
EntityKey::MechanicalContext(i) => self.mechanical_context_ids[i.0],
EntityKey::MechanicalDesignAndDraughtingRelationship(i) => {
self.mechanical_design_and_draughting_relationship_ids[i.0]
}
EntityKey::MechanicalDesignGeometricPresentationRepresentation(i) => {
self.mechanical_design_geometric_presentation_representation_ids[i.0]
}
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
self.mechanical_design_presentation_representation_with_draughting_ids[i.0]
}
EntityKey::MechanicalDesignShadedPresentationRepresentation(i) => {
self.mechanical_design_shaded_presentation_representation_ids[i.0]
}
EntityKey::ModelGeometricView(i) => self.model_geometric_view_ids[i.0],
EntityKey::ModifiedGeometricTolerance(i) => self.modified_geometric_tolerance_ids[i.0],
EntityKey::NameAttribute(i) => self.name_attribute_ids[i.0],
EntityKey::NamedUnit(i) => self.named_unit_ids[i.0],
EntityKey::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0]
}
EntityKey::NumericExpression(i) => self.numeric_expression_ids[i.0],
EntityKey::ObjectRole(i) => self.object_role_ids[i.0],
EntityKey::OffsetSurface(i) => self.offset_surface_ids[i.0],
EntityKey::OneDirectionRepeatFactor(i) => self.one_direction_repeat_factor_ids[i.0],
EntityKey::OpenShell(i) => self.open_shell_ids[i.0],
EntityKey::Organization(i) => self.organization_ids[i.0],
EntityKey::OrganizationRelationship(i) => self.organization_relationship_ids[i.0],
EntityKey::OrganizationRole(i) => self.organization_role_ids[i.0],
EntityKey::OrganizationType(i) => self.organization_type_ids[i.0],
EntityKey::OrganizationTypeRole(i) => self.organization_type_role_ids[i.0],
EntityKey::OrganizationalAddress(i) => self.organizational_address_ids[i.0],
EntityKey::OrganizationalProject(i) => self.organizational_project_ids[i.0],
EntityKey::OrganizationalProjectRelationship(i) => {
self.organizational_project_relationship_ids[i.0]
}
EntityKey::OrganizationalProjectRole(i) => self.organizational_project_role_ids[i.0],
EntityKey::OrientedClosedShell(i) => self.oriented_closed_shell_ids[i.0],
EntityKey::OrientedEdge(i) => self.oriented_edge_ids[i.0],
EntityKey::OverRidingStyledItem(i) => self.over_riding_styled_item_ids[i.0],
EntityKey::ParallelismTolerance(i) => self.parallelism_tolerance_ids[i.0],
EntityKey::ParametricRepresentationContext(i) => {
self.parametric_representation_context_ids[i.0]
}
EntityKey::Path(i) => self.path_ids[i.0],
EntityKey::Pcurve(i) => self.pcurve_ids[i.0],
EntityKey::PerpendicularityTolerance(i) => self.perpendicularity_tolerance_ids[i.0],
EntityKey::Person(i) => self.person_ids[i.0],
EntityKey::PersonAndOrganization(i) => self.person_and_organization_ids[i.0],
EntityKey::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0]
}
EntityKey::PersonAndOrganizationAssignment(i) => {
self.person_and_organization_assignment_ids[i.0]
}
EntityKey::PersonAndOrganizationRole(i) => self.person_and_organization_role_ids[i.0],
EntityKey::PersonalAddress(i) => self.personal_address_ids[i.0],
EntityKey::PlacedDatumTargetFeature(i) => self.placed_datum_target_feature_ids[i.0],
EntityKey::Placement(i) => self.placement_ids[i.0],
EntityKey::PlanarBox(i) => self.planar_box_ids[i.0],
EntityKey::PlanarExtent(i) => self.planar_extent_ids[i.0],
EntityKey::Plane(i) => self.plane_ids[i.0],
EntityKey::PlaneAngleMeasureWithUnit(i) => self.plane_angle_measure_with_unit_ids[i.0],
EntityKey::PlaneAngleUnit(i) => self.plane_angle_unit_ids[i.0],
EntityKey::PlusMinusTolerance(i) => self.plus_minus_tolerance_ids[i.0],
EntityKey::Point(i) => self.point_ids[i.0],
EntityKey::PointStyle(i) => self.point_style_ids[i.0],
EntityKey::PolyLoop(i) => self.poly_loop_ids[i.0],
EntityKey::Polyline(i) => self.polyline_ids[i.0],
EntityKey::PositionTolerance(i) => self.position_tolerance_ids[i.0],
EntityKey::PreDefinedCharacterGlyph(i) => self.pre_defined_character_glyph_ids[i.0],
EntityKey::PreDefinedColour(i) => self.pre_defined_colour_ids[i.0],
EntityKey::PreDefinedCurveFont(i) => self.pre_defined_curve_font_ids[i.0],
EntityKey::PreDefinedItem(i) => self.pre_defined_item_ids[i.0],
EntityKey::PreDefinedMarker(i) => self.pre_defined_marker_ids[i.0],
EntityKey::PreDefinedPointMarkerSymbol(i) => {
self.pre_defined_point_marker_symbol_ids[i.0]
}
EntityKey::PreDefinedPresentationStyle(i) => {
self.pre_defined_presentation_style_ids[i.0]
}
EntityKey::PreDefinedSurfaceSideStyle(i) => {
self.pre_defined_surface_side_style_ids[i.0]
}
EntityKey::PreDefinedSymbol(i) => self.pre_defined_symbol_ids[i.0],
EntityKey::PreDefinedTerminatorSymbol(i) => self.pre_defined_terminator_symbol_ids[i.0],
EntityKey::PreDefinedTextFont(i) => self.pre_defined_text_font_ids[i.0],
EntityKey::PreDefinedTile(i) => self.pre_defined_tile_ids[i.0],
EntityKey::PrecisionQualifier(i) => self.precision_qualifier_ids[i.0],
EntityKey::PresentationArea(i) => self.presentation_area_ids[i.0],
EntityKey::PresentationLayerAssignment(i) => {
self.presentation_layer_assignment_ids[i.0]
}
EntityKey::PresentationRepresentation(i) => self.presentation_representation_ids[i.0],
EntityKey::PresentationSet(i) => self.presentation_set_ids[i.0],
EntityKey::PresentationSize(i) => self.presentation_size_ids[i.0],
EntityKey::PresentationStyleAssignment(i) => {
self.presentation_style_assignment_ids[i.0]
}
EntityKey::PresentationStyleByContext(i) => self.presentation_style_by_context_ids[i.0],
EntityKey::PresentationView(i) => self.presentation_view_ids[i.0],
EntityKey::PresentedItem(i) => self.presented_item_ids[i.0],
EntityKey::PresentedItemRepresentation(i) => {
self.presented_item_representation_ids[i.0]
}
EntityKey::Product(i) => self.product_ids[i.0],
EntityKey::ProductCategory(i) => self.product_category_ids[i.0],
EntityKey::ProductCategoryRelationship(i) => {
self.product_category_relationship_ids[i.0]
}
EntityKey::ProductConcept(i) => self.product_concept_ids[i.0],
EntityKey::ProductConceptContext(i) => self.product_concept_context_ids[i.0],
EntityKey::ProductConceptFeature(i) => self.product_concept_feature_ids[i.0],
EntityKey::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0]
}
EntityKey::ProductContext(i) => self.product_context_ids[i.0],
EntityKey::ProductDefinition(i) => self.product_definition_ids[i.0],
EntityKey::ProductDefinitionContext(i) => self.product_definition_context_ids[i.0],
EntityKey::ProductDefinitionContextAssociation(i) => {
self.product_definition_context_association_ids[i.0]
}
EntityKey::ProductDefinitionContextRole(i) => {
self.product_definition_context_role_ids[i.0]
}
EntityKey::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0]
}
EntityKey::ProductDefinitionFormation(i) => self.product_definition_formation_ids[i.0],
EntityKey::ProductDefinitionFormationWithSpecifiedSource(i) => {
self.product_definition_formation_with_specified_source_ids[i.0]
}
EntityKey::ProductDefinitionOccurrence(i) => {
self.product_definition_occurrence_ids[i.0]
}
EntityKey::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0]
}
EntityKey::ProductDefinitionRelationshipRelationship(i) => {
self.product_definition_relationship_relationship_ids[i.0]
}
EntityKey::ProductDefinitionShape(i) => self.product_definition_shape_ids[i.0],
EntityKey::ProductDefinitionSubstitute(i) => {
self.product_definition_substitute_ids[i.0]
}
EntityKey::ProductDefinitionUsage(i) => self.product_definition_usage_ids[i.0],
EntityKey::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0]
}
EntityKey::ProductRelatedProductCategory(i) => {
self.product_related_product_category_ids[i.0]
}
EntityKey::ProjectedZoneDefinition(i) => self.projected_zone_definition_ids[i.0],
EntityKey::PropertyDefinition(i) => self.property_definition_ids[i.0],
EntityKey::PropertyDefinitionRelationship(i) => {
self.property_definition_relationship_ids[i.0]
}
EntityKey::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0]
}
EntityKey::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0]
}
EntityKey::QuasiUniformCurve(i) => self.quasi_uniform_curve_ids[i.0],
EntityKey::QuasiUniformSurface(i) => self.quasi_uniform_surface_ids[i.0],
EntityKey::RatioMeasureWithUnit(i) => self.ratio_measure_with_unit_ids[i.0],
EntityKey::RatioUnit(i) => self.ratio_unit_ids[i.0],
EntityKey::RationalBSplineCurve(i) => self.rational_b_spline_curve_ids[i.0],
EntityKey::RationalBSplineSurface(i) => self.rational_b_spline_surface_ids[i.0],
EntityKey::RealLiteral(i) => self.real_literal_ids[i.0],
EntityKey::RealRepresentationItem(i) => self.real_representation_item_ids[i.0],
EntityKey::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0]
}
EntityKey::Representation(i) => self.representation_ids[i.0],
EntityKey::RepresentationContext(i) => self.representation_context_ids[i.0],
EntityKey::RepresentationContextReference(i) => {
self.representation_context_reference_ids[i.0]
}
EntityKey::RepresentationItem(i) => self.representation_item_ids[i.0],
EntityKey::RepresentationMap(i) => self.representation_map_ids[i.0],
EntityKey::RepresentationReference(i) => self.representation_reference_ids[i.0],
EntityKey::RepresentationRelationship(i) => self.representation_relationship_ids[i.0],
EntityKey::RepresentationRelationshipWithTransformation(i) => {
self.representation_relationship_with_transformation_ids[i.0]
}
EntityKey::ResourceProperty(i) => self.resource_property_ids[i.0],
EntityKey::ResourceRequirementType(i) => self.resource_requirement_type_ids[i.0],
EntityKey::RoleAssociation(i) => self.role_association_ids[i.0],
EntityKey::RoundnessTolerance(i) => self.roundness_tolerance_ids[i.0],
EntityKey::SeamCurve(i) => self.seam_curve_ids[i.0],
EntityKey::SecurityClassification(i) => self.security_classification_ids[i.0],
EntityKey::SecurityClassificationAssignment(i) => {
self.security_classification_assignment_ids[i.0]
}
EntityKey::SecurityClassificationLevel(i) => {
self.security_classification_level_ids[i.0]
}
EntityKey::ShapeAspect(i) => self.shape_aspect_ids[i.0],
EntityKey::ShapeAspectAssociativity(i) => self.shape_aspect_associativity_ids[i.0],
EntityKey::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0]
}
EntityKey::ShapeAspectRelationship(i) => self.shape_aspect_relationship_ids[i.0],
EntityKey::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0]
}
EntityKey::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0]
}
EntityKey::ShapeRepresentation(i) => self.shape_representation_ids[i.0],
EntityKey::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0]
}
EntityKey::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0]
}
EntityKey::ShellBasedSurfaceModel(i) => self.shell_based_surface_model_ids[i.0],
EntityKey::SiUnit(i) => self.si_unit_ids[i.0],
EntityKey::SimpleGenericExpression(i) => self.simple_generic_expression_ids[i.0],
EntityKey::SimpleNumericExpression(i) => self.simple_numeric_expression_ids[i.0],
EntityKey::SolidAngleUnit(i) => self.solid_angle_unit_ids[i.0],
EntityKey::SolidModel(i) => self.solid_model_ids[i.0],
EntityKey::SphericalSurface(i) => self.spherical_surface_ids[i.0],
EntityKey::StartRequest(i) => self.start_request_ids[i.0],
EntityKey::StartWork(i) => self.start_work_ids[i.0],
EntityKey::StateObserved(i) => self.state_observed_ids[i.0],
EntityKey::StateType(i) => self.state_type_ids[i.0],
EntityKey::StraightnessTolerance(i) => self.straightness_tolerance_ids[i.0],
EntityKey::StyledItem(i) => self.styled_item_ids[i.0],
EntityKey::Surface(i) => self.surface_ids[i.0],
EntityKey::SurfaceCurve(i) => self.surface_curve_ids[i.0],
EntityKey::SurfaceOfLinearExtrusion(i) => self.surface_of_linear_extrusion_ids[i.0],
EntityKey::SurfaceOfRevolution(i) => self.surface_of_revolution_ids[i.0],
EntityKey::SurfaceProfileTolerance(i) => self.surface_profile_tolerance_ids[i.0],
EntityKey::SurfaceRenderingProperties(i) => self.surface_rendering_properties_ids[i.0],
EntityKey::SurfaceSideStyle(i) => self.surface_side_style_ids[i.0],
EntityKey::SurfaceStyleBoundary(i) => self.surface_style_boundary_ids[i.0],
EntityKey::SurfaceStyleControlGrid(i) => self.surface_style_control_grid_ids[i.0],
EntityKey::SurfaceStyleFillArea(i) => self.surface_style_fill_area_ids[i.0],
EntityKey::SurfaceStyleParameterLine(i) => self.surface_style_parameter_line_ids[i.0],
EntityKey::SurfaceStyleReflectanceAmbient(i) => {
self.surface_style_reflectance_ambient_ids[i.0]
}
EntityKey::SurfaceStyleRendering(i) => self.surface_style_rendering_ids[i.0],
EntityKey::SurfaceStyleRenderingWithProperties(i) => {
self.surface_style_rendering_with_properties_ids[i.0]
}
EntityKey::SurfaceStyleSegmentationCurve(i) => {
self.surface_style_segmentation_curve_ids[i.0]
}
EntityKey::SurfaceStyleSilhouette(i) => self.surface_style_silhouette_ids[i.0],
EntityKey::SurfaceStyleTransparent(i) => self.surface_style_transparent_ids[i.0],
EntityKey::SurfaceStyleUsage(i) => self.surface_style_usage_ids[i.0],
EntityKey::SweptSurface(i) => self.swept_surface_ids[i.0],
EntityKey::SymbolColour(i) => self.symbol_colour_ids[i.0],
EntityKey::SymbolRepresentation(i) => self.symbol_representation_ids[i.0],
EntityKey::SymbolStyle(i) => self.symbol_style_ids[i.0],
EntityKey::SymbolTarget(i) => self.symbol_target_ids[i.0],
EntityKey::SymmetryTolerance(i) => self.symmetry_tolerance_ids[i.0],
EntityKey::TerminatorSymbol(i) => self.terminator_symbol_ids[i.0],
EntityKey::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0]
}
EntityKey::TessellatedCurveSet(i) => self.tessellated_curve_set_ids[i.0],
EntityKey::TessellatedFace(i) => self.tessellated_face_ids[i.0],
EntityKey::TessellatedGeometricSet(i) => self.tessellated_geometric_set_ids[i.0],
EntityKey::TessellatedItem(i) => self.tessellated_item_ids[i.0],
EntityKey::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0]
}
EntityKey::TessellatedShell(i) => self.tessellated_shell_ids[i.0],
EntityKey::TessellatedSolid(i) => self.tessellated_solid_ids[i.0],
EntityKey::TessellatedStructuredItem(i) => self.tessellated_structured_item_ids[i.0],
EntityKey::TessellatedSurfaceSet(i) => self.tessellated_surface_set_ids[i.0],
EntityKey::TextFont(i) => self.text_font_ids[i.0],
EntityKey::TextLiteral(i) => self.text_literal_ids[i.0],
EntityKey::TextStyle(i) => self.text_style_ids[i.0],
EntityKey::TextStyleForDefinedFont(i) => self.text_style_for_defined_font_ids[i.0],
EntityKey::TextStyleWithBoxCharacteristics(i) => {
self.text_style_with_box_characteristics_ids[i.0]
}
EntityKey::TextureStyleSpecification(i) => self.texture_style_specification_ids[i.0],
EntityKey::TextureStyleTessellationSpecification(i) => {
self.texture_style_tessellation_specification_ids[i.0]
}
EntityKey::TimeUnit(i) => self.time_unit_ids[i.0],
EntityKey::ToleranceValue(i) => self.tolerance_value_ids[i.0],
EntityKey::ToleranceZone(i) => self.tolerance_zone_ids[i.0],
EntityKey::ToleranceZoneDefinition(i) => self.tolerance_zone_definition_ids[i.0],
EntityKey::ToleranceZoneForm(i) => self.tolerance_zone_form_ids[i.0],
EntityKey::ToleranceZoneWithDatum(i) => self.tolerance_zone_with_datum_ids[i.0],
EntityKey::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0]
}
EntityKey::ToroidalSurface(i) => self.toroidal_surface_ids[i.0],
EntityKey::TotalRunoutTolerance(i) => self.total_runout_tolerance_ids[i.0],
EntityKey::TrimmedCurve(i) => self.trimmed_curve_ids[i.0],
EntityKey::TwoDirectionRepeatFactor(i) => self.two_direction_repeat_factor_ids[i.0],
EntityKey::TypeQualifier(i) => self.type_qualifier_ids[i.0],
EntityKey::UncertaintyMeasureWithUnit(i) => self.uncertainty_measure_with_unit_ids[i.0],
EntityKey::UncertaintyQualifier(i) => self.uncertainty_qualifier_ids[i.0],
EntityKey::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0]
}
EntityKey::UniformCurve(i) => self.uniform_curve_ids[i.0],
EntityKey::UniformSurface(i) => self.uniform_surface_ids[i.0],
EntityKey::ValueFormatTypeQualifier(i) => self.value_format_type_qualifier_ids[i.0],
EntityKey::ValueRepresentationItem(i) => self.value_representation_item_ids[i.0],
EntityKey::Vector(i) => self.vector_ids[i.0],
EntityKey::VersionedActionRequest(i) => self.versioned_action_request_ids[i.0],
EntityKey::Vertex(i) => self.vertex_ids[i.0],
EntityKey::VertexLoop(i) => self.vertex_loop_ids[i.0],
EntityKey::VertexPoint(i) => self.vertex_point_ids[i.0],
EntityKey::VertexShell(i) => self.vertex_shell_ids[i.0],
EntityKey::ViewVolume(i) => self.view_volume_ids[i.0],
EntityKey::VolumeUnit(i) => self.volume_unit_ids[i.0],
EntityKey::WireShell(i) => self.wire_shell_ids[i.0],
EntityKey::ComplexUnit(i) => self.complex_ids[i.0],
}
}
fn set_id(&mut self, any: EntityKey, n: u64) {
match any {
EntityKey::Action(i) => self.action_ids[i.0] = Some(n),
EntityKey::ActionAssignment(i) => self.action_assignment_ids[i.0] = Some(n),
EntityKey::ActionDirective(i) => self.action_directive_ids[i.0] = Some(n),
EntityKey::ActionMethod(i) => self.action_method_ids[i.0] = Some(n),
EntityKey::ActionMethodRelationship(i) => {
self.action_method_relationship_ids[i.0] = Some(n)
}
EntityKey::ActionProperty(i) => self.action_property_ids[i.0] = Some(n),
EntityKey::ActionRelationship(i) => self.action_relationship_ids[i.0] = Some(n),
EntityKey::ActionRequestAssignment(i) => {
self.action_request_assignment_ids[i.0] = Some(n)
}
EntityKey::ActionRequestSolution(i) => self.action_request_solution_ids[i.0] = Some(n),
EntityKey::ActionResource(i) => self.action_resource_ids[i.0] = Some(n),
EntityKey::ActionResourceRelationship(i) => {
self.action_resource_relationship_ids[i.0] = Some(n)
}
EntityKey::ActionResourceRequirement(i) => {
self.action_resource_requirement_ids[i.0] = Some(n)
}
EntityKey::ActionResourceType(i) => self.action_resource_type_ids[i.0] = Some(n),
EntityKey::Address(i) => self.address_ids[i.0] = Some(n),
EntityKey::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0] = Some(n)
}
EntityKey::AdvancedFace(i) => self.advanced_face_ids[i.0] = Some(n),
EntityKey::AllAroundShapeAspect(i) => self.all_around_shape_aspect_ids[i.0] = Some(n),
EntityKey::AngularLocation(i) => self.angular_location_ids[i.0] = Some(n),
EntityKey::AngularSize(i) => self.angular_size_ids[i.0] = Some(n),
EntityKey::AngularityTolerance(i) => self.angularity_tolerance_ids[i.0] = Some(n),
EntityKey::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0] = Some(n)
}
EntityKey::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0] = Some(n)
}
EntityKey::AnnotationOccurrence(i) => self.annotation_occurrence_ids[i.0] = Some(n),
EntityKey::AnnotationOccurrenceAssociativity(i) => {
self.annotation_occurrence_associativity_ids[i.0] = Some(n)
}
EntityKey::AnnotationOccurrenceRelationship(i) => {
self.annotation_occurrence_relationship_ids[i.0] = Some(n)
}
EntityKey::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0] = Some(n)
}
EntityKey::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0] = Some(n)
}
EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
self.annotation_placeholder_occurrence_with_leader_line_ids[i.0] = Some(n)
}
EntityKey::AnnotationPlane(i) => self.annotation_plane_ids[i.0] = Some(n),
EntityKey::AnnotationSymbol(i) => self.annotation_symbol_ids[i.0] = Some(n),
EntityKey::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0] = Some(n)
}
EntityKey::AnnotationText(i) => self.annotation_text_ids[i.0] = Some(n),
EntityKey::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0] = Some(n)
}
EntityKey::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0] = Some(n)
}
EntityKey::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0] = Some(n)
}
EntityKey::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0] = Some(n)
}
EntityKey::ApllPoint(i) => self.apll_point_ids[i.0] = Some(n),
EntityKey::ApllPointWithSurface(i) => self.apll_point_with_surface_ids[i.0] = Some(n),
EntityKey::ApplicationContext(i) => self.application_context_ids[i.0] = Some(n),
EntityKey::ApplicationContextElement(i) => {
self.application_context_element_ids[i.0] = Some(n)
}
EntityKey::ApplicationProtocolDefinition(i) => {
self.application_protocol_definition_ids[i.0] = Some(n)
}
EntityKey::AppliedApprovalAssignment(i) => {
self.applied_approval_assignment_ids[i.0] = Some(n)
}
EntityKey::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0] = Some(n)
}
EntityKey::AppliedDocumentReference(i) => {
self.applied_document_reference_ids[i.0] = Some(n)
}
EntityKey::AppliedExternalIdentificationAssignment(i) => {
self.applied_external_identification_assignment_ids[i.0] = Some(n)
}
EntityKey::AppliedGroupAssignment(i) => {
self.applied_group_assignment_ids[i.0] = Some(n)
}
EntityKey::AppliedPersonAndOrganizationAssignment(i) => {
self.applied_person_and_organization_assignment_ids[i.0] = Some(n)
}
EntityKey::AppliedPresentedItem(i) => self.applied_presented_item_ids[i.0] = Some(n),
EntityKey::AppliedSecurityClassificationAssignment(i) => {
self.applied_security_classification_assignment_ids[i.0] = Some(n)
}
EntityKey::Approval(i) => self.approval_ids[i.0] = Some(n),
EntityKey::ApprovalAssignment(i) => self.approval_assignment_ids[i.0] = Some(n),
EntityKey::ApprovalDateTime(i) => self.approval_date_time_ids[i.0] = Some(n),
EntityKey::ApprovalPersonOrganization(i) => {
self.approval_person_organization_ids[i.0] = Some(n)
}
EntityKey::ApprovalRole(i) => self.approval_role_ids[i.0] = Some(n),
EntityKey::ApprovalStatus(i) => self.approval_status_ids[i.0] = Some(n),
EntityKey::ApproximationTolerance(i) => self.approximation_tolerance_ids[i.0] = Some(n),
EntityKey::ApproximationToleranceDeviation(i) => {
self.approximation_tolerance_deviation_ids[i.0] = Some(n)
}
EntityKey::ApproximationToleranceParameter(i) => {
self.approximation_tolerance_parameter_ids[i.0] = Some(n)
}
EntityKey::AreaInSet(i) => self.area_in_set_ids[i.0] = Some(n),
EntityKey::AreaUnit(i) => self.area_unit_ids[i.0] = Some(n),
EntityKey::AscribableState(i) => self.ascribable_state_ids[i.0] = Some(n),
EntityKey::AscribableStateRelationship(i) => {
self.ascribable_state_relationship_ids[i.0] = Some(n)
}
EntityKey::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0] = Some(n)
}
EntityKey::AuxiliaryLeaderLine(i) => self.auxiliary_leader_line_ids[i.0] = Some(n),
EntityKey::Axis1Placement(i) => self.axis1_placement_ids[i.0] = Some(n),
EntityKey::Axis2Placement2d(i) => self.axis2_placement2d_ids[i.0] = Some(n),
EntityKey::Axis2Placement3d(i) => self.axis2_placement3d_ids[i.0] = Some(n),
EntityKey::BSplineCurve(i) => self.b_spline_curve_ids[i.0] = Some(n),
EntityKey::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0] = Some(n)
}
EntityKey::BSplineSurface(i) => self.b_spline_surface_ids[i.0] = Some(n),
EntityKey::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0] = Some(n)
}
EntityKey::BezierCurve(i) => self.bezier_curve_ids[i.0] = Some(n),
EntityKey::BezierSurface(i) => self.bezier_surface_ids[i.0] = Some(n),
EntityKey::BoundedCurve(i) => self.bounded_curve_ids[i.0] = Some(n),
EntityKey::BoundedPcurve(i) => self.bounded_pcurve_ids[i.0] = Some(n),
EntityKey::BoundedSurface(i) => self.bounded_surface_ids[i.0] = Some(n),
EntityKey::BoundedSurfaceCurve(i) => self.bounded_surface_curve_ids[i.0] = Some(n),
EntityKey::BrepWithVoids(i) => self.brep_with_voids_ids[i.0] = Some(n),
EntityKey::CalendarDate(i) => self.calendar_date_ids[i.0] = Some(n),
EntityKey::CameraImage(i) => self.camera_image_ids[i.0] = Some(n),
EntityKey::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0] = Some(n)
}
EntityKey::CameraModel(i) => self.camera_model_ids[i.0] = Some(n),
EntityKey::CameraModelD3(i) => self.camera_model_d3_ids[i.0] = Some(n),
EntityKey::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0] = Some(n)
}
EntityKey::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0] = Some(n)
}
EntityKey::CameraUsage(i) => self.camera_usage_ids[i.0] = Some(n),
EntityKey::CartesianPoint(i) => self.cartesian_point_ids[i.0] = Some(n),
EntityKey::CcDesignApproval(i) => self.cc_design_approval_ids[i.0] = Some(n),
EntityKey::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0] = Some(n)
}
EntityKey::CcDesignPersonAndOrganizationAssignment(i) => {
self.cc_design_person_and_organization_assignment_ids[i.0] = Some(n)
}
EntityKey::CcDesignSecurityClassification(i) => {
self.cc_design_security_classification_ids[i.0] = Some(n)
}
EntityKey::CentreOfSymmetry(i) => self.centre_of_symmetry_ids[i.0] = Some(n),
EntityKey::Certification(i) => self.certification_ids[i.0] = Some(n),
EntityKey::CertificationType(i) => self.certification_type_ids[i.0] = Some(n),
EntityKey::Change(i) => self.change_ids[i.0] = Some(n),
EntityKey::ChangeRequest(i) => self.change_request_ids[i.0] = Some(n),
EntityKey::CharacterGlyphStyleOutline(i) => {
self.character_glyph_style_outline_ids[i.0] = Some(n)
}
EntityKey::CharacterGlyphStyleStroke(i) => {
self.character_glyph_style_stroke_ids[i.0] = Some(n)
}
EntityKey::CharacterizedItemWithinRepresentation(i) => {
self.characterized_item_within_representation_ids[i.0] = Some(n)
}
EntityKey::CharacterizedObject(i) => self.characterized_object_ids[i.0] = Some(n),
EntityKey::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0] = Some(n)
}
EntityKey::Circle(i) => self.circle_ids[i.0] = Some(n),
EntityKey::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0] = Some(n)
}
EntityKey::ClosedShell(i) => self.closed_shell_ids[i.0] = Some(n),
EntityKey::CoaxialityTolerance(i) => self.coaxiality_tolerance_ids[i.0] = Some(n),
EntityKey::Colour(i) => self.colour_ids[i.0] = Some(n),
EntityKey::ColourRgb(i) => self.colour_rgb_ids[i.0] = Some(n),
EntityKey::ColourSpecification(i) => self.colour_specification_ids[i.0] = Some(n),
EntityKey::CommonDatum(i) => self.common_datum_ids[i.0] = Some(n),
EntityKey::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0] = Some(n)
}
EntityKey::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0] = Some(n)
}
EntityKey::CompositeCurve(i) => self.composite_curve_ids[i.0] = Some(n),
EntityKey::CompositeCurveSegment(i) => self.composite_curve_segment_ids[i.0] = Some(n),
EntityKey::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0] = Some(n)
}
EntityKey::CompositeShapeAspect(i) => self.composite_shape_aspect_ids[i.0] = Some(n),
EntityKey::CompositeText(i) => self.composite_text_ids[i.0] = Some(n),
EntityKey::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0] = Some(n)
}
EntityKey::ConcentricityTolerance(i) => self.concentricity_tolerance_ids[i.0] = Some(n),
EntityKey::ConfigurationDesign(i) => self.configuration_design_ids[i.0] = Some(n),
EntityKey::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0] = Some(n)
}
EntityKey::ConfigurationItem(i) => self.configuration_item_ids[i.0] = Some(n),
EntityKey::Conic(i) => self.conic_ids[i.0] = Some(n),
EntityKey::ConicalSurface(i) => self.conical_surface_ids[i.0] = Some(n),
EntityKey::ConnectedFaceSet(i) => self.connected_face_set_ids[i.0] = Some(n),
EntityKey::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0] = Some(n)
}
EntityKey::ConstructiveGeometryRepresentationRelationship(i) => {
self.constructive_geometry_representation_relationship_ids[i.0] = Some(n)
}
EntityKey::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0] = Some(n)
}
EntityKey::ContextDependentShapeRepresentation(i) => {
self.context_dependent_shape_representation_ids[i.0] = Some(n)
}
EntityKey::ContextDependentUnit(i) => self.context_dependent_unit_ids[i.0] = Some(n),
EntityKey::ContinuousShapeAspect(i) => self.continuous_shape_aspect_ids[i.0] = Some(n),
EntityKey::Contract(i) => self.contract_ids[i.0] = Some(n),
EntityKey::ContractType(i) => self.contract_type_ids[i.0] = Some(n),
EntityKey::ConversionBasedUnit(i) => self.conversion_based_unit_ids[i.0] = Some(n),
EntityKey::CoordinatedUniversalTimeOffset(i) => {
self.coordinated_universal_time_offset_ids[i.0] = Some(n)
}
EntityKey::CoordinatesList(i) => self.coordinates_list_ids[i.0] = Some(n),
EntityKey::Curve(i) => self.curve_ids[i.0] = Some(n),
EntityKey::CurveStyle(i) => self.curve_style_ids[i.0] = Some(n),
EntityKey::CurveStyleFont(i) => self.curve_style_font_ids[i.0] = Some(n),
EntityKey::CurveStyleFontAndScaling(i) => {
self.curve_style_font_and_scaling_ids[i.0] = Some(n)
}
EntityKey::CurveStyleFontPattern(i) => self.curve_style_font_pattern_ids[i.0] = Some(n),
EntityKey::CurveStyleRendering(i) => self.curve_style_rendering_ids[i.0] = Some(n),
EntityKey::CylindricalSurface(i) => self.cylindrical_surface_ids[i.0] = Some(n),
EntityKey::CylindricityTolerance(i) => self.cylindricity_tolerance_ids[i.0] = Some(n),
EntityKey::Date(i) => self.date_ids[i.0] = Some(n),
EntityKey::DateAndTime(i) => self.date_and_time_ids[i.0] = Some(n),
EntityKey::DateAndTimeAssignment(i) => self.date_and_time_assignment_ids[i.0] = Some(n),
EntityKey::DateRole(i) => self.date_role_ids[i.0] = Some(n),
EntityKey::DateTimeRole(i) => self.date_time_role_ids[i.0] = Some(n),
EntityKey::Datum(i) => self.datum_ids[i.0] = Some(n),
EntityKey::DatumFeature(i) => self.datum_feature_ids[i.0] = Some(n),
EntityKey::DatumReference(i) => self.datum_reference_ids[i.0] = Some(n),
EntityKey::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0] = Some(n)
}
EntityKey::DatumReferenceElement(i) => self.datum_reference_element_ids[i.0] = Some(n),
EntityKey::DatumReferenceModifierWithValue(i) => {
self.datum_reference_modifier_with_value_ids[i.0] = Some(n)
}
EntityKey::DatumSystem(i) => self.datum_system_ids[i.0] = Some(n),
EntityKey::DatumTarget(i) => self.datum_target_ids[i.0] = Some(n),
EntityKey::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0] = Some(n)
}
EntityKey::DefinedCharacterGlyph(i) => self.defined_character_glyph_ids[i.0] = Some(n),
EntityKey::DefinedSymbol(i) => self.defined_symbol_ids[i.0] = Some(n),
EntityKey::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0] = Some(n)
}
EntityKey::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0] = Some(n)
}
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(i) => {
self.definitional_representation_relationship_with_same_context_ids[i.0] = Some(n)
}
EntityKey::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0] = Some(n)
}
EntityKey::DerivedShapeAspect(i) => self.derived_shape_aspect_ids[i.0] = Some(n),
EntityKey::DerivedUnit(i) => self.derived_unit_ids[i.0] = Some(n),
EntityKey::DerivedUnitElement(i) => self.derived_unit_element_ids[i.0] = Some(n),
EntityKey::DescriptionAttribute(i) => self.description_attribute_ids[i.0] = Some(n),
EntityKey::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0] = Some(n)
}
EntityKey::DesignContext(i) => self.design_context_ids[i.0] = Some(n),
EntityKey::DimensionalCharacteristicRepresentation(i) => {
self.dimensional_characteristic_representation_ids[i.0] = Some(n)
}
EntityKey::DimensionalExponents(i) => self.dimensional_exponents_ids[i.0] = Some(n),
EntityKey::DimensionalLocation(i) => self.dimensional_location_ids[i.0] = Some(n),
EntityKey::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0] = Some(n)
}
EntityKey::DimensionalSize(i) => self.dimensional_size_ids[i.0] = Some(n),
EntityKey::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0] = Some(n)
}
EntityKey::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0] = Some(n)
}
EntityKey::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0] = Some(n)
}
EntityKey::Direction(i) => self.direction_ids[i.0] = Some(n),
EntityKey::Document(i) => self.document_ids[i.0] = Some(n),
EntityKey::DocumentFile(i) => self.document_file_ids[i.0] = Some(n),
EntityKey::DocumentProductAssociation(i) => {
self.document_product_association_ids[i.0] = Some(n)
}
EntityKey::DocumentProductEquivalence(i) => {
self.document_product_equivalence_ids[i.0] = Some(n)
}
EntityKey::DocumentReference(i) => self.document_reference_ids[i.0] = Some(n),
EntityKey::DocumentRepresentationType(i) => {
self.document_representation_type_ids[i.0] = Some(n)
}
EntityKey::DocumentType(i) => self.document_type_ids[i.0] = Some(n),
EntityKey::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0] = Some(n)
}
EntityKey::DraughtingCallout(i) => self.draughting_callout_ids[i.0] = Some(n),
EntityKey::DraughtingCalloutRelationship(i) => {
self.draughting_callout_relationship_ids[i.0] = Some(n)
}
EntityKey::DraughtingModel(i) => self.draughting_model_ids[i.0] = Some(n),
EntityKey::DraughtingModelItemAssociation(i) => {
self.draughting_model_item_association_ids[i.0] = Some(n)
}
EntityKey::DraughtingModelItemAssociationWithPlaceholder(i) => {
self.draughting_model_item_association_with_placeholder_ids[i.0] = Some(n)
}
EntityKey::DraughtingPreDefinedColour(i) => {
self.draughting_pre_defined_colour_ids[i.0] = Some(n)
}
EntityKey::DraughtingPreDefinedCurveFont(i) => {
self.draughting_pre_defined_curve_font_ids[i.0] = Some(n)
}
EntityKey::DraughtingPreDefinedTextFont(i) => {
self.draughting_pre_defined_text_font_ids[i.0] = Some(n)
}
EntityKey::Edge(i) => self.edge_ids[i.0] = Some(n),
EntityKey::EdgeCurve(i) => self.edge_curve_ids[i.0] = Some(n),
EntityKey::EdgeLoop(i) => self.edge_loop_ids[i.0] = Some(n),
EntityKey::Effectivity(i) => self.effectivity_ids[i.0] = Some(n),
EntityKey::ElementarySurface(i) => self.elementary_surface_ids[i.0] = Some(n),
EntityKey::Ellipse(i) => self.ellipse_ids[i.0] = Some(n),
EntityKey::Expression(i) => self.expression_ids[i.0] = Some(n),
EntityKey::ExternalIdentificationAssignment(i) => {
self.external_identification_assignment_ids[i.0] = Some(n)
}
EntityKey::ExternalSource(i) => self.external_source_ids[i.0] = Some(n),
EntityKey::ExternallyDefinedCharacterGlyph(i) => {
self.externally_defined_character_glyph_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedCurveFont(i) => {
self.externally_defined_curve_font_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedItem(i) => self.externally_defined_item_ids[i.0] = Some(n),
EntityKey::ExternallyDefinedStyle(i) => {
self.externally_defined_style_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedSymbol(i) => {
self.externally_defined_symbol_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedTextFont(i) => {
self.externally_defined_text_font_ids[i.0] = Some(n)
}
EntityKey::ExternallyDefinedTile(i) => self.externally_defined_tile_ids[i.0] = Some(n),
EntityKey::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0] = Some(n)
}
EntityKey::Face(i) => self.face_ids[i.0] = Some(n),
EntityKey::FaceBound(i) => self.face_bound_ids[i.0] = Some(n),
EntityKey::FaceOuterBound(i) => self.face_outer_bound_ids[i.0] = Some(n),
EntityKey::FaceSurface(i) => self.face_surface_ids[i.0] = Some(n),
EntityKey::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0] = Some(n)
}
EntityKey::FillAreaStyle(i) => self.fill_area_style_ids[i.0] = Some(n),
EntityKey::FillAreaStyleColour(i) => self.fill_area_style_colour_ids[i.0] = Some(n),
EntityKey::FillAreaStyleHatching(i) => self.fill_area_style_hatching_ids[i.0] = Some(n),
EntityKey::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0] = Some(n)
}
EntityKey::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0] = Some(n)
}
EntityKey::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0] = Some(n)
}
EntityKey::FillAreaStyleTiles(i) => self.fill_area_style_tiles_ids[i.0] = Some(n),
EntityKey::FlatnessTolerance(i) => self.flatness_tolerance_ids[i.0] = Some(n),
EntityKey::FoundedItem(i) => self.founded_item_ids[i.0] = Some(n),
EntityKey::FunctionallyDefinedTransformation(i) => {
self.functionally_defined_transformation_ids[i.0] = Some(n)
}
EntityKey::GeneralDatumReference(i) => self.general_datum_reference_ids[i.0] = Some(n),
EntityKey::GeneralProperty(i) => self.general_property_ids[i.0] = Some(n),
EntityKey::GeneralPropertyAssociation(i) => {
self.general_property_association_ids[i.0] = Some(n)
}
EntityKey::GenericExpression(i) => self.generic_expression_ids[i.0] = Some(n),
EntityKey::GenericLiteral(i) => self.generic_literal_ids[i.0] = Some(n),
EntityKey::GenericProductDefinitionReference(i) => {
self.generic_product_definition_reference_ids[i.0] = Some(n)
}
EntityKey::GeometricCurveSet(i) => self.geometric_curve_set_ids[i.0] = Some(n),
EntityKey::GeometricItemSpecificUsage(i) => {
self.geometric_item_specific_usage_ids[i.0] = Some(n)
}
EntityKey::GeometricRepresentationContext(i) => {
self.geometric_representation_context_ids[i.0] = Some(n)
}
EntityKey::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0] = Some(n)
}
EntityKey::GeometricSet(i) => self.geometric_set_ids[i.0] = Some(n),
EntityKey::GeometricTolerance(i) => self.geometric_tolerance_ids[i.0] = Some(n),
EntityKey::GeometricToleranceRelationship(i) => {
self.geometric_tolerance_relationship_ids[i.0] = Some(n)
}
EntityKey::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0] = Some(n)
}
EntityKey::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0] = Some(n)
}
EntityKey::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0] = Some(n)
}
EntityKey::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0] = Some(n)
}
EntityKey::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0] = Some(n)
}
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(i) => {
self.geometrically_bounded_surface_shape_representation_ids[i.0] = Some(n)
}
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(i) => {
self.geometrically_bounded_wireframe_shape_representation_ids[i.0] = Some(n)
}
EntityKey::GlobalUncertaintyAssignedContext(i) => {
self.global_uncertainty_assigned_context_ids[i.0] = Some(n)
}
EntityKey::GlobalUnitAssignedContext(i) => {
self.global_unit_assigned_context_ids[i.0] = Some(n)
}
EntityKey::Group(i) => self.group_ids[i.0] = Some(n),
EntityKey::GroupAssignment(i) => self.group_assignment_ids[i.0] = Some(n),
EntityKey::Hyperbola(i) => self.hyperbola_ids[i.0] = Some(n),
EntityKey::IdAttribute(i) => self.id_attribute_ids[i.0] = Some(n),
EntityKey::IdentificationAssignment(i) => {
self.identification_assignment_ids[i.0] = Some(n)
}
EntityKey::IdentificationRole(i) => self.identification_role_ids[i.0] = Some(n),
EntityKey::IntLiteral(i) => self.int_literal_ids[i.0] = Some(n),
EntityKey::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0] = Some(n)
}
EntityKey::IntersectionCurve(i) => self.intersection_curve_ids[i.0] = Some(n),
EntityKey::Invisibility(i) => self.invisibility_ids[i.0] = Some(n),
EntityKey::ItemDefinedTransformation(i) => {
self.item_defined_transformation_ids[i.0] = Some(n)
}
EntityKey::ItemIdentifiedRepresentationUsage(i) => {
self.item_identified_representation_usage_ids[i.0] = Some(n)
}
EntityKey::LeaderCurve(i) => self.leader_curve_ids[i.0] = Some(n),
EntityKey::LeaderDirectedCallout(i) => self.leader_directed_callout_ids[i.0] = Some(n),
EntityKey::LeaderTerminator(i) => self.leader_terminator_ids[i.0] = Some(n),
EntityKey::LengthMeasureWithUnit(i) => self.length_measure_with_unit_ids[i.0] = Some(n),
EntityKey::LengthUnit(i) => self.length_unit_ids[i.0] = Some(n),
EntityKey::LimitsAndFits(i) => self.limits_and_fits_ids[i.0] = Some(n),
EntityKey::Line(i) => self.line_ids[i.0] = Some(n),
EntityKey::LineProfileTolerance(i) => self.line_profile_tolerance_ids[i.0] = Some(n),
EntityKey::LiteralNumber(i) => self.literal_number_ids[i.0] = Some(n),
EntityKey::LocalTime(i) => self.local_time_ids[i.0] = Some(n),
EntityKey::Loop(i) => self.loop_ids[i.0] = Some(n),
EntityKey::MakeFromUsageOption(i) => self.make_from_usage_option_ids[i.0] = Some(n),
EntityKey::ManifoldSolidBrep(i) => self.manifold_solid_brep_ids[i.0] = Some(n),
EntityKey::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0] = Some(n)
}
EntityKey::MappedItem(i) => self.mapped_item_ids[i.0] = Some(n),
EntityKey::MassMeasureWithUnit(i) => self.mass_measure_with_unit_ids[i.0] = Some(n),
EntityKey::MassUnit(i) => self.mass_unit_ids[i.0] = Some(n),
EntityKey::MeasureQualification(i) => self.measure_qualification_ids[i.0] = Some(n),
EntityKey::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0] = Some(n)
}
EntityKey::MeasureWithUnit(i) => self.measure_with_unit_ids[i.0] = Some(n),
EntityKey::MechanicalContext(i) => self.mechanical_context_ids[i.0] = Some(n),
EntityKey::MechanicalDesignAndDraughtingRelationship(i) => {
self.mechanical_design_and_draughting_relationship_ids[i.0] = Some(n)
}
EntityKey::MechanicalDesignGeometricPresentationRepresentation(i) => {
self.mechanical_design_geometric_presentation_representation_ids[i.0] = Some(n)
}
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
self.mechanical_design_presentation_representation_with_draughting_ids[i.0] =
Some(n)
}
EntityKey::MechanicalDesignShadedPresentationRepresentation(i) => {
self.mechanical_design_shaded_presentation_representation_ids[i.0] = Some(n)
}
EntityKey::ModelGeometricView(i) => self.model_geometric_view_ids[i.0] = Some(n),
EntityKey::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0] = Some(n)
}
EntityKey::NameAttribute(i) => self.name_attribute_ids[i.0] = Some(n),
EntityKey::NamedUnit(i) => self.named_unit_ids[i.0] = Some(n),
EntityKey::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0] = Some(n)
}
EntityKey::NumericExpression(i) => self.numeric_expression_ids[i.0] = Some(n),
EntityKey::ObjectRole(i) => self.object_role_ids[i.0] = Some(n),
EntityKey::OffsetSurface(i) => self.offset_surface_ids[i.0] = Some(n),
EntityKey::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0] = Some(n)
}
EntityKey::OpenShell(i) => self.open_shell_ids[i.0] = Some(n),
EntityKey::Organization(i) => self.organization_ids[i.0] = Some(n),
EntityKey::OrganizationRelationship(i) => {
self.organization_relationship_ids[i.0] = Some(n)
}
EntityKey::OrganizationRole(i) => self.organization_role_ids[i.0] = Some(n),
EntityKey::OrganizationType(i) => self.organization_type_ids[i.0] = Some(n),
EntityKey::OrganizationTypeRole(i) => self.organization_type_role_ids[i.0] = Some(n),
EntityKey::OrganizationalAddress(i) => self.organizational_address_ids[i.0] = Some(n),
EntityKey::OrganizationalProject(i) => self.organizational_project_ids[i.0] = Some(n),
EntityKey::OrganizationalProjectRelationship(i) => {
self.organizational_project_relationship_ids[i.0] = Some(n)
}
EntityKey::OrganizationalProjectRole(i) => {
self.organizational_project_role_ids[i.0] = Some(n)
}
EntityKey::OrientedClosedShell(i) => self.oriented_closed_shell_ids[i.0] = Some(n),
EntityKey::OrientedEdge(i) => self.oriented_edge_ids[i.0] = Some(n),
EntityKey::OverRidingStyledItem(i) => self.over_riding_styled_item_ids[i.0] = Some(n),
EntityKey::ParallelismTolerance(i) => self.parallelism_tolerance_ids[i.0] = Some(n),
EntityKey::ParametricRepresentationContext(i) => {
self.parametric_representation_context_ids[i.0] = Some(n)
}
EntityKey::Path(i) => self.path_ids[i.0] = Some(n),
EntityKey::Pcurve(i) => self.pcurve_ids[i.0] = Some(n),
EntityKey::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0] = Some(n)
}
EntityKey::Person(i) => self.person_ids[i.0] = Some(n),
EntityKey::PersonAndOrganization(i) => self.person_and_organization_ids[i.0] = Some(n),
EntityKey::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0] = Some(n)
}
EntityKey::PersonAndOrganizationAssignment(i) => {
self.person_and_organization_assignment_ids[i.0] = Some(n)
}
EntityKey::PersonAndOrganizationRole(i) => {
self.person_and_organization_role_ids[i.0] = Some(n)
}
EntityKey::PersonalAddress(i) => self.personal_address_ids[i.0] = Some(n),
EntityKey::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0] = Some(n)
}
EntityKey::Placement(i) => self.placement_ids[i.0] = Some(n),
EntityKey::PlanarBox(i) => self.planar_box_ids[i.0] = Some(n),
EntityKey::PlanarExtent(i) => self.planar_extent_ids[i.0] = Some(n),
EntityKey::Plane(i) => self.plane_ids[i.0] = Some(n),
EntityKey::PlaneAngleMeasureWithUnit(i) => {
self.plane_angle_measure_with_unit_ids[i.0] = Some(n)
}
EntityKey::PlaneAngleUnit(i) => self.plane_angle_unit_ids[i.0] = Some(n),
EntityKey::PlusMinusTolerance(i) => self.plus_minus_tolerance_ids[i.0] = Some(n),
EntityKey::Point(i) => self.point_ids[i.0] = Some(n),
EntityKey::PointStyle(i) => self.point_style_ids[i.0] = Some(n),
EntityKey::PolyLoop(i) => self.poly_loop_ids[i.0] = Some(n),
EntityKey::Polyline(i) => self.polyline_ids[i.0] = Some(n),
EntityKey::PositionTolerance(i) => self.position_tolerance_ids[i.0] = Some(n),
EntityKey::PreDefinedCharacterGlyph(i) => {
self.pre_defined_character_glyph_ids[i.0] = Some(n)
}
EntityKey::PreDefinedColour(i) => self.pre_defined_colour_ids[i.0] = Some(n),
EntityKey::PreDefinedCurveFont(i) => self.pre_defined_curve_font_ids[i.0] = Some(n),
EntityKey::PreDefinedItem(i) => self.pre_defined_item_ids[i.0] = Some(n),
EntityKey::PreDefinedMarker(i) => self.pre_defined_marker_ids[i.0] = Some(n),
EntityKey::PreDefinedPointMarkerSymbol(i) => {
self.pre_defined_point_marker_symbol_ids[i.0] = Some(n)
}
EntityKey::PreDefinedPresentationStyle(i) => {
self.pre_defined_presentation_style_ids[i.0] = Some(n)
}
EntityKey::PreDefinedSurfaceSideStyle(i) => {
self.pre_defined_surface_side_style_ids[i.0] = Some(n)
}
EntityKey::PreDefinedSymbol(i) => self.pre_defined_symbol_ids[i.0] = Some(n),
EntityKey::PreDefinedTerminatorSymbol(i) => {
self.pre_defined_terminator_symbol_ids[i.0] = Some(n)
}
EntityKey::PreDefinedTextFont(i) => self.pre_defined_text_font_ids[i.0] = Some(n),
EntityKey::PreDefinedTile(i) => self.pre_defined_tile_ids[i.0] = Some(n),
EntityKey::PrecisionQualifier(i) => self.precision_qualifier_ids[i.0] = Some(n),
EntityKey::PresentationArea(i) => self.presentation_area_ids[i.0] = Some(n),
EntityKey::PresentationLayerAssignment(i) => {
self.presentation_layer_assignment_ids[i.0] = Some(n)
}
EntityKey::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0] = Some(n)
}
EntityKey::PresentationSet(i) => self.presentation_set_ids[i.0] = Some(n),
EntityKey::PresentationSize(i) => self.presentation_size_ids[i.0] = Some(n),
EntityKey::PresentationStyleAssignment(i) => {
self.presentation_style_assignment_ids[i.0] = Some(n)
}
EntityKey::PresentationStyleByContext(i) => {
self.presentation_style_by_context_ids[i.0] = Some(n)
}
EntityKey::PresentationView(i) => self.presentation_view_ids[i.0] = Some(n),
EntityKey::PresentedItem(i) => self.presented_item_ids[i.0] = Some(n),
EntityKey::PresentedItemRepresentation(i) => {
self.presented_item_representation_ids[i.0] = Some(n)
}
EntityKey::Product(i) => self.product_ids[i.0] = Some(n),
EntityKey::ProductCategory(i) => self.product_category_ids[i.0] = Some(n),
EntityKey::ProductCategoryRelationship(i) => {
self.product_category_relationship_ids[i.0] = Some(n)
}
EntityKey::ProductConcept(i) => self.product_concept_ids[i.0] = Some(n),
EntityKey::ProductConceptContext(i) => self.product_concept_context_ids[i.0] = Some(n),
EntityKey::ProductConceptFeature(i) => self.product_concept_feature_ids[i.0] = Some(n),
EntityKey::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0] = Some(n)
}
EntityKey::ProductContext(i) => self.product_context_ids[i.0] = Some(n),
EntityKey::ProductDefinition(i) => self.product_definition_ids[i.0] = Some(n),
EntityKey::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionContextAssociation(i) => {
self.product_definition_context_association_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionContextRole(i) => {
self.product_definition_context_role_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionFormationWithSpecifiedSource(i) => {
self.product_definition_formation_with_specified_source_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionOccurrence(i) => {
self.product_definition_occurrence_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionRelationshipRelationship(i) => {
self.product_definition_relationship_relationship_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionSubstitute(i) => {
self.product_definition_substitute_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0] = Some(n)
}
EntityKey::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0] = Some(n)
}
EntityKey::ProductRelatedProductCategory(i) => {
self.product_related_product_category_ids[i.0] = Some(n)
}
EntityKey::ProjectedZoneDefinition(i) => {
self.projected_zone_definition_ids[i.0] = Some(n)
}
EntityKey::PropertyDefinition(i) => self.property_definition_ids[i.0] = Some(n),
EntityKey::PropertyDefinitionRelationship(i) => {
self.property_definition_relationship_ids[i.0] = Some(n)
}
EntityKey::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0] = Some(n)
}
EntityKey::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0] = Some(n)
}
EntityKey::QuasiUniformCurve(i) => self.quasi_uniform_curve_ids[i.0] = Some(n),
EntityKey::QuasiUniformSurface(i) => self.quasi_uniform_surface_ids[i.0] = Some(n),
EntityKey::RatioMeasureWithUnit(i) => self.ratio_measure_with_unit_ids[i.0] = Some(n),
EntityKey::RatioUnit(i) => self.ratio_unit_ids[i.0] = Some(n),
EntityKey::RationalBSplineCurve(i) => self.rational_b_spline_curve_ids[i.0] = Some(n),
EntityKey::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0] = Some(n)
}
EntityKey::RealLiteral(i) => self.real_literal_ids[i.0] = Some(n),
EntityKey::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0] = Some(n)
}
EntityKey::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0] = Some(n)
}
EntityKey::Representation(i) => self.representation_ids[i.0] = Some(n),
EntityKey::RepresentationContext(i) => self.representation_context_ids[i.0] = Some(n),
EntityKey::RepresentationContextReference(i) => {
self.representation_context_reference_ids[i.0] = Some(n)
}
EntityKey::RepresentationItem(i) => self.representation_item_ids[i.0] = Some(n),
EntityKey::RepresentationMap(i) => self.representation_map_ids[i.0] = Some(n),
EntityKey::RepresentationReference(i) => {
self.representation_reference_ids[i.0] = Some(n)
}
EntityKey::RepresentationRelationship(i) => {
self.representation_relationship_ids[i.0] = Some(n)
}
EntityKey::RepresentationRelationshipWithTransformation(i) => {
self.representation_relationship_with_transformation_ids[i.0] = Some(n)
}
EntityKey::ResourceProperty(i) => self.resource_property_ids[i.0] = Some(n),
EntityKey::ResourceRequirementType(i) => {
self.resource_requirement_type_ids[i.0] = Some(n)
}
EntityKey::RoleAssociation(i) => self.role_association_ids[i.0] = Some(n),
EntityKey::RoundnessTolerance(i) => self.roundness_tolerance_ids[i.0] = Some(n),
EntityKey::SeamCurve(i) => self.seam_curve_ids[i.0] = Some(n),
EntityKey::SecurityClassification(i) => self.security_classification_ids[i.0] = Some(n),
EntityKey::SecurityClassificationAssignment(i) => {
self.security_classification_assignment_ids[i.0] = Some(n)
}
EntityKey::SecurityClassificationLevel(i) => {
self.security_classification_level_ids[i.0] = Some(n)
}
EntityKey::ShapeAspect(i) => self.shape_aspect_ids[i.0] = Some(n),
EntityKey::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0] = Some(n)
}
EntityKey::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0] = Some(n)
}
EntityKey::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0] = Some(n)
}
EntityKey::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0] = Some(n)
}
EntityKey::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0] = Some(n)
}
EntityKey::ShapeRepresentation(i) => self.shape_representation_ids[i.0] = Some(n),
EntityKey::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0] = Some(n)
}
EntityKey::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0] = Some(n)
}
EntityKey::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0] = Some(n)
}
EntityKey::SiUnit(i) => self.si_unit_ids[i.0] = Some(n),
EntityKey::SimpleGenericExpression(i) => {
self.simple_generic_expression_ids[i.0] = Some(n)
}
EntityKey::SimpleNumericExpression(i) => {
self.simple_numeric_expression_ids[i.0] = Some(n)
}
EntityKey::SolidAngleUnit(i) => self.solid_angle_unit_ids[i.0] = Some(n),
EntityKey::SolidModel(i) => self.solid_model_ids[i.0] = Some(n),
EntityKey::SphericalSurface(i) => self.spherical_surface_ids[i.0] = Some(n),
EntityKey::StartRequest(i) => self.start_request_ids[i.0] = Some(n),
EntityKey::StartWork(i) => self.start_work_ids[i.0] = Some(n),
EntityKey::StateObserved(i) => self.state_observed_ids[i.0] = Some(n),
EntityKey::StateType(i) => self.state_type_ids[i.0] = Some(n),
EntityKey::StraightnessTolerance(i) => self.straightness_tolerance_ids[i.0] = Some(n),
EntityKey::StyledItem(i) => self.styled_item_ids[i.0] = Some(n),
EntityKey::Surface(i) => self.surface_ids[i.0] = Some(n),
EntityKey::SurfaceCurve(i) => self.surface_curve_ids[i.0] = Some(n),
EntityKey::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0] = Some(n)
}
EntityKey::SurfaceOfRevolution(i) => self.surface_of_revolution_ids[i.0] = Some(n),
EntityKey::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0] = Some(n)
}
EntityKey::SurfaceRenderingProperties(i) => {
self.surface_rendering_properties_ids[i.0] = Some(n)
}
EntityKey::SurfaceSideStyle(i) => self.surface_side_style_ids[i.0] = Some(n),
EntityKey::SurfaceStyleBoundary(i) => self.surface_style_boundary_ids[i.0] = Some(n),
EntityKey::SurfaceStyleControlGrid(i) => {
self.surface_style_control_grid_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleFillArea(i) => self.surface_style_fill_area_ids[i.0] = Some(n),
EntityKey::SurfaceStyleParameterLine(i) => {
self.surface_style_parameter_line_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleReflectanceAmbient(i) => {
self.surface_style_reflectance_ambient_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleRendering(i) => self.surface_style_rendering_ids[i.0] = Some(n),
EntityKey::SurfaceStyleRenderingWithProperties(i) => {
self.surface_style_rendering_with_properties_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleSegmentationCurve(i) => {
self.surface_style_segmentation_curve_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleSilhouette(i) => {
self.surface_style_silhouette_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleTransparent(i) => {
self.surface_style_transparent_ids[i.0] = Some(n)
}
EntityKey::SurfaceStyleUsage(i) => self.surface_style_usage_ids[i.0] = Some(n),
EntityKey::SweptSurface(i) => self.swept_surface_ids[i.0] = Some(n),
EntityKey::SymbolColour(i) => self.symbol_colour_ids[i.0] = Some(n),
EntityKey::SymbolRepresentation(i) => self.symbol_representation_ids[i.0] = Some(n),
EntityKey::SymbolStyle(i) => self.symbol_style_ids[i.0] = Some(n),
EntityKey::SymbolTarget(i) => self.symbol_target_ids[i.0] = Some(n),
EntityKey::SymmetryTolerance(i) => self.symmetry_tolerance_ids[i.0] = Some(n),
EntityKey::TerminatorSymbol(i) => self.terminator_symbol_ids[i.0] = Some(n),
EntityKey::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0] = Some(n)
}
EntityKey::TessellatedCurveSet(i) => self.tessellated_curve_set_ids[i.0] = Some(n),
EntityKey::TessellatedFace(i) => self.tessellated_face_ids[i.0] = Some(n),
EntityKey::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0] = Some(n)
}
EntityKey::TessellatedItem(i) => self.tessellated_item_ids[i.0] = Some(n),
EntityKey::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0] = Some(n)
}
EntityKey::TessellatedShell(i) => self.tessellated_shell_ids[i.0] = Some(n),
EntityKey::TessellatedSolid(i) => self.tessellated_solid_ids[i.0] = Some(n),
EntityKey::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0] = Some(n)
}
EntityKey::TessellatedSurfaceSet(i) => self.tessellated_surface_set_ids[i.0] = Some(n),
EntityKey::TextFont(i) => self.text_font_ids[i.0] = Some(n),
EntityKey::TextLiteral(i) => self.text_literal_ids[i.0] = Some(n),
EntityKey::TextStyle(i) => self.text_style_ids[i.0] = Some(n),
EntityKey::TextStyleForDefinedFont(i) => {
self.text_style_for_defined_font_ids[i.0] = Some(n)
}
EntityKey::TextStyleWithBoxCharacteristics(i) => {
self.text_style_with_box_characteristics_ids[i.0] = Some(n)
}
EntityKey::TextureStyleSpecification(i) => {
self.texture_style_specification_ids[i.0] = Some(n)
}
EntityKey::TextureStyleTessellationSpecification(i) => {
self.texture_style_tessellation_specification_ids[i.0] = Some(n)
}
EntityKey::TimeUnit(i) => self.time_unit_ids[i.0] = Some(n),
EntityKey::ToleranceValue(i) => self.tolerance_value_ids[i.0] = Some(n),
EntityKey::ToleranceZone(i) => self.tolerance_zone_ids[i.0] = Some(n),
EntityKey::ToleranceZoneDefinition(i) => {
self.tolerance_zone_definition_ids[i.0] = Some(n)
}
EntityKey::ToleranceZoneForm(i) => self.tolerance_zone_form_ids[i.0] = Some(n),
EntityKey::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0] = Some(n)
}
EntityKey::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0] = Some(n)
}
EntityKey::ToroidalSurface(i) => self.toroidal_surface_ids[i.0] = Some(n),
EntityKey::TotalRunoutTolerance(i) => self.total_runout_tolerance_ids[i.0] = Some(n),
EntityKey::TrimmedCurve(i) => self.trimmed_curve_ids[i.0] = Some(n),
EntityKey::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0] = Some(n)
}
EntityKey::TypeQualifier(i) => self.type_qualifier_ids[i.0] = Some(n),
EntityKey::UncertaintyMeasureWithUnit(i) => {
self.uncertainty_measure_with_unit_ids[i.0] = Some(n)
}
EntityKey::UncertaintyQualifier(i) => self.uncertainty_qualifier_ids[i.0] = Some(n),
EntityKey::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0] = Some(n)
}
EntityKey::UniformCurve(i) => self.uniform_curve_ids[i.0] = Some(n),
EntityKey::UniformSurface(i) => self.uniform_surface_ids[i.0] = Some(n),
EntityKey::ValueFormatTypeQualifier(i) => {
self.value_format_type_qualifier_ids[i.0] = Some(n)
}
EntityKey::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0] = Some(n)
}
EntityKey::Vector(i) => self.vector_ids[i.0] = Some(n),
EntityKey::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0] = Some(n)
}
EntityKey::Vertex(i) => self.vertex_ids[i.0] = Some(n),
EntityKey::VertexLoop(i) => self.vertex_loop_ids[i.0] = Some(n),
EntityKey::VertexPoint(i) => self.vertex_point_ids[i.0] = Some(n),
EntityKey::VertexShell(i) => self.vertex_shell_ids[i.0] = Some(n),
EntityKey::ViewVolume(i) => self.view_volume_ids[i.0] = Some(n),
EntityKey::VolumeUnit(i) => self.volume_unit_ids[i.0] = Some(n),
EntityKey::WireShell(i) => self.wire_shell_ids[i.0] = Some(n),
EntityKey::ComplexUnit(i) => self.complex_ids[i.0] = Some(n),
}
}
fn id_of_ref_action_method(&self, r: &ActionMethodRef) -> u64 {
match r {
ActionMethodRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
ActionMethodRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_action_method(r: &ActionMethodRef, out: &mut Vec<EntityKey>) {
match r {
ActionMethodRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
ActionMethodRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_action(&self, r: &ActionRef) -> u64 {
match r {
ActionRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
ActionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_action(r: &ActionRef, out: &mut Vec<EntityKey>) {
match r {
ActionRef::Action(i) => out.push(EntityKey::Action(*i)),
ActionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_action_resource(&self, r: &ActionResourceRef) -> u64 {
match r {
ActionResourceRef::ActionResource(i) => {
self.action_resource_ids[i.0].expect("dep id assigned")
}
ActionResourceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_action_resource(r: &ActionResourceRef, out: &mut Vec<EntityKey>) {
match r {
ActionResourceRef::ActionResource(i) => out.push(EntityKey::ActionResource(*i)),
ActionResourceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_action_resource_type(&self, r: &ActionResourceTypeRef) -> u64 {
match r {
ActionResourceTypeRef::ActionResourceType(i) => {
self.action_resource_type_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_action_resource_type(r: &ActionResourceTypeRef, out: &mut Vec<EntityKey>) {
match r {
ActionResourceTypeRef::ActionResourceType(i) => {
out.push(EntityKey::ActionResourceType(*i))
}
}
}
fn id_of_ref_annotation_curve_occurrence(&self, r: &AnnotationCurveOccurrenceRef) -> u64 {
match r {
AnnotationCurveOccurrenceRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationCurveOccurrenceRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
AnnotationCurveOccurrenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_curve_occurrence(
r: &AnnotationCurveOccurrenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationCurveOccurrenceRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
AnnotationCurveOccurrenceRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
AnnotationCurveOccurrenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_occurrence(&self, r: &AnnotationOccurrenceRef) -> u64 {
match r {
AnnotationOccurrenceRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
AnnotationOccurrenceRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationOccurrenceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_annotation_occurrence(r: &AnnotationOccurrenceRef, out: &mut Vec<EntityKey>) {
match r {
AnnotationOccurrenceRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
AnnotationOccurrenceRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
AnnotationOccurrenceRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
AnnotationOccurrenceRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
AnnotationOccurrenceRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
AnnotationOccurrenceRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
AnnotationOccurrenceRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
AnnotationOccurrenceRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
AnnotationOccurrenceRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
AnnotationOccurrenceRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
AnnotationOccurrenceRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
AnnotationOccurrenceRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
AnnotationOccurrenceRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
AnnotationOccurrenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_placeholder_leader_line(
&self,
r: &AnnotationPlaceholderLeaderLineRef,
) -> u64 {
match r {
AnnotationPlaceholderLeaderLineRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
AnnotationPlaceholderLeaderLineRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
AnnotationPlaceholderLeaderLineRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
AnnotationPlaceholderLeaderLineRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_placeholder_leader_line(
r: &AnnotationPlaceholderLeaderLineRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationPlaceholderLeaderLineRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
AnnotationPlaceholderLeaderLineRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
AnnotationPlaceholderLeaderLineRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
AnnotationPlaceholderLeaderLineRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
}
}
fn id_of_ref_annotation_placeholder_occurrence(
&self,
r: &AnnotationPlaceholderOccurrenceRef,
) -> u64 {
match r {
AnnotationPlaceholderOccurrenceRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaceholderOccurrenceRef::AnnotationPlaceholderOccurrenceWithLeaderLine(
i,
) => self.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
AnnotationPlaceholderOccurrenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_placeholder_occurrence(
r: &AnnotationPlaceholderOccurrenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationPlaceholderOccurrenceRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
AnnotationPlaceholderOccurrenceRef::AnnotationPlaceholderOccurrenceWithLeaderLine(
i,
) => out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i)),
AnnotationPlaceholderOccurrenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_plane_element(&self, r: &AnnotationPlaneElementRef) -> u64 {
match r {
AnnotationPlaneElementRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
AnnotationPlaneElementRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::StyledItem(i) => {
self.styled_item_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationPlaneElementRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_plane_element(r: &AnnotationPlaneElementRef, out: &mut Vec<EntityKey>) {
match r {
AnnotationPlaneElementRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
AnnotationPlaneElementRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
AnnotationPlaneElementRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
AnnotationPlaneElementRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
AnnotationPlaneElementRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
AnnotationPlaneElementRef::AnnotationPlane(i) => {
out.push(EntityKey::AnnotationPlane(*i))
}
AnnotationPlaneElementRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
AnnotationPlaneElementRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
AnnotationPlaneElementRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
AnnotationPlaneElementRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
AnnotationPlaneElementRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
AnnotationPlaneElementRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
AnnotationPlaneElementRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
AnnotationPlaneElementRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
AnnotationPlaneElementRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
AnnotationPlaneElementRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
AnnotationPlaneElementRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
AnnotationPlaneElementRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
AnnotationPlaneElementRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_representation_select(
&self,
r: &AnnotationRepresentationSelectRef,
) -> u64 {
match r {
AnnotationRepresentationSelectRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
AnnotationRepresentationSelectRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
AnnotationRepresentationSelectRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
AnnotationRepresentationSelectRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
AnnotationRepresentationSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_representation_select(
r: &AnnotationRepresentationSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationRepresentationSelectRef::DraughtingModel(i) => {
out.push(EntityKey::DraughtingModel(*i))
}
AnnotationRepresentationSelectRef::PresentationArea(i) => {
out.push(EntityKey::PresentationArea(*i))
}
AnnotationRepresentationSelectRef::PresentationView(i) => {
out.push(EntityKey::PresentationView(*i))
}
AnnotationRepresentationSelectRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
AnnotationRepresentationSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_symbol_occurrence_item(
&self,
r: &AnnotationSymbolOccurrenceItemRef,
) -> u64 {
match r {
AnnotationSymbolOccurrenceItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
AnnotationSymbolOccurrenceItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
AnnotationSymbolOccurrenceItemRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_symbol_occurrence_item(
r: &AnnotationSymbolOccurrenceItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationSymbolOccurrenceItemRef::AnnotationSymbol(i) => {
out.push(EntityKey::AnnotationSymbol(*i))
}
AnnotationSymbolOccurrenceItemRef::DefinedSymbol(i) => {
out.push(EntityKey::DefinedSymbol(*i))
}
AnnotationSymbolOccurrenceItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_symbol_occurrence(&self, r: &AnnotationSymbolOccurrenceRef) -> u64 {
match r {
AnnotationSymbolOccurrenceRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
AnnotationSymbolOccurrenceRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
AnnotationSymbolOccurrenceRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
AnnotationSymbolOccurrenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_symbol_occurrence(
r: &AnnotationSymbolOccurrenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationSymbolOccurrenceRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
AnnotationSymbolOccurrenceRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
AnnotationSymbolOccurrenceRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
AnnotationSymbolOccurrenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_text_occurrence_item(
&self,
r: &AnnotationTextOccurrenceItemRef,
) -> u64 {
match r {
AnnotationTextOccurrenceItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
AnnotationTextOccurrenceItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
AnnotationTextOccurrenceItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
AnnotationTextOccurrenceItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
AnnotationTextOccurrenceItemRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
AnnotationTextOccurrenceItemRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_text_occurrence_item(
r: &AnnotationTextOccurrenceItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationTextOccurrenceItemRef::AnnotationText(i) => {
out.push(EntityKey::AnnotationText(*i))
}
AnnotationTextOccurrenceItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
AnnotationTextOccurrenceItemRef::CompositeText(i) => {
out.push(EntityKey::CompositeText(*i))
}
AnnotationTextOccurrenceItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
AnnotationTextOccurrenceItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
AnnotationTextOccurrenceItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_annotation_to_model_leader_line(&self, r: &AnnotationToModelLeaderLineRef) -> u64 {
match r {
AnnotationToModelLeaderLineRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_annotation_to_model_leader_line(
r: &AnnotationToModelLeaderLineRef,
out: &mut Vec<EntityKey>,
) {
match r {
AnnotationToModelLeaderLineRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
}
}
fn id_of_ref_application_context(&self, r: &ApplicationContextRef) -> u64 {
match r {
ApplicationContextRef::ApplicationContext(i) => {
self.application_context_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_application_context(r: &ApplicationContextRef, out: &mut Vec<EntityKey>) {
match r {
ApplicationContextRef::ApplicationContext(i) => {
out.push(EntityKey::ApplicationContext(*i))
}
}
}
fn id_of_ref_approval_item(&self, r: &ApprovalItemRef) -> u64 {
match r {
ApprovalItemRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ActionDirective(i) => {
self.action_directive_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ActionMethodRelationship(i) => {
self.action_method_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ActionProperty(i) => {
self.action_property_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ActionRequestSolution(i) => {
self.action_request_solution_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AppliedApprovalAssignment(i) => {
self.applied_approval_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AppliedDocumentReference(i) => {
self.applied_document_reference_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AppliedExternalIdentificationAssignment(i) => {
self.applied_external_identification_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AppliedPersonAndOrganizationAssignment(i) => {
self.applied_person_and_organization_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BezierCurve(i) => self.bezier_curve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CalendarDate(i) => {
self.calendar_date_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CameraImage(i) => self.camera_image_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CameraModel(i) => self.camera_model_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ConstructiveGeometryRepresentationRelationship(i) => self
.constructive_geometry_representation_relationship_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Date(i) => self.date_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::DateAndTimeAssignment(i) => {
self.date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => self
.definitional_representation_relationship_with_same_context_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DesignContext(i) => {
self.design_context_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Document(i) => self.document_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::DocumentFile(i) => {
self.document_file_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Effectivity(i) => self.effectivity_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::MappedItem(i) => self.mapped_item_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::MechanicalDesignAndDraughtingRelationship(i) => self
.mechanical_design_and_draughting_relationship_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self
.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Organization(i) => {
self.organization_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OrganizationRelationship(i) => {
self.organization_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductConceptFeature(i) => {
self.product_concept_feature_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionSubstitute(i) => {
self.product_definition_substitute_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RepresentationRelationship(i) => {
self.representation_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::RepresentationRelationshipWithTransformation(i) => self
.representation_relationship_with_transformation_ids[i.0]
.expect("dep id assigned"),
ApprovalItemRef::ResourceProperty(i) => {
self.resource_property_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SolidModel(i) => self.solid_model_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TextLiteral(i) => self.text_literal_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0].expect("dep id assigned")
}
ApprovalItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::VertexPoint(i) => self.vertex_point_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::VertexShell(i) => self.vertex_shell_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
ApprovalItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_approval_item(r: &ApprovalItemRef, out: &mut Vec<EntityKey>) {
match r {
ApprovalItemRef::Action(i) => out.push(EntityKey::Action(*i)),
ApprovalItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
ApprovalItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
ApprovalItemRef::ActionMethodRelationship(i) => {
out.push(EntityKey::ActionMethodRelationship(*i))
}
ApprovalItemRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
ApprovalItemRef::ActionRequestSolution(i) => {
out.push(EntityKey::ActionRequestSolution(*i))
}
ApprovalItemRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
ApprovalItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
ApprovalItemRef::AngularLocation(i) => out.push(EntityKey::AngularLocation(*i)),
ApprovalItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
ApprovalItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
ApprovalItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
ApprovalItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
ApprovalItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
ApprovalItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
ApprovalItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
ApprovalItemRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
ApprovalItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
ApprovalItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
ApprovalItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
ApprovalItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
ApprovalItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
ApprovalItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
ApprovalItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
ApprovalItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
ApprovalItemRef::AppliedApprovalAssignment(i) => {
out.push(EntityKey::AppliedApprovalAssignment(*i))
}
ApprovalItemRef::AppliedDateAndTimeAssignment(i) => {
out.push(EntityKey::AppliedDateAndTimeAssignment(*i))
}
ApprovalItemRef::AppliedDocumentReference(i) => {
out.push(EntityKey::AppliedDocumentReference(*i))
}
ApprovalItemRef::AppliedExternalIdentificationAssignment(i) => {
out.push(EntityKey::AppliedExternalIdentificationAssignment(*i))
}
ApprovalItemRef::AppliedPersonAndOrganizationAssignment(i) => {
out.push(EntityKey::AppliedPersonAndOrganizationAssignment(*i))
}
ApprovalItemRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
ApprovalItemRef::AuxiliaryLeaderLine(i) => out.push(EntityKey::AuxiliaryLeaderLine(*i)),
ApprovalItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
ApprovalItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
ApprovalItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
ApprovalItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
ApprovalItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
ApprovalItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
ApprovalItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
ApprovalItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
ApprovalItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
ApprovalItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
ApprovalItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
ApprovalItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
ApprovalItemRef::BoundedSurfaceCurve(i) => out.push(EntityKey::BoundedSurfaceCurve(*i)),
ApprovalItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
ApprovalItemRef::CalendarDate(i) => out.push(EntityKey::CalendarDate(*i)),
ApprovalItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
ApprovalItemRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
ApprovalItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
ApprovalItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
ApprovalItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
ApprovalItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
ApprovalItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
ApprovalItemRef::CcDesignDateAndTimeAssignment(i) => {
out.push(EntityKey::CcDesignDateAndTimeAssignment(*i))
}
ApprovalItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
ApprovalItemRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
ApprovalItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
ApprovalItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ApprovalItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
ApprovalItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
ApprovalItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
ApprovalItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
ApprovalItemRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
ApprovalItemRef::ConfigurationDesign(i) => out.push(EntityKey::ConfigurationDesign(*i)),
ApprovalItemRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
ApprovalItemRef::ConfigurationItem(i) => out.push(EntityKey::ConfigurationItem(*i)),
ApprovalItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
ApprovalItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
ApprovalItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
ApprovalItemRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
ApprovalItemRef::ConstructiveGeometryRepresentationRelationship(i) => out.push(
EntityKey::ConstructiveGeometryRepresentationRelationship(*i),
),
ApprovalItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
ApprovalItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
ApprovalItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
ApprovalItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
ApprovalItemRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
ApprovalItemRef::Date(i) => out.push(EntityKey::Date(*i)),
ApprovalItemRef::DateAndTimeAssignment(i) => {
out.push(EntityKey::DateAndTimeAssignment(*i))
}
ApprovalItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
ApprovalItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
ApprovalItemRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
ApprovalItemRef::DefinitionalRepresentationRelationship(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationship(*i))
}
ApprovalItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationshipWithSameContext(*i))
}
ApprovalItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
ApprovalItemRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
ApprovalItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
ApprovalItemRef::DimensionalLocation(i) => out.push(EntityKey::DimensionalLocation(*i)),
ApprovalItemRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
ApprovalItemRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
ApprovalItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
ApprovalItemRef::Document(i) => out.push(EntityKey::Document(*i)),
ApprovalItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
ApprovalItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
ApprovalItemRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
ApprovalItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
ApprovalItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
ApprovalItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
ApprovalItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
ApprovalItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
ApprovalItemRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
ApprovalItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
ApprovalItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
ApprovalItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
ApprovalItemRef::Face(i) => out.push(EntityKey::Face(*i)),
ApprovalItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
ApprovalItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
ApprovalItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
ApprovalItemRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
ApprovalItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
ApprovalItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
ApprovalItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
ApprovalItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
ApprovalItemRef::FillAreaStyleTiles(i) => out.push(EntityKey::FillAreaStyleTiles(*i)),
ApprovalItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
ApprovalItemRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
ApprovalItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
ApprovalItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
ApprovalItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
ApprovalItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
ApprovalItemRef::Group(i) => out.push(EntityKey::Group(*i)),
ApprovalItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
ApprovalItemRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
ApprovalItemRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
ApprovalItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
ApprovalItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
ApprovalItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
ApprovalItemRef::Line(i) => out.push(EntityKey::Line(*i)),
ApprovalItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
ApprovalItemRef::MakeFromUsageOption(i) => out.push(EntityKey::MakeFromUsageOption(*i)),
ApprovalItemRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
ApprovalItemRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
ApprovalItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
ApprovalItemRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
ApprovalItemRef::MechanicalDesignAndDraughtingRelationship(i) => {
out.push(EntityKey::MechanicalDesignAndDraughtingRelationship(*i))
}
ApprovalItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
ApprovalItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
ApprovalItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
ApprovalItemRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
ApprovalItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
ApprovalItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
ApprovalItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
ApprovalItemRef::Organization(i) => out.push(EntityKey::Organization(*i)),
ApprovalItemRef::OrganizationRelationship(i) => {
out.push(EntityKey::OrganizationRelationship(*i))
}
ApprovalItemRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
ApprovalItemRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
ApprovalItemRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
ApprovalItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
ApprovalItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
ApprovalItemRef::Path(i) => out.push(EntityKey::Path(*i)),
ApprovalItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
ApprovalItemRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
ApprovalItemRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
ApprovalItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
ApprovalItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
ApprovalItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
ApprovalItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
ApprovalItemRef::Point(i) => out.push(EntityKey::Point(*i)),
ApprovalItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
ApprovalItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
ApprovalItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
ApprovalItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
ApprovalItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
ApprovalItemRef::Product(i) => out.push(EntityKey::Product(*i)),
ApprovalItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
ApprovalItemRef::ProductConceptFeature(i) => {
out.push(EntityKey::ProductConceptFeature(*i))
}
ApprovalItemRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
ApprovalItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
ApprovalItemRef::ProductDefinitionContext(i) => {
out.push(EntityKey::ProductDefinitionContext(*i))
}
ApprovalItemRef::ProductDefinitionEffectivity(i) => {
out.push(EntityKey::ProductDefinitionEffectivity(*i))
}
ApprovalItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ApprovalItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ApprovalItemRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
ApprovalItemRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
ApprovalItemRef::ProductDefinitionSubstitute(i) => {
out.push(EntityKey::ProductDefinitionSubstitute(*i))
}
ApprovalItemRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
ApprovalItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ApprovalItemRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
ApprovalItemRef::PropertyDefinitionRepresentation(i) => {
out.push(EntityKey::PropertyDefinitionRepresentation(*i))
}
ApprovalItemRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
ApprovalItemRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
ApprovalItemRef::QuasiUniformSurface(i) => out.push(EntityKey::QuasiUniformSurface(*i)),
ApprovalItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
ApprovalItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
ApprovalItemRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
ApprovalItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
ApprovalItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
ApprovalItemRef::RepresentationItem(i) => out.push(EntityKey::RepresentationItem(*i)),
ApprovalItemRef::RepresentationRelationship(i) => {
out.push(EntityKey::RepresentationRelationship(*i))
}
ApprovalItemRef::RepresentationRelationshipWithTransformation(i) => {
out.push(EntityKey::RepresentationRelationshipWithTransformation(*i))
}
ApprovalItemRef::ResourceProperty(i) => out.push(EntityKey::ResourceProperty(*i)),
ApprovalItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
ApprovalItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
ApprovalItemRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
ApprovalItemRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
ApprovalItemRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
ApprovalItemRef::ShapeDefinitionRepresentation(i) => {
out.push(EntityKey::ShapeDefinitionRepresentation(*i))
}
ApprovalItemRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
ApprovalItemRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
ApprovalItemRef::ShapeRepresentationRelationship(i) => {
out.push(EntityKey::ShapeRepresentationRelationship(*i))
}
ApprovalItemRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
ApprovalItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
ApprovalItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
ApprovalItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
ApprovalItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
ApprovalItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
ApprovalItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
ApprovalItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
ApprovalItemRef::SurfaceOfRevolution(i) => out.push(EntityKey::SurfaceOfRevolution(*i)),
ApprovalItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
ApprovalItemRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
ApprovalItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
ApprovalItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
ApprovalItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
ApprovalItemRef::TessellatedCurveSet(i) => out.push(EntityKey::TessellatedCurveSet(*i)),
ApprovalItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
ApprovalItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
ApprovalItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
ApprovalItemRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
ApprovalItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
ApprovalItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
ApprovalItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
ApprovalItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
ApprovalItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
ApprovalItemRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
ApprovalItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
ApprovalItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
ApprovalItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
ApprovalItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
ApprovalItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
ApprovalItemRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
ApprovalItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
ApprovalItemRef::VersionedActionRequest(i) => {
out.push(EntityKey::VersionedActionRequest(*i))
}
ApprovalItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
ApprovalItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
ApprovalItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
ApprovalItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
ApprovalItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
ApprovalItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_approval(&self, r: &ApprovalRef) -> u64 {
match r {
ApprovalRef::Approval(i) => self.approval_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_approval(r: &ApprovalRef, out: &mut Vec<EntityKey>) {
match r {
ApprovalRef::Approval(i) => out.push(EntityKey::Approval(*i)),
}
}
fn id_of_ref_approval_role(&self, r: &ApprovalRoleRef) -> u64 {
match r {
ApprovalRoleRef::ApprovalRole(i) => {
self.approval_role_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_approval_role(r: &ApprovalRoleRef, out: &mut Vec<EntityKey>) {
match r {
ApprovalRoleRef::ApprovalRole(i) => out.push(EntityKey::ApprovalRole(*i)),
}
}
fn id_of_ref_approval_status(&self, r: &ApprovalStatusRef) -> u64 {
match r {
ApprovalStatusRef::ApprovalStatus(i) => {
self.approval_status_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_approval_status(r: &ApprovalStatusRef, out: &mut Vec<EntityKey>) {
match r {
ApprovalStatusRef::ApprovalStatus(i) => out.push(EntityKey::ApprovalStatus(*i)),
}
}
fn id_of_ref_approved_item(&self, r: &ApprovedItemRef) -> u64 {
match r {
ApprovedItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::Change(i) => self.change_ids[i.0].expect("dep id assigned"),
ApprovedItemRef::ChangeRequest(i) => {
self.change_request_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
ApprovedItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
ApprovedItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
ApprovedItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::StartRequest(i) => {
self.start_request_ids[i.0].expect("dep id assigned")
}
ApprovedItemRef::StartWork(i) => self.start_work_ids[i.0].expect("dep id assigned"),
ApprovedItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_approved_item(r: &ApprovedItemRef, out: &mut Vec<EntityKey>) {
match r {
ApprovedItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
ApprovedItemRef::Change(i) => out.push(EntityKey::Change(*i)),
ApprovedItemRef::ChangeRequest(i) => out.push(EntityKey::ChangeRequest(*i)),
ApprovedItemRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
ApprovedItemRef::ConfigurationItem(i) => out.push(EntityKey::ConfigurationItem(*i)),
ApprovedItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
ApprovedItemRef::Product(i) => out.push(EntityKey::Product(*i)),
ApprovedItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
ApprovedItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ApprovedItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ApprovedItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ApprovedItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
ApprovedItemRef::StartRequest(i) => out.push(EntityKey::StartRequest(*i)),
ApprovedItemRef::StartWork(i) => out.push(EntityKey::StartWork(*i)),
ApprovedItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_ascribable_state(&self, r: &AscribableStateRef) -> u64 {
match r {
AscribableStateRef::AscribableState(i) => {
self.ascribable_state_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_ascribable_state(r: &AscribableStateRef, out: &mut Vec<EntityKey>) {
match r {
AscribableStateRef::AscribableState(i) => out.push(EntityKey::AscribableState(*i)),
}
}
fn id_of_ref_axis1_placement(&self, r: &Axis1PlacementRef) -> u64 {
match r {
Axis1PlacementRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_axis1_placement(r: &Axis1PlacementRef, out: &mut Vec<EntityKey>) {
match r {
Axis1PlacementRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
}
}
fn id_of_ref_axis2_placement3d(&self, r: &Axis2Placement3dRef) -> u64 {
match r {
Axis2Placement3dRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_axis2_placement3d(r: &Axis2Placement3dRef, out: &mut Vec<EntityKey>) {
match r {
Axis2Placement3dRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
}
}
fn id_of_ref_axis2_placement(&self, r: &Axis2PlacementRef) -> u64 {
match r {
Axis2PlacementRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
Axis2PlacementRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_axis2_placement(r: &Axis2PlacementRef, out: &mut Vec<EntityKey>) {
match r {
Axis2PlacementRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
Axis2PlacementRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
}
}
fn id_of_ref_camera_model_d3_multi_clipping_intersection_select(
&self,
r: &CameraModelD3MultiClippingIntersectionSelectRef,
) -> u64 {
match r {
CameraModelD3MultiClippingIntersectionSelectRef::Plane(i) => {
self.plane_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_camera_model_d3_multi_clipping_intersection_select(
r: &CameraModelD3MultiClippingIntersectionSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
CameraModelD3MultiClippingIntersectionSelectRef::Plane(i) => {
out.push(EntityKey::Plane(*i))
}
}
}
fn id_of_ref_cartesian_point(&self, r: &CartesianPointRef) -> u64 {
match r {
CartesianPointRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
CartesianPointRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
CartesianPointRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_cartesian_point(r: &CartesianPointRef, out: &mut Vec<EntityKey>) {
match r {
CartesianPointRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
CartesianPointRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
CartesianPointRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
}
}
fn id_of_ref_cc_classified_item(&self, r: &CcClassifiedItemRef) -> u64 {
match r {
CcClassifiedItemRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
CcClassifiedItemRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
CcClassifiedItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
CcClassifiedItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
CcClassifiedItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_cc_classified_item(r: &CcClassifiedItemRef, out: &mut Vec<EntityKey>) {
match r {
CcClassifiedItemRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
CcClassifiedItemRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
CcClassifiedItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
CcClassifiedItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
CcClassifiedItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_cc_person_organization_item(&self, r: &CcPersonOrganizationItemRef) -> u64 {
match r {
CcPersonOrganizationItemRef::Change(i) => {
self.change_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::ChangeRequest(i) => {
self.change_request_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::Contract(i) => {
self.contract_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::Product(i) => {
self.product_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
CcPersonOrganizationItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::StartRequest(i) => {
self.start_request_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::StartWork(i) => {
self.start_work_ids[i.0].expect("dep id assigned")
}
CcPersonOrganizationItemRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_cc_person_organization_item(
r: &CcPersonOrganizationItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
CcPersonOrganizationItemRef::Change(i) => out.push(EntityKey::Change(*i)),
CcPersonOrganizationItemRef::ChangeRequest(i) => out.push(EntityKey::ChangeRequest(*i)),
CcPersonOrganizationItemRef::ConfigurationItem(i) => {
out.push(EntityKey::ConfigurationItem(*i))
}
CcPersonOrganizationItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
CcPersonOrganizationItemRef::Product(i) => out.push(EntityKey::Product(*i)),
CcPersonOrganizationItemRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
CcPersonOrganizationItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
CcPersonOrganizationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
CcPersonOrganizationItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
CcPersonOrganizationItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
CcPersonOrganizationItemRef::StartRequest(i) => out.push(EntityKey::StartRequest(*i)),
CcPersonOrganizationItemRef::StartWork(i) => out.push(EntityKey::StartWork(*i)),
CcPersonOrganizationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_certification_type(&self, r: &CertificationTypeRef) -> u64 {
match r {
CertificationTypeRef::CertificationType(i) => {
self.certification_type_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_certification_type(r: &CertificationTypeRef, out: &mut Vec<EntityKey>) {
match r {
CertificationTypeRef::CertificationType(i) => {
out.push(EntityKey::CertificationType(*i))
}
}
}
fn id_of_ref_change_request_item(&self, r: &ChangeRequestItemRef) -> u64 {
match r {
ChangeRequestItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ChangeRequestItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
ChangeRequestItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_change_request_item(r: &ChangeRequestItemRef, out: &mut Vec<EntityKey>) {
match r {
ChangeRequestItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ChangeRequestItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ChangeRequestItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_character_style_select(&self, r: &CharacterStyleSelectRef) -> u64 {
match r {
CharacterStyleSelectRef::CharacterGlyphStyleOutline(i) => {
self.character_glyph_style_outline_ids[i.0].expect("dep id assigned")
}
CharacterStyleSelectRef::CharacterGlyphStyleStroke(i) => {
self.character_glyph_style_stroke_ids[i.0].expect("dep id assigned")
}
CharacterStyleSelectRef::TextStyleForDefinedFont(i) => {
self.text_style_for_defined_font_ids[i.0].expect("dep id assigned")
}
CharacterStyleSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_character_style_select(r: &CharacterStyleSelectRef, out: &mut Vec<EntityKey>) {
match r {
CharacterStyleSelectRef::CharacterGlyphStyleOutline(i) => {
out.push(EntityKey::CharacterGlyphStyleOutline(*i))
}
CharacterStyleSelectRef::CharacterGlyphStyleStroke(i) => {
out.push(EntityKey::CharacterGlyphStyleStroke(*i))
}
CharacterStyleSelectRef::TextStyleForDefinedFont(i) => {
out.push(EntityKey::TextStyleForDefinedFont(*i))
}
CharacterStyleSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_characterized_action_definition(
&self,
r: &CharacterizedActionDefinitionRef,
) -> u64 {
match r {
CharacterizedActionDefinitionRef::Action(i) => {
self.action_ids[i.0].expect("dep id assigned")
}
CharacterizedActionDefinitionRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
CharacterizedActionDefinitionRef::ActionMethodRelationship(i) => {
self.action_method_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedActionDefinitionRef::ActionRelationship(i) => {
self.action_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedActionDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_characterized_action_definition(
r: &CharacterizedActionDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
CharacterizedActionDefinitionRef::Action(i) => out.push(EntityKey::Action(*i)),
CharacterizedActionDefinitionRef::ActionMethod(i) => {
out.push(EntityKey::ActionMethod(*i))
}
CharacterizedActionDefinitionRef::ActionMethodRelationship(i) => {
out.push(EntityKey::ActionMethodRelationship(*i))
}
CharacterizedActionDefinitionRef::ActionRelationship(i) => {
out.push(EntityKey::ActionRelationship(*i))
}
CharacterizedActionDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_characterized_definition(&self, r: &CharacterizedDefinitionRef) -> u64 {
match r {
CharacterizedDefinitionRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CharacterizedItemWithinRepresentation(i) => {
self.characterized_item_within_representation_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CharacterizedObject(i) => {
self.characterized_object_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
CharacterizedDefinitionRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DocumentFile(i) => {
self.document_file_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DraughtingModelItemAssociation(i) => {
self.draughting_model_item_association_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::DraughtingModelItemAssociationWithPlaceholder(i) => self
.draughting_model_item_association_with_placeholder_ids[i.0]
.expect("dep id assigned"),
CharacterizedDefinitionRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricItemSpecificUsage(i) => {
self.geometric_item_specific_usage_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ItemIdentifiedRepresentationUsage(i) => {
self.item_identified_representation_usage_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ModelGeometricView(i) => {
self.model_geometric_view_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionOccurrence(i) => {
self.product_definition_occurrence_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionRelationshipRelationship(i) => {
self.product_definition_relationship_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
CharacterizedDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_characterized_definition(r: &CharacterizedDefinitionRef, out: &mut Vec<EntityKey>) {
match r {
CharacterizedDefinitionRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
CharacterizedDefinitionRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
CharacterizedDefinitionRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
CharacterizedDefinitionRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
CharacterizedDefinitionRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
CharacterizedDefinitionRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
CharacterizedDefinitionRef::CharacterizedItemWithinRepresentation(i) => {
out.push(EntityKey::CharacterizedItemWithinRepresentation(*i))
}
CharacterizedDefinitionRef::CharacterizedObject(i) => {
out.push(EntityKey::CharacterizedObject(*i))
}
CharacterizedDefinitionRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
CharacterizedDefinitionRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
CharacterizedDefinitionRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
CharacterizedDefinitionRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
CharacterizedDefinitionRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
CharacterizedDefinitionRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
CharacterizedDefinitionRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
CharacterizedDefinitionRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
CharacterizedDefinitionRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
CharacterizedDefinitionRef::Datum(i) => out.push(EntityKey::Datum(*i)),
CharacterizedDefinitionRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
CharacterizedDefinitionRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
CharacterizedDefinitionRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
CharacterizedDefinitionRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
CharacterizedDefinitionRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
CharacterizedDefinitionRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
CharacterizedDefinitionRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
CharacterizedDefinitionRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
CharacterizedDefinitionRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
CharacterizedDefinitionRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
CharacterizedDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
CharacterizedDefinitionRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
CharacterizedDefinitionRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
CharacterizedDefinitionRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
CharacterizedDefinitionRef::DraughtingModelItemAssociation(i) => {
out.push(EntityKey::DraughtingModelItemAssociation(*i))
}
CharacterizedDefinitionRef::DraughtingModelItemAssociationWithPlaceholder(i) => {
out.push(EntityKey::DraughtingModelItemAssociationWithPlaceholder(*i))
}
CharacterizedDefinitionRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
CharacterizedDefinitionRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
CharacterizedDefinitionRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
CharacterizedDefinitionRef::GeometricItemSpecificUsage(i) => {
out.push(EntityKey::GeometricItemSpecificUsage(*i))
}
CharacterizedDefinitionRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
CharacterizedDefinitionRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
CharacterizedDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
CharacterizedDefinitionRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
CharacterizedDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
CharacterizedDefinitionRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
CharacterizedDefinitionRef::ItemIdentifiedRepresentationUsage(i) => {
out.push(EntityKey::ItemIdentifiedRepresentationUsage(*i))
}
CharacterizedDefinitionRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
CharacterizedDefinitionRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
CharacterizedDefinitionRef::ModelGeometricView(i) => {
out.push(EntityKey::ModelGeometricView(*i))
}
CharacterizedDefinitionRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
CharacterizedDefinitionRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
CharacterizedDefinitionRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
CharacterizedDefinitionRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
CharacterizedDefinitionRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
CharacterizedDefinitionRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
CharacterizedDefinitionRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
CharacterizedDefinitionRef::ProductDefinitionOccurrence(i) => {
out.push(EntityKey::ProductDefinitionOccurrence(*i))
}
CharacterizedDefinitionRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
CharacterizedDefinitionRef::ProductDefinitionRelationshipRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationshipRelationship(*i))
}
CharacterizedDefinitionRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
CharacterizedDefinitionRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
CharacterizedDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
CharacterizedDefinitionRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
CharacterizedDefinitionRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
CharacterizedDefinitionRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
CharacterizedDefinitionRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
CharacterizedDefinitionRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
CharacterizedDefinitionRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
CharacterizedDefinitionRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
CharacterizedDefinitionRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
CharacterizedDefinitionRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
CharacterizedDefinitionRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
CharacterizedDefinitionRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
CharacterizedDefinitionRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
CharacterizedDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_characterized_resource_definition(
&self,
r: &CharacterizedResourceDefinitionRef,
) -> u64 {
match r {
CharacterizedResourceDefinitionRef::ActionResource(i) => {
self.action_resource_ids[i.0].expect("dep id assigned")
}
CharacterizedResourceDefinitionRef::ActionResourceRelationship(i) => {
self.action_resource_relationship_ids[i.0].expect("dep id assigned")
}
CharacterizedResourceDefinitionRef::ActionResourceRequirement(i) => {
self.action_resource_requirement_ids[i.0].expect("dep id assigned")
}
CharacterizedResourceDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_characterized_resource_definition(
r: &CharacterizedResourceDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
CharacterizedResourceDefinitionRef::ActionResource(i) => {
out.push(EntityKey::ActionResource(*i))
}
CharacterizedResourceDefinitionRef::ActionResourceRelationship(i) => {
out.push(EntityKey::ActionResourceRelationship(*i))
}
CharacterizedResourceDefinitionRef::ActionResourceRequirement(i) => {
out.push(EntityKey::ActionResourceRequirement(*i))
}
CharacterizedResourceDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_closed_shell(&self, r: &ClosedShellRef) -> u64 {
match r {
ClosedShellRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
ClosedShellRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
ClosedShellRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_closed_shell(r: &ClosedShellRef, out: &mut Vec<EntityKey>) {
match r {
ClosedShellRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ClosedShellRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
ClosedShellRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_colour(&self, r: &ColourRef) -> u64 {
match r {
ColourRef::Colour(i) => self.colour_ids[i.0].expect("dep id assigned"),
ColourRef::ColourRgb(i) => self.colour_rgb_ids[i.0].expect("dep id assigned"),
ColourRef::ColourSpecification(i) => {
self.colour_specification_ids[i.0].expect("dep id assigned")
}
ColourRef::DraughtingPreDefinedColour(i) => {
self.draughting_pre_defined_colour_ids[i.0].expect("dep id assigned")
}
ColourRef::PreDefinedColour(i) => {
self.pre_defined_colour_ids[i.0].expect("dep id assigned")
}
ColourRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_colour(r: &ColourRef, out: &mut Vec<EntityKey>) {
match r {
ColourRef::Colour(i) => out.push(EntityKey::Colour(*i)),
ColourRef::ColourRgb(i) => out.push(EntityKey::ColourRgb(*i)),
ColourRef::ColourSpecification(i) => out.push(EntityKey::ColourSpecification(*i)),
ColourRef::DraughtingPreDefinedColour(i) => {
out.push(EntityKey::DraughtingPreDefinedColour(*i))
}
ColourRef::PreDefinedColour(i) => out.push(EntityKey::PreDefinedColour(*i)),
ColourRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_composite_curve_segment(&self, r: &CompositeCurveSegmentRef) -> u64 {
match r {
CompositeCurveSegmentRef::CompositeCurveSegment(i) => {
self.composite_curve_segment_ids[i.0].expect("dep id assigned")
}
CompositeCurveSegmentRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_composite_curve_segment(r: &CompositeCurveSegmentRef, out: &mut Vec<EntityKey>) {
match r {
CompositeCurveSegmentRef::CompositeCurveSegment(i) => {
out.push(EntityKey::CompositeCurveSegment(*i))
}
CompositeCurveSegmentRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_compound_item_definition(&self, r: &CompoundItemDefinitionRef) -> u64 {
match r {
CompoundItemDefinitionRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
CompoundItemDefinitionRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Direction(i) => {
self.direction_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::EdgeLoop(i) => {
self.edge_loop_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Ellipse(i) => {
self.ellipse_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::FaceBound(i) => {
self.face_bound_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::MappedItem(i) => {
self.mapped_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::PolyLoop(i) => {
self.poly_loop_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Polyline(i) => {
self.polyline_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::StyledItem(i) => {
self.styled_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Surface(i) => {
self.surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
CompoundItemDefinitionRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::WireShell(i) => {
self.wire_shell_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
CompoundItemDefinitionRef::ListRepresentationItem(_) => {
panic!("aggregate via single id_of")
}
CompoundItemDefinitionRef::SetRepresentationItem(_) => {
panic!("aggregate via single id_of")
}
}
}
fn deps_ref_compound_item_definition(r: &CompoundItemDefinitionRef, out: &mut Vec<EntityKey>) {
match r {
CompoundItemDefinitionRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
CompoundItemDefinitionRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
CompoundItemDefinitionRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
CompoundItemDefinitionRef::AnnotationPlane(i) => {
out.push(EntityKey::AnnotationPlane(*i))
}
CompoundItemDefinitionRef::AnnotationSymbol(i) => {
out.push(EntityKey::AnnotationSymbol(*i))
}
CompoundItemDefinitionRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
CompoundItemDefinitionRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
CompoundItemDefinitionRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
CompoundItemDefinitionRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
CompoundItemDefinitionRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
CompoundItemDefinitionRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
CompoundItemDefinitionRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
CompoundItemDefinitionRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
CompoundItemDefinitionRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
CompoundItemDefinitionRef::Axis2Placement2d(i) => {
out.push(EntityKey::Axis2Placement2d(*i))
}
CompoundItemDefinitionRef::Axis2Placement3d(i) => {
out.push(EntityKey::Axis2Placement3d(*i))
}
CompoundItemDefinitionRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
CompoundItemDefinitionRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
CompoundItemDefinitionRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
CompoundItemDefinitionRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
CompoundItemDefinitionRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
CompoundItemDefinitionRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
CompoundItemDefinitionRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
CompoundItemDefinitionRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
CompoundItemDefinitionRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
CompoundItemDefinitionRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
CompoundItemDefinitionRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
CompoundItemDefinitionRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
CompoundItemDefinitionRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
CompoundItemDefinitionRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
CompoundItemDefinitionRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
CompoundItemDefinitionRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
CompoundItemDefinitionRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
CompoundItemDefinitionRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
CompoundItemDefinitionRef::Circle(i) => out.push(EntityKey::Circle(*i)),
CompoundItemDefinitionRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
CompoundItemDefinitionRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
CompoundItemDefinitionRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
CompoundItemDefinitionRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
CompoundItemDefinitionRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
CompoundItemDefinitionRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
CompoundItemDefinitionRef::Conic(i) => out.push(EntityKey::Conic(*i)),
CompoundItemDefinitionRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
CompoundItemDefinitionRef::ConnectedFaceSet(i) => {
out.push(EntityKey::ConnectedFaceSet(*i))
}
CompoundItemDefinitionRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
CompoundItemDefinitionRef::CoordinatesList(i) => {
out.push(EntityKey::CoordinatesList(*i))
}
CompoundItemDefinitionRef::Curve(i) => out.push(EntityKey::Curve(*i)),
CompoundItemDefinitionRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
CompoundItemDefinitionRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
CompoundItemDefinitionRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
CompoundItemDefinitionRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
CompoundItemDefinitionRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
CompoundItemDefinitionRef::Direction(i) => out.push(EntityKey::Direction(*i)),
CompoundItemDefinitionRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
CompoundItemDefinitionRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
CompoundItemDefinitionRef::Edge(i) => out.push(EntityKey::Edge(*i)),
CompoundItemDefinitionRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
CompoundItemDefinitionRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
CompoundItemDefinitionRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
CompoundItemDefinitionRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
CompoundItemDefinitionRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
CompoundItemDefinitionRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
CompoundItemDefinitionRef::Face(i) => out.push(EntityKey::Face(*i)),
CompoundItemDefinitionRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
CompoundItemDefinitionRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
CompoundItemDefinitionRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
CompoundItemDefinitionRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
CompoundItemDefinitionRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
CompoundItemDefinitionRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
CompoundItemDefinitionRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
CompoundItemDefinitionRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
CompoundItemDefinitionRef::GeometricCurveSet(i) => {
out.push(EntityKey::GeometricCurveSet(*i))
}
CompoundItemDefinitionRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
CompoundItemDefinitionRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
CompoundItemDefinitionRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
CompoundItemDefinitionRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
CompoundItemDefinitionRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
CompoundItemDefinitionRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
CompoundItemDefinitionRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
CompoundItemDefinitionRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
CompoundItemDefinitionRef::Line(i) => out.push(EntityKey::Line(*i)),
CompoundItemDefinitionRef::Loop(i) => out.push(EntityKey::Loop(*i)),
CompoundItemDefinitionRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
CompoundItemDefinitionRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
CompoundItemDefinitionRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
CompoundItemDefinitionRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
CompoundItemDefinitionRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
CompoundItemDefinitionRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
CompoundItemDefinitionRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
CompoundItemDefinitionRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
CompoundItemDefinitionRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
CompoundItemDefinitionRef::Path(i) => out.push(EntityKey::Path(*i)),
CompoundItemDefinitionRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
CompoundItemDefinitionRef::Placement(i) => out.push(EntityKey::Placement(*i)),
CompoundItemDefinitionRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
CompoundItemDefinitionRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
CompoundItemDefinitionRef::Plane(i) => out.push(EntityKey::Plane(*i)),
CompoundItemDefinitionRef::Point(i) => out.push(EntityKey::Point(*i)),
CompoundItemDefinitionRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
CompoundItemDefinitionRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
CompoundItemDefinitionRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
CompoundItemDefinitionRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
CompoundItemDefinitionRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
CompoundItemDefinitionRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
CompoundItemDefinitionRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
CompoundItemDefinitionRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
CompoundItemDefinitionRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
CompoundItemDefinitionRef::RepresentationItem(i) => {
out.push(EntityKey::RepresentationItem(*i))
}
CompoundItemDefinitionRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
CompoundItemDefinitionRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
CompoundItemDefinitionRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
CompoundItemDefinitionRef::SphericalSurface(i) => {
out.push(EntityKey::SphericalSurface(*i))
}
CompoundItemDefinitionRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
CompoundItemDefinitionRef::Surface(i) => out.push(EntityKey::Surface(*i)),
CompoundItemDefinitionRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
CompoundItemDefinitionRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
CompoundItemDefinitionRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
CompoundItemDefinitionRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
CompoundItemDefinitionRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
CompoundItemDefinitionRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
CompoundItemDefinitionRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
CompoundItemDefinitionRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
CompoundItemDefinitionRef::TessellatedFace(i) => {
out.push(EntityKey::TessellatedFace(*i))
}
CompoundItemDefinitionRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
CompoundItemDefinitionRef::TessellatedItem(i) => {
out.push(EntityKey::TessellatedItem(*i))
}
CompoundItemDefinitionRef::TessellatedShell(i) => {
out.push(EntityKey::TessellatedShell(*i))
}
CompoundItemDefinitionRef::TessellatedSolid(i) => {
out.push(EntityKey::TessellatedSolid(*i))
}
CompoundItemDefinitionRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
CompoundItemDefinitionRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
CompoundItemDefinitionRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
CompoundItemDefinitionRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
CompoundItemDefinitionRef::ToroidalSurface(i) => {
out.push(EntityKey::ToroidalSurface(*i))
}
CompoundItemDefinitionRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
CompoundItemDefinitionRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
CompoundItemDefinitionRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
CompoundItemDefinitionRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
CompoundItemDefinitionRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
CompoundItemDefinitionRef::Vector(i) => out.push(EntityKey::Vector(*i)),
CompoundItemDefinitionRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
CompoundItemDefinitionRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
CompoundItemDefinitionRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
CompoundItemDefinitionRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
CompoundItemDefinitionRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
CompoundItemDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
CompoundItemDefinitionRef::ListRepresentationItem(vs) => {
for e in vs {
Self::deps_ref_representation_item(e, out);
}
}
CompoundItemDefinitionRef::SetRepresentationItem(vs) => {
for e in vs {
Self::deps_ref_representation_item(e, out);
}
}
}
}
fn id_of_ref_configuration_design_item(&self, r: &ConfigurationDesignItemRef) -> u64 {
match r {
ConfigurationDesignItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ConfigurationDesignItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ConfigurationDesignItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
ConfigurationDesignItemRef::ProductDefinitionOccurrence(i) => {
self.product_definition_occurrence_ids[i.0].expect("dep id assigned")
}
ConfigurationDesignItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ConfigurationDesignItemRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_configuration_design_item(
r: &ConfigurationDesignItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
ConfigurationDesignItemRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
ConfigurationDesignItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ConfigurationDesignItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ConfigurationDesignItemRef::ProductDefinitionOccurrence(i) => {
out.push(EntityKey::ProductDefinitionOccurrence(*i))
}
ConfigurationDesignItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ConfigurationDesignItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_configuration_design(&self, r: &ConfigurationDesignRef) -> u64 {
match r {
ConfigurationDesignRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_configuration_design(r: &ConfigurationDesignRef, out: &mut Vec<EntityKey>) {
match r {
ConfigurationDesignRef::ConfigurationDesign(i) => {
out.push(EntityKey::ConfigurationDesign(*i))
}
}
}
fn id_of_ref_configuration_item(&self, r: &ConfigurationItemRef) -> u64 {
match r {
ConfigurationItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
ConfigurationItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_configuration_item(r: &ConfigurationItemRef, out: &mut Vec<EntityKey>) {
match r {
ConfigurationItemRef::ConfigurationItem(i) => {
out.push(EntityKey::ConfigurationItem(*i))
}
ConfigurationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_connected_face_set(&self, r: &ConnectedFaceSetRef) -> u64 {
match r {
ConnectedFaceSetRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
ConnectedFaceSetRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
ConnectedFaceSetRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
ConnectedFaceSetRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
ConnectedFaceSetRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_connected_face_set(r: &ConnectedFaceSetRef, out: &mut Vec<EntityKey>) {
match r {
ConnectedFaceSetRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ConnectedFaceSetRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
ConnectedFaceSetRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
ConnectedFaceSetRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
ConnectedFaceSetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_constructive_geometry_representation_or_shape_representation(
&self,
r: &ConstructiveGeometryRepresentationOrShapeRepresentationRef,
) -> u64 {
match r {
ConstructiveGeometryRepresentationOrShapeRepresentationRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_constructive_geometry_representation_or_shape_representation(
r: &ConstructiveGeometryRepresentationOrShapeRepresentationRef,
out: &mut Vec<EntityKey>,
) {
match r {
ConstructiveGeometryRepresentationOrShapeRepresentationRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
ConstructiveGeometryRepresentationOrShapeRepresentationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_contract_type(&self, r: &ContractTypeRef) -> u64 {
match r {
ContractTypeRef::ContractType(i) => {
self.contract_type_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_contract_type(r: &ContractTypeRef, out: &mut Vec<EntityKey>) {
match r {
ContractTypeRef::ContractType(i) => out.push(EntityKey::ContractType(*i)),
}
}
fn id_of_ref_coordinated_universal_time_offset(
&self,
r: &CoordinatedUniversalTimeOffsetRef,
) -> u64 {
match r {
CoordinatedUniversalTimeOffsetRef::CoordinatedUniversalTimeOffset(i) => {
self.coordinated_universal_time_offset_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_coordinated_universal_time_offset(
r: &CoordinatedUniversalTimeOffsetRef,
out: &mut Vec<EntityKey>,
) {
match r {
CoordinatedUniversalTimeOffsetRef::CoordinatedUniversalTimeOffset(i) => {
out.push(EntityKey::CoordinatedUniversalTimeOffset(*i))
}
}
}
fn id_of_ref_coordinates_list(&self, r: &CoordinatesListRef) -> u64 {
match r {
CoordinatesListRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_coordinates_list(r: &CoordinatesListRef, out: &mut Vec<EntityKey>) {
match r {
CoordinatesListRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
}
}
fn id_of_ref_curve_font_or_scaled_curve_font_select(
&self,
r: &CurveFontOrScaledCurveFontSelectRef,
) -> u64 {
match r {
CurveFontOrScaledCurveFontSelectRef::CurveStyleFont(i) => {
self.curve_style_font_ids[i.0].expect("dep id assigned")
}
CurveFontOrScaledCurveFontSelectRef::CurveStyleFontAndScaling(i) => {
self.curve_style_font_and_scaling_ids[i.0].expect("dep id assigned")
}
CurveFontOrScaledCurveFontSelectRef::DraughtingPreDefinedCurveFont(i) => {
self.draughting_pre_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveFontOrScaledCurveFontSelectRef::ExternallyDefinedCurveFont(i) => {
self.externally_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveFontOrScaledCurveFontSelectRef::PreDefinedCurveFont(i) => {
self.pre_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveFontOrScaledCurveFontSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_curve_font_or_scaled_curve_font_select(
r: &CurveFontOrScaledCurveFontSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
CurveFontOrScaledCurveFontSelectRef::CurveStyleFont(i) => {
out.push(EntityKey::CurveStyleFont(*i))
}
CurveFontOrScaledCurveFontSelectRef::CurveStyleFontAndScaling(i) => {
out.push(EntityKey::CurveStyleFontAndScaling(*i))
}
CurveFontOrScaledCurveFontSelectRef::DraughtingPreDefinedCurveFont(i) => {
out.push(EntityKey::DraughtingPreDefinedCurveFont(*i))
}
CurveFontOrScaledCurveFontSelectRef::ExternallyDefinedCurveFont(i) => {
out.push(EntityKey::ExternallyDefinedCurveFont(*i))
}
CurveFontOrScaledCurveFontSelectRef::PreDefinedCurveFont(i) => {
out.push(EntityKey::PreDefinedCurveFont(*i))
}
CurveFontOrScaledCurveFontSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_or_annotation_curve_occurrence(
&self,
r: &CurveOrAnnotationCurveOccurrenceRef,
) -> u64 {
match r {
CurveOrAnnotationCurveOccurrenceRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Circle(i) => {
self.circle_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Conic(i) => {
self.conic_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Curve(i) => {
self.curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Ellipse(i) => {
self.ellipse_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Line(i) => {
self.line_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Pcurve(i) => {
self.pcurve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Polyline(i) => {
self.polyline_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
CurveOrAnnotationCurveOccurrenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_curve_or_annotation_curve_occurrence(
r: &CurveOrAnnotationCurveOccurrenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
CurveOrAnnotationCurveOccurrenceRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BSplineCurve(i) => {
out.push(EntityKey::BSplineCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BezierCurve(i) => {
out.push(EntityKey::BezierCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BoundedCurve(i) => {
out.push(EntityKey::BoundedCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BoundedPcurve(i) => {
out.push(EntityKey::BoundedPcurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::Circle(i) => out.push(EntityKey::Circle(*i)),
CurveOrAnnotationCurveOccurrenceRef::CompositeCurve(i) => {
out.push(EntityKey::CompositeCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::Conic(i) => out.push(EntityKey::Conic(*i)),
CurveOrAnnotationCurveOccurrenceRef::Curve(i) => out.push(EntityKey::Curve(*i)),
CurveOrAnnotationCurveOccurrenceRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
CurveOrAnnotationCurveOccurrenceRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
CurveOrAnnotationCurveOccurrenceRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::LeaderCurve(i) => {
out.push(EntityKey::LeaderCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::Line(i) => out.push(EntityKey::Line(*i)),
CurveOrAnnotationCurveOccurrenceRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
CurveOrAnnotationCurveOccurrenceRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
CurveOrAnnotationCurveOccurrenceRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
CurveOrAnnotationCurveOccurrenceRef::SurfaceCurve(i) => {
out.push(EntityKey::SurfaceCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::TrimmedCurve(i) => {
out.push(EntityKey::TrimmedCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::UniformCurve(i) => {
out.push(EntityKey::UniformCurve(*i))
}
CurveOrAnnotationCurveOccurrenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_or_curve_set(&self, r: &CurveOrCurveSetRef) -> u64 {
match r {
CurveOrCurveSetRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
CurveOrCurveSetRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
CurveOrCurveSetRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve_or_curve_set(r: &CurveOrCurveSetRef, out: &mut Vec<EntityKey>) {
match r {
CurveOrCurveSetRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
CurveOrCurveSetRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
CurveOrCurveSetRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
CurveOrCurveSetRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
CurveOrCurveSetRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
CurveOrCurveSetRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
CurveOrCurveSetRef::Circle(i) => out.push(EntityKey::Circle(*i)),
CurveOrCurveSetRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
CurveOrCurveSetRef::Conic(i) => out.push(EntityKey::Conic(*i)),
CurveOrCurveSetRef::Curve(i) => out.push(EntityKey::Curve(*i)),
CurveOrCurveSetRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
CurveOrCurveSetRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
CurveOrCurveSetRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
CurveOrCurveSetRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
CurveOrCurveSetRef::Line(i) => out.push(EntityKey::Line(*i)),
CurveOrCurveSetRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
CurveOrCurveSetRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
CurveOrCurveSetRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
CurveOrCurveSetRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
CurveOrCurveSetRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
CurveOrCurveSetRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
CurveOrCurveSetRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
CurveOrCurveSetRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
CurveOrCurveSetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_or_render(&self, r: &CurveOrRenderRef) -> u64 {
match r {
CurveOrRenderRef::CurveStyle(i) => self.curve_style_ids[i.0].expect("dep id assigned"),
CurveOrRenderRef::CurveStyleRendering(i) => {
self.curve_style_rendering_ids[i.0].expect("dep id assigned")
}
CurveOrRenderRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve_or_render(r: &CurveOrRenderRef, out: &mut Vec<EntityKey>) {
match r {
CurveOrRenderRef::CurveStyle(i) => out.push(EntityKey::CurveStyle(*i)),
CurveOrRenderRef::CurveStyleRendering(i) => {
out.push(EntityKey::CurveStyleRendering(*i))
}
CurveOrRenderRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve(&self, r: &CurveRef) -> u64 {
match r {
CurveRef::BSplineCurve(i) => self.b_spline_curve_ids[i.0].expect("dep id assigned"),
CurveRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
CurveRef::BezierCurve(i) => self.bezier_curve_ids[i.0].expect("dep id assigned"),
CurveRef::BoundedCurve(i) => self.bounded_curve_ids[i.0].expect("dep id assigned"),
CurveRef::BoundedPcurve(i) => self.bounded_pcurve_ids[i.0].expect("dep id assigned"),
CurveRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
CurveRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
CurveRef::CompositeCurve(i) => self.composite_curve_ids[i.0].expect("dep id assigned"),
CurveRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
CurveRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
CurveRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
CurveRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
CurveRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
CurveRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
CurveRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
CurveRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
CurveRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
CurveRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
CurveRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
CurveRef::SurfaceCurve(i) => self.surface_curve_ids[i.0].expect("dep id assigned"),
CurveRef::TrimmedCurve(i) => self.trimmed_curve_ids[i.0].expect("dep id assigned"),
CurveRef::UniformCurve(i) => self.uniform_curve_ids[i.0].expect("dep id assigned"),
CurveRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve(r: &CurveRef, out: &mut Vec<EntityKey>) {
match r {
CurveRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
CurveRef::BSplineCurveWithKnots(i) => out.push(EntityKey::BSplineCurveWithKnots(*i)),
CurveRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
CurveRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
CurveRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
CurveRef::BoundedSurfaceCurve(i) => out.push(EntityKey::BoundedSurfaceCurve(*i)),
CurveRef::Circle(i) => out.push(EntityKey::Circle(*i)),
CurveRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
CurveRef::Conic(i) => out.push(EntityKey::Conic(*i)),
CurveRef::Curve(i) => out.push(EntityKey::Curve(*i)),
CurveRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
CurveRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
CurveRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
CurveRef::Line(i) => out.push(EntityKey::Line(*i)),
CurveRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
CurveRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
CurveRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
CurveRef::RationalBSplineCurve(i) => out.push(EntityKey::RationalBSplineCurve(*i)),
CurveRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
CurveRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
CurveRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
CurveRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
CurveRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_style_font_pattern(&self, r: &CurveStyleFontPatternRef) -> u64 {
match r {
CurveStyleFontPatternRef::CurveStyleFontPattern(i) => {
self.curve_style_font_pattern_ids[i.0].expect("dep id assigned")
}
CurveStyleFontPatternRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve_style_font_pattern(r: &CurveStyleFontPatternRef, out: &mut Vec<EntityKey>) {
match r {
CurveStyleFontPatternRef::CurveStyleFontPattern(i) => {
out.push(EntityKey::CurveStyleFontPattern(*i))
}
CurveStyleFontPatternRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_style_font_select(&self, r: &CurveStyleFontSelectRef) -> u64 {
match r {
CurveStyleFontSelectRef::CurveStyleFont(i) => {
self.curve_style_font_ids[i.0].expect("dep id assigned")
}
CurveStyleFontSelectRef::DraughtingPreDefinedCurveFont(i) => {
self.draughting_pre_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveStyleFontSelectRef::ExternallyDefinedCurveFont(i) => {
self.externally_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveStyleFontSelectRef::PreDefinedCurveFont(i) => {
self.pre_defined_curve_font_ids[i.0].expect("dep id assigned")
}
CurveStyleFontSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve_style_font_select(r: &CurveStyleFontSelectRef, out: &mut Vec<EntityKey>) {
match r {
CurveStyleFontSelectRef::CurveStyleFont(i) => out.push(EntityKey::CurveStyleFont(*i)),
CurveStyleFontSelectRef::DraughtingPreDefinedCurveFont(i) => {
out.push(EntityKey::DraughtingPreDefinedCurveFont(*i))
}
CurveStyleFontSelectRef::ExternallyDefinedCurveFont(i) => {
out.push(EntityKey::ExternallyDefinedCurveFont(*i))
}
CurveStyleFontSelectRef::PreDefinedCurveFont(i) => {
out.push(EntityKey::PreDefinedCurveFont(*i))
}
CurveStyleFontSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_curve_style(&self, r: &CurveStyleRef) -> u64 {
match r {
CurveStyleRef::CurveStyle(i) => self.curve_style_ids[i.0].expect("dep id assigned"),
CurveStyleRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_curve_style(r: &CurveStyleRef, out: &mut Vec<EntityKey>) {
match r {
CurveStyleRef::CurveStyle(i) => out.push(EntityKey::CurveStyle(*i)),
CurveStyleRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_date_and_time_item(&self, r: &DateAndTimeItemRef) -> u64 {
match r {
DateAndTimeItemRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::ActionDirective(i) => {
self.action_directive_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ActionProperty(i) => {
self.action_property_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ActionRelationship(i) => {
self.action_relationship_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Approval(i) => self.approval_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::ApprovalPersonOrganization(i) => {
self.approval_person_organization_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ApprovalStatus(i) => {
self.approval_status_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::AscribableState(i) => {
self.ascribable_state_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::DateAndTimeAssignment(i) => {
self.date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::DesignContext(i) => {
self.design_context_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Document(i) => self.document_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::DocumentFile(i) => {
self.document_file_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Effectivity(i) => {
self.effectivity_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self
.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::OrganizationRelationship(i) => {
self.organization_relationship_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Person(i) => self.person_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
DateAndTimeItemRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ResourceProperty(i) => {
self.resource_property_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::SecurityClassificationLevel(i) => {
self.security_classification_level_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::StateObserved(i) => {
self.state_observed_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::StateType(i) => self.state_type_ids[i.0].expect("dep id assigned"),
DateAndTimeItemRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0].expect("dep id assigned")
}
DateAndTimeItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_date_and_time_item(r: &DateAndTimeItemRef, out: &mut Vec<EntityKey>) {
match r {
DateAndTimeItemRef::Action(i) => out.push(EntityKey::Action(*i)),
DateAndTimeItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
DateAndTimeItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
DateAndTimeItemRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
DateAndTimeItemRef::ActionRelationship(i) => {
out.push(EntityKey::ActionRelationship(*i))
}
DateAndTimeItemRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
DateAndTimeItemRef::AppliedDateAndTimeAssignment(i) => {
out.push(EntityKey::AppliedDateAndTimeAssignment(*i))
}
DateAndTimeItemRef::Approval(i) => out.push(EntityKey::Approval(*i)),
DateAndTimeItemRef::ApprovalPersonOrganization(i) => {
out.push(EntityKey::ApprovalPersonOrganization(*i))
}
DateAndTimeItemRef::ApprovalStatus(i) => out.push(EntityKey::ApprovalStatus(*i)),
DateAndTimeItemRef::AscribableState(i) => out.push(EntityKey::AscribableState(*i)),
DateAndTimeItemRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
DateAndTimeItemRef::CcDesignDateAndTimeAssignment(i) => {
out.push(EntityKey::CcDesignDateAndTimeAssignment(*i))
}
DateAndTimeItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
DateAndTimeItemRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
DateAndTimeItemRef::ConfigurationDesign(i) => {
out.push(EntityKey::ConfigurationDesign(*i))
}
DateAndTimeItemRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
DateAndTimeItemRef::ConfigurationItem(i) => out.push(EntityKey::ConfigurationItem(*i)),
DateAndTimeItemRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
DateAndTimeItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
DateAndTimeItemRef::DateAndTimeAssignment(i) => {
out.push(EntityKey::DateAndTimeAssignment(*i))
}
DateAndTimeItemRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
DateAndTimeItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
DateAndTimeItemRef::Document(i) => out.push(EntityKey::Document(*i)),
DateAndTimeItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
DateAndTimeItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
DateAndTimeItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
DateAndTimeItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
DateAndTimeItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
DateAndTimeItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
DateAndTimeItemRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
DateAndTimeItemRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
DateAndTimeItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
DateAndTimeItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
DateAndTimeItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
DateAndTimeItemRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
DateAndTimeItemRef::OrganizationRelationship(i) => {
out.push(EntityKey::OrganizationRelationship(*i))
}
DateAndTimeItemRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
DateAndTimeItemRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
DateAndTimeItemRef::Person(i) => out.push(EntityKey::Person(*i)),
DateAndTimeItemRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
DateAndTimeItemRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
DateAndTimeItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
DateAndTimeItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
DateAndTimeItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
DateAndTimeItemRef::Product(i) => out.push(EntityKey::Product(*i)),
DateAndTimeItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
DateAndTimeItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
DateAndTimeItemRef::ProductDefinitionContext(i) => {
out.push(EntityKey::ProductDefinitionContext(*i))
}
DateAndTimeItemRef::ProductDefinitionEffectivity(i) => {
out.push(EntityKey::ProductDefinitionEffectivity(*i))
}
DateAndTimeItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
DateAndTimeItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
DateAndTimeItemRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
DateAndTimeItemRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
DateAndTimeItemRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
DateAndTimeItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
DateAndTimeItemRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
DateAndTimeItemRef::PropertyDefinitionRepresentation(i) => {
out.push(EntityKey::PropertyDefinitionRepresentation(*i))
}
DateAndTimeItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
DateAndTimeItemRef::ResourceProperty(i) => out.push(EntityKey::ResourceProperty(*i)),
DateAndTimeItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
DateAndTimeItemRef::SecurityClassificationLevel(i) => {
out.push(EntityKey::SecurityClassificationLevel(*i))
}
DateAndTimeItemRef::ShapeDefinitionRepresentation(i) => {
out.push(EntityKey::ShapeDefinitionRepresentation(*i))
}
DateAndTimeItemRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
DateAndTimeItemRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
DateAndTimeItemRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
DateAndTimeItemRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
DateAndTimeItemRef::StateType(i) => out.push(EntityKey::StateType(*i)),
DateAndTimeItemRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
DateAndTimeItemRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
DateAndTimeItemRef::VersionedActionRequest(i) => {
out.push(EntityKey::VersionedActionRequest(*i))
}
DateAndTimeItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_date_and_time(&self, r: &DateAndTimeRef) -> u64 {
match r {
DateAndTimeRef::DateAndTime(i) => self.date_and_time_ids[i.0].expect("dep id assigned"),
DateAndTimeRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_date_and_time(r: &DateAndTimeRef, out: &mut Vec<EntityKey>) {
match r {
DateAndTimeRef::DateAndTime(i) => out.push(EntityKey::DateAndTime(*i)),
DateAndTimeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_date(&self, r: &DateRef) -> u64 {
match r {
DateRef::CalendarDate(i) => self.calendar_date_ids[i.0].expect("dep id assigned"),
DateRef::Date(i) => self.date_ids[i.0].expect("dep id assigned"),
DateRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_date(r: &DateRef, out: &mut Vec<EntityKey>) {
match r {
DateRef::CalendarDate(i) => out.push(EntityKey::CalendarDate(*i)),
DateRef::Date(i) => out.push(EntityKey::Date(*i)),
DateRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_date_time_item(&self, r: &DateTimeItemRef) -> u64 {
match r {
DateTimeItemRef::ApprovalPersonOrganization(i) => {
self.approval_person_organization_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::Change(i) => self.change_ids[i.0].expect("dep id assigned"),
DateTimeItemRef::ChangeRequest(i) => {
self.change_request_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
DateTimeItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::StartRequest(i) => {
self.start_request_ids[i.0].expect("dep id assigned")
}
DateTimeItemRef::StartWork(i) => self.start_work_ids[i.0].expect("dep id assigned"),
DateTimeItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_date_time_item(r: &DateTimeItemRef, out: &mut Vec<EntityKey>) {
match r {
DateTimeItemRef::ApprovalPersonOrganization(i) => {
out.push(EntityKey::ApprovalPersonOrganization(*i))
}
DateTimeItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
DateTimeItemRef::Change(i) => out.push(EntityKey::Change(*i)),
DateTimeItemRef::ChangeRequest(i) => out.push(EntityKey::ChangeRequest(*i)),
DateTimeItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
DateTimeItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
DateTimeItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
DateTimeItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
DateTimeItemRef::StartRequest(i) => out.push(EntityKey::StartRequest(*i)),
DateTimeItemRef::StartWork(i) => out.push(EntityKey::StartWork(*i)),
DateTimeItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_date_time_role(&self, r: &DateTimeRoleRef) -> u64 {
match r {
DateTimeRoleRef::DateTimeRole(i) => {
self.date_time_role_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_date_time_role(r: &DateTimeRoleRef, out: &mut Vec<EntityKey>) {
match r {
DateTimeRoleRef::DateTimeRole(i) => out.push(EntityKey::DateTimeRole(*i)),
}
}
fn id_of_ref_date_time_select(&self, r: &DateTimeSelectRef) -> u64 {
match r {
DateTimeSelectRef::CalendarDate(i) => {
self.calendar_date_ids[i.0].expect("dep id assigned")
}
DateTimeSelectRef::Date(i) => self.date_ids[i.0].expect("dep id assigned"),
DateTimeSelectRef::DateAndTime(i) => {
self.date_and_time_ids[i.0].expect("dep id assigned")
}
DateTimeSelectRef::LocalTime(i) => self.local_time_ids[i.0].expect("dep id assigned"),
DateTimeSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_date_time_select(r: &DateTimeSelectRef, out: &mut Vec<EntityKey>) {
match r {
DateTimeSelectRef::CalendarDate(i) => out.push(EntityKey::CalendarDate(*i)),
DateTimeSelectRef::Date(i) => out.push(EntityKey::Date(*i)),
DateTimeSelectRef::DateAndTime(i) => out.push(EntityKey::DateAndTime(*i)),
DateTimeSelectRef::LocalTime(i) => out.push(EntityKey::LocalTime(*i)),
DateTimeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_datum_or_common_datum(&self, r: &DatumOrCommonDatumRef) -> u64 {
match r {
DatumOrCommonDatumRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
DatumOrCommonDatumRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
DatumOrCommonDatumRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
DatumOrCommonDatumRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
DatumOrCommonDatumRef::CommonDatumList(_) => panic!("aggregate via single id_of"),
}
}
fn deps_ref_datum_or_common_datum(r: &DatumOrCommonDatumRef, out: &mut Vec<EntityKey>) {
match r {
DatumOrCommonDatumRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
DatumOrCommonDatumRef::Datum(i) => out.push(EntityKey::Datum(*i)),
DatumOrCommonDatumRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
DatumOrCommonDatumRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
DatumOrCommonDatumRef::CommonDatumList(vs) => {
for e in vs {
Self::deps_ref_datum_reference_element(e, out);
}
}
}
}
fn id_of_ref_datum(&self, r: &DatumRef) -> u64 {
match r {
DatumRef::CommonDatum(i) => self.common_datum_ids[i.0].expect("dep id assigned"),
DatumRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
DatumRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_datum(r: &DatumRef, out: &mut Vec<EntityKey>) {
match r {
DatumRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
DatumRef::Datum(i) => out.push(EntityKey::Datum(*i)),
DatumRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_datum_reference_compartment(&self, r: &DatumReferenceCompartmentRef) -> u64 {
match r {
DatumReferenceCompartmentRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_datum_reference_compartment(
r: &DatumReferenceCompartmentRef,
out: &mut Vec<EntityKey>,
) {
match r {
DatumReferenceCompartmentRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
}
}
fn id_of_ref_datum_reference_element(&self, r: &DatumReferenceElementRef) -> u64 {
match r {
DatumReferenceElementRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_datum_reference_element(r: &DatumReferenceElementRef, out: &mut Vec<EntityKey>) {
match r {
DatumReferenceElementRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
}
}
fn id_of_ref_datum_reference_modifier(&self, r: &DatumReferenceModifierRef) -> u64 {
match r {
DatumReferenceModifierRef::DatumReferenceModifierWithValue(i) => {
self.datum_reference_modifier_with_value_ids[i.0].expect("dep id assigned")
}
DatumReferenceModifierRef::SimpleDatumReferenceModifier(_) => {
panic!("enum via single id_of")
}
}
}
fn deps_ref_datum_reference_modifier(r: &DatumReferenceModifierRef, out: &mut Vec<EntityKey>) {
match r {
DatumReferenceModifierRef::DatumReferenceModifierWithValue(i) => {
out.push(EntityKey::DatumReferenceModifierWithValue(*i))
}
DatumReferenceModifierRef::SimpleDatumReferenceModifier(_) => {}
}
}
fn id_of_ref_datum_system_or_reference(&self, r: &DatumSystemOrReferenceRef) -> u64 {
match r {
DatumSystemOrReferenceRef::DatumReference(i) => {
self.datum_reference_ids[i.0].expect("dep id assigned")
}
DatumSystemOrReferenceRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
DatumSystemOrReferenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_datum_system_or_reference(r: &DatumSystemOrReferenceRef, out: &mut Vec<EntityKey>) {
match r {
DatumSystemOrReferenceRef::DatumReference(i) => out.push(EntityKey::DatumReference(*i)),
DatumSystemOrReferenceRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
DatumSystemOrReferenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_datum_system(&self, r: &DatumSystemRef) -> u64 {
match r {
DatumSystemRef::DatumSystem(i) => self.datum_system_ids[i.0].expect("dep id assigned"),
DatumSystemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_datum_system(r: &DatumSystemRef, out: &mut Vec<EntityKey>) {
match r {
DatumSystemRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
DatumSystemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_defined_glyph_select(&self, r: &DefinedGlyphSelectRef) -> u64 {
match r {
DefinedGlyphSelectRef::ExternallyDefinedCharacterGlyph(i) => {
self.externally_defined_character_glyph_ids[i.0].expect("dep id assigned")
}
DefinedGlyphSelectRef::PreDefinedCharacterGlyph(i) => {
self.pre_defined_character_glyph_ids[i.0].expect("dep id assigned")
}
DefinedGlyphSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_defined_glyph_select(r: &DefinedGlyphSelectRef, out: &mut Vec<EntityKey>) {
match r {
DefinedGlyphSelectRef::ExternallyDefinedCharacterGlyph(i) => {
out.push(EntityKey::ExternallyDefinedCharacterGlyph(*i))
}
DefinedGlyphSelectRef::PreDefinedCharacterGlyph(i) => {
out.push(EntityKey::PreDefinedCharacterGlyph(*i))
}
DefinedGlyphSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_defined_symbol_select(&self, r: &DefinedSymbolSelectRef) -> u64 {
match r {
DefinedSymbolSelectRef::ExternallyDefinedSymbol(i) => {
self.externally_defined_symbol_ids[i.0].expect("dep id assigned")
}
DefinedSymbolSelectRef::PreDefinedPointMarkerSymbol(i) => {
self.pre_defined_point_marker_symbol_ids[i.0].expect("dep id assigned")
}
DefinedSymbolSelectRef::PreDefinedSymbol(i) => {
self.pre_defined_symbol_ids[i.0].expect("dep id assigned")
}
DefinedSymbolSelectRef::PreDefinedTerminatorSymbol(i) => {
self.pre_defined_terminator_symbol_ids[i.0].expect("dep id assigned")
}
DefinedSymbolSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_defined_symbol_select(r: &DefinedSymbolSelectRef, out: &mut Vec<EntityKey>) {
match r {
DefinedSymbolSelectRef::ExternallyDefinedSymbol(i) => {
out.push(EntityKey::ExternallyDefinedSymbol(*i))
}
DefinedSymbolSelectRef::PreDefinedPointMarkerSymbol(i) => {
out.push(EntityKey::PreDefinedPointMarkerSymbol(*i))
}
DefinedSymbolSelectRef::PreDefinedSymbol(i) => {
out.push(EntityKey::PreDefinedSymbol(*i))
}
DefinedSymbolSelectRef::PreDefinedTerminatorSymbol(i) => {
out.push(EntityKey::PreDefinedTerminatorSymbol(*i))
}
DefinedSymbolSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_definitional_representation(&self, r: &DefinitionalRepresentationRef) -> u64 {
match r {
DefinitionalRepresentationRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
DefinitionalRepresentationRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_definitional_representation(
r: &DefinitionalRepresentationRef,
out: &mut Vec<EntityKey>,
) {
match r {
DefinitionalRepresentationRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
DefinitionalRepresentationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_derived_property_select(&self, r: &DerivedPropertySelectRef) -> u64 {
match r {
DerivedPropertySelectRef::ActionProperty(i) => {
self.action_property_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::ResourceProperty(i) => {
self.resource_property_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DerivedPropertySelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_derived_property_select(r: &DerivedPropertySelectRef, out: &mut Vec<EntityKey>) {
match r {
DerivedPropertySelectRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
DerivedPropertySelectRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
DerivedPropertySelectRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
DerivedPropertySelectRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
DerivedPropertySelectRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
DerivedPropertySelectRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
DerivedPropertySelectRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
DerivedPropertySelectRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
DerivedPropertySelectRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
DerivedPropertySelectRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
DerivedPropertySelectRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
DerivedPropertySelectRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
DerivedPropertySelectRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
DerivedPropertySelectRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
DerivedPropertySelectRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
DerivedPropertySelectRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
DerivedPropertySelectRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
DerivedPropertySelectRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
DerivedPropertySelectRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
DerivedPropertySelectRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
DerivedPropertySelectRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
DerivedPropertySelectRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
DerivedPropertySelectRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
DerivedPropertySelectRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
DerivedPropertySelectRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
DerivedPropertySelectRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
DerivedPropertySelectRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
DerivedPropertySelectRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
DerivedPropertySelectRef::ResourceProperty(i) => {
out.push(EntityKey::ResourceProperty(*i))
}
DerivedPropertySelectRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
DerivedPropertySelectRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
DerivedPropertySelectRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
DerivedPropertySelectRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
DerivedPropertySelectRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
DerivedPropertySelectRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
DerivedPropertySelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_derived_unit_element(&self, r: &DerivedUnitElementRef) -> u64 {
match r {
DerivedUnitElementRef::DerivedUnitElement(i) => {
self.derived_unit_element_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_derived_unit_element(r: &DerivedUnitElementRef, out: &mut Vec<EntityKey>) {
match r {
DerivedUnitElementRef::DerivedUnitElement(i) => {
out.push(EntityKey::DerivedUnitElement(*i))
}
}
}
fn id_of_ref_des_apll_point_select(&self, r: &DesApllPointSelectRef) -> u64 {
match r {
DesApllPointSelectRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
DesApllPointSelectRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_des_apll_point_select(r: &DesApllPointSelectRef, out: &mut Vec<EntityKey>) {
match r {
DesApllPointSelectRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
DesApllPointSelectRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
}
}
fn id_of_ref_description_attribute_select(&self, r: &DescriptionAttributeSelectRef) -> u64 {
match r {
DescriptionAttributeSelectRef::ActionRequestSolution(i) => self.action_request_solution_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ApplicationContext(i) => self.application_context_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ApprovalRole(i) => self.approval_role_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ConfigurationDesign(i) => self.configuration_design_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ConfigurationEffectivity(i) => self.configuration_effectivity_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ContextDependentShapeRepresentation(i) => self.context_dependent_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::DateRole(i) => self.date_role_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::DateTimeRole(i) => self.date_time_role_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::Effectivity(i) => self.effectivity_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ExternalSource(i) => self.external_source_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::OrganizationRole(i) => self.organization_role_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::OrganizationalProject(i) => self.organizational_project_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PersonAndOrganization(i) => self.person_and_organization_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PersonAndOrganizationRole(i) => self.person_and_organization_role_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PresentationArea(i) => self.presentation_area_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PresentationRepresentation(i) => self.presentation_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PresentationView(i) => self.presentation_view_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ProductDefinitionEffectivity(i) => self.product_definition_effectivity_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::PropertyDefinitionRepresentation(i) => self.property_definition_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::Representation(i) => self.representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ShapeDefinitionRepresentation(i) => self.shape_definition_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::SymbolRepresentation(i) => self.symbol_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
DescriptionAttributeSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_description_attribute_select(
r: &DescriptionAttributeSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
DescriptionAttributeSelectRef::ActionRequestSolution(i) => out.push(EntityKey::ActionRequestSolution(*i)),
DescriptionAttributeSelectRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
DescriptionAttributeSelectRef::ApplicationContext(i) => out.push(EntityKey::ApplicationContext(*i)),
DescriptionAttributeSelectRef::ApprovalRole(i) => out.push(EntityKey::ApprovalRole(*i)),
DescriptionAttributeSelectRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
DescriptionAttributeSelectRef::ConfigurationDesign(i) => out.push(EntityKey::ConfigurationDesign(*i)),
DescriptionAttributeSelectRef::ConfigurationEffectivity(i) => out.push(EntityKey::ConfigurationEffectivity(*i)),
DescriptionAttributeSelectRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
DescriptionAttributeSelectRef::ContextDependentShapeRepresentation(i) => out.push(EntityKey::ContextDependentShapeRepresentation(*i)),
DescriptionAttributeSelectRef::DateRole(i) => out.push(EntityKey::DateRole(*i)),
DescriptionAttributeSelectRef::DateTimeRole(i) => out.push(EntityKey::DateTimeRole(*i)),
DescriptionAttributeSelectRef::DefinitionalRepresentation(i) => out.push(EntityKey::DefinitionalRepresentation(*i)),
DescriptionAttributeSelectRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
DescriptionAttributeSelectRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
DescriptionAttributeSelectRef::ExternalSource(i) => out.push(EntityKey::ExternalSource(*i)),
DescriptionAttributeSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
DescriptionAttributeSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
DescriptionAttributeSelectRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
DescriptionAttributeSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
DescriptionAttributeSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
DescriptionAttributeSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
DescriptionAttributeSelectRef::OrganizationRole(i) => out.push(EntityKey::OrganizationRole(*i)),
DescriptionAttributeSelectRef::OrganizationalProject(i) => out.push(EntityKey::OrganizationalProject(*i)),
DescriptionAttributeSelectRef::PersonAndOrganization(i) => out.push(EntityKey::PersonAndOrganization(*i)),
DescriptionAttributeSelectRef::PersonAndOrganizationRole(i) => out.push(EntityKey::PersonAndOrganizationRole(*i)),
DescriptionAttributeSelectRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
DescriptionAttributeSelectRef::PresentationRepresentation(i) => out.push(EntityKey::PresentationRepresentation(*i)),
DescriptionAttributeSelectRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
DescriptionAttributeSelectRef::ProductDefinitionEffectivity(i) => out.push(EntityKey::ProductDefinitionEffectivity(*i)),
DescriptionAttributeSelectRef::PropertyDefinitionRepresentation(i) => out.push(EntityKey::PropertyDefinitionRepresentation(*i)),
DescriptionAttributeSelectRef::Representation(i) => out.push(EntityKey::Representation(*i)),
DescriptionAttributeSelectRef::ShapeDefinitionRepresentation(i) => out.push(EntityKey::ShapeDefinitionRepresentation(*i)),
DescriptionAttributeSelectRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
DescriptionAttributeSelectRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
DescriptionAttributeSelectRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
DescriptionAttributeSelectRef::SymbolRepresentation(i) => out.push(EntityKey::SymbolRepresentation(*i)),
DescriptionAttributeSelectRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
DescriptionAttributeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_dimensional_characteristic(&self, r: &DimensionalCharacteristicRef) -> u64 {
match r {
DimensionalCharacteristicRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
DimensionalCharacteristicRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_dimensional_characteristic(
r: &DimensionalCharacteristicRef,
out: &mut Vec<EntityKey>,
) {
match r {
DimensionalCharacteristicRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
DimensionalCharacteristicRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
DimensionalCharacteristicRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
DimensionalCharacteristicRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
DimensionalCharacteristicRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
DimensionalCharacteristicRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
DimensionalCharacteristicRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
DimensionalCharacteristicRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
DimensionalCharacteristicRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_dimensional_exponents(&self, r: &DimensionalExponentsRef) -> u64 {
match r {
DimensionalExponentsRef::DimensionalExponents(i) => {
self.dimensional_exponents_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_dimensional_exponents(r: &DimensionalExponentsRef, out: &mut Vec<EntityKey>) {
match r {
DimensionalExponentsRef::DimensionalExponents(i) => {
out.push(EntityKey::DimensionalExponents(*i))
}
}
}
fn id_of_ref_direction(&self, r: &DirectionRef) -> u64 {
match r {
DirectionRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
DirectionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_direction(r: &DirectionRef, out: &mut Vec<EntityKey>) {
match r {
DirectionRef::Direction(i) => out.push(EntityKey::Direction(*i)),
DirectionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_document(&self, r: &DocumentRef) -> u64 {
match r {
DocumentRef::Document(i) => self.document_ids[i.0].expect("dep id assigned"),
DocumentRef::DocumentFile(i) => self.document_file_ids[i.0].expect("dep id assigned"),
DocumentRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_document(r: &DocumentRef, out: &mut Vec<EntityKey>) {
match r {
DocumentRef::Document(i) => out.push(EntityKey::Document(*i)),
DocumentRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
DocumentRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_document_reference_item(&self, r: &DocumentReferenceItemRef) -> u64 {
match r {
DocumentReferenceItemRef::ActionDirective(i) => {
self.action_directive_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ActionMethodRelationship(i) => {
self.action_method_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ActionProperty(i) => {
self.action_property_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ActionRelationship(i) => {
self.action_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AppliedDocumentReference(i) => {
self.applied_document_reference_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AppliedExternalIdentificationAssignment(i) => {
self.applied_external_identification_assignment_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Approval(i) => {
self.approval_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ApprovalPersonOrganization(i) => {
self.approval_person_organization_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CharacterizedItemWithinRepresentation(i) => {
self.characterized_item_within_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CharacterizedObject(i) => {
self.characterized_object_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ConstructiveGeometryRepresentationRelationship(i) => self
.constructive_geometry_representation_relationship_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Contract(i) => {
self.contract_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DateAndTimeAssignment(i) => {
self.date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => {
self.definitional_representation_relationship_with_same_context_ids[i.0]
.expect("dep id assigned")
}
DocumentReferenceItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DesignContext(i) => {
self.design_context_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Direction(i) => {
self.direction_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DocumentFile(i) => {
self.document_file_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::EdgeLoop(i) => {
self.edge_loop_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Effectivity(i) => {
self.effectivity_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::ExternallyDefinedCharacterGlyph(i) => {
self.externally_defined_character_glyph_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedCurveFont(i) => {
self.externally_defined_curve_font_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedItem(i) => {
self.externally_defined_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedStyle(i) => {
self.externally_defined_style_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedSymbol(i) => {
self.externally_defined_symbol_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedTextFont(i) => {
self.externally_defined_text_font_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedTile(i) => {
self.externally_defined_tile_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::FaceBound(i) => {
self.face_bound_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::MappedItem(i) => {
self.mapped_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::MechanicalDesignAndDraughtingRelationship(i) => self
.mechanical_design_and_draughting_relationship_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
self.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned")
}
DocumentReferenceItemRef::MechanicalDesignPresentationRepresentationWithDraughting(
i,
) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::ModelGeometricView(i) => {
self.model_geometric_view_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Organization(i) => {
self.organization_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrganizationRelationship(i) => {
self.organization_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrganizationalProjectRelationship(i) => {
self.organizational_project_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::Person(i) => self.person_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::PolyLoop(i) => {
self.poly_loop_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Polyline(i) => {
self.polyline_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::ProductCategory(i) => {
self.product_category_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ProductRelatedProductCategory(i) => {
self.product_related_product_category_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RepresentationRelationship(i) => {
self.representation_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::RepresentationRelationshipWithTransformation(i) => self
.representation_relationship_with_transformation_ids[i.0]
.expect("dep id assigned"),
DocumentReferenceItemRef::ResourceRequirementType(i) => {
self.resource_requirement_type_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::StateObserved(i) => {
self.state_observed_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::StateType(i) => {
self.state_type_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::StyledItem(i) => {
self.styled_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
DocumentReferenceItemRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::WireShell(i) => {
self.wire_shell_ids[i.0].expect("dep id assigned")
}
DocumentReferenceItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_document_reference_item(r: &DocumentReferenceItemRef, out: &mut Vec<EntityKey>) {
match r {
DocumentReferenceItemRef::ActionDirective(i) => {
out.push(EntityKey::ActionDirective(*i))
}
DocumentReferenceItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
DocumentReferenceItemRef::ActionMethodRelationship(i) => {
out.push(EntityKey::ActionMethodRelationship(*i))
}
DocumentReferenceItemRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
DocumentReferenceItemRef::ActionRelationship(i) => {
out.push(EntityKey::ActionRelationship(*i))
}
DocumentReferenceItemRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
DocumentReferenceItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
DocumentReferenceItemRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
DocumentReferenceItemRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
DocumentReferenceItemRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
DocumentReferenceItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
DocumentReferenceItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
DocumentReferenceItemRef::AnnotationPlane(i) => {
out.push(EntityKey::AnnotationPlane(*i))
}
DocumentReferenceItemRef::AnnotationSymbol(i) => {
out.push(EntityKey::AnnotationSymbol(*i))
}
DocumentReferenceItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
DocumentReferenceItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
DocumentReferenceItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
DocumentReferenceItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
DocumentReferenceItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
DocumentReferenceItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
DocumentReferenceItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
DocumentReferenceItemRef::AppliedDateAndTimeAssignment(i) => {
out.push(EntityKey::AppliedDateAndTimeAssignment(*i))
}
DocumentReferenceItemRef::AppliedDocumentReference(i) => {
out.push(EntityKey::AppliedDocumentReference(*i))
}
DocumentReferenceItemRef::AppliedExternalIdentificationAssignment(i) => {
out.push(EntityKey::AppliedExternalIdentificationAssignment(*i))
}
DocumentReferenceItemRef::Approval(i) => out.push(EntityKey::Approval(*i)),
DocumentReferenceItemRef::ApprovalPersonOrganization(i) => {
out.push(EntityKey::ApprovalPersonOrganization(*i))
}
DocumentReferenceItemRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
DocumentReferenceItemRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
DocumentReferenceItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
DocumentReferenceItemRef::Axis2Placement2d(i) => {
out.push(EntityKey::Axis2Placement2d(*i))
}
DocumentReferenceItemRef::Axis2Placement3d(i) => {
out.push(EntityKey::Axis2Placement3d(*i))
}
DocumentReferenceItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
DocumentReferenceItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
DocumentReferenceItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
DocumentReferenceItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
DocumentReferenceItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
DocumentReferenceItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
DocumentReferenceItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
DocumentReferenceItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
DocumentReferenceItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
DocumentReferenceItemRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
DocumentReferenceItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
DocumentReferenceItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
DocumentReferenceItemRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
DocumentReferenceItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
DocumentReferenceItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
DocumentReferenceItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
DocumentReferenceItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
DocumentReferenceItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
DocumentReferenceItemRef::CcDesignDateAndTimeAssignment(i) => {
out.push(EntityKey::CcDesignDateAndTimeAssignment(*i))
}
DocumentReferenceItemRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
DocumentReferenceItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
DocumentReferenceItemRef::CharacterizedItemWithinRepresentation(i) => {
out.push(EntityKey::CharacterizedItemWithinRepresentation(*i))
}
DocumentReferenceItemRef::CharacterizedObject(i) => {
out.push(EntityKey::CharacterizedObject(*i))
}
DocumentReferenceItemRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
DocumentReferenceItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
DocumentReferenceItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
DocumentReferenceItemRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
DocumentReferenceItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
DocumentReferenceItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
DocumentReferenceItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
DocumentReferenceItemRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
DocumentReferenceItemRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
DocumentReferenceItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
DocumentReferenceItemRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
DocumentReferenceItemRef::ConfigurationDesign(i) => {
out.push(EntityKey::ConfigurationDesign(*i))
}
DocumentReferenceItemRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
DocumentReferenceItemRef::ConfigurationItem(i) => {
out.push(EntityKey::ConfigurationItem(*i))
}
DocumentReferenceItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
DocumentReferenceItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
DocumentReferenceItemRef::ConnectedFaceSet(i) => {
out.push(EntityKey::ConnectedFaceSet(*i))
}
DocumentReferenceItemRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
DocumentReferenceItemRef::ConstructiveGeometryRepresentationRelationship(i) => out
.push(EntityKey::ConstructiveGeometryRepresentationRelationship(
*i,
)),
DocumentReferenceItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
DocumentReferenceItemRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
DocumentReferenceItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
DocumentReferenceItemRef::CoordinatesList(i) => {
out.push(EntityKey::CoordinatesList(*i))
}
DocumentReferenceItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
DocumentReferenceItemRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
DocumentReferenceItemRef::DateAndTimeAssignment(i) => {
out.push(EntityKey::DateAndTimeAssignment(*i))
}
DocumentReferenceItemRef::Datum(i) => out.push(EntityKey::Datum(*i)),
DocumentReferenceItemRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
DocumentReferenceItemRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
DocumentReferenceItemRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
DocumentReferenceItemRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
DocumentReferenceItemRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
DocumentReferenceItemRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
DocumentReferenceItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
DocumentReferenceItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
DocumentReferenceItemRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
DocumentReferenceItemRef::DefinitionalRepresentationRelationship(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationship(*i))
}
DocumentReferenceItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationshipWithSameContext(*i))
}
DocumentReferenceItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
DocumentReferenceItemRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
DocumentReferenceItemRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
DocumentReferenceItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
DocumentReferenceItemRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
DocumentReferenceItemRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
DocumentReferenceItemRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
DocumentReferenceItemRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
DocumentReferenceItemRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
DocumentReferenceItemRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
DocumentReferenceItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
DocumentReferenceItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
DocumentReferenceItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
DocumentReferenceItemRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
DocumentReferenceItemRef::DraughtingModel(i) => {
out.push(EntityKey::DraughtingModel(*i))
}
DocumentReferenceItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
DocumentReferenceItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
DocumentReferenceItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
DocumentReferenceItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
DocumentReferenceItemRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
DocumentReferenceItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
DocumentReferenceItemRef::ExternallyDefinedCharacterGlyph(i) => {
out.push(EntityKey::ExternallyDefinedCharacterGlyph(*i))
}
DocumentReferenceItemRef::ExternallyDefinedCurveFont(i) => {
out.push(EntityKey::ExternallyDefinedCurveFont(*i))
}
DocumentReferenceItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
DocumentReferenceItemRef::ExternallyDefinedItem(i) => {
out.push(EntityKey::ExternallyDefinedItem(*i))
}
DocumentReferenceItemRef::ExternallyDefinedStyle(i) => {
out.push(EntityKey::ExternallyDefinedStyle(*i))
}
DocumentReferenceItemRef::ExternallyDefinedSymbol(i) => {
out.push(EntityKey::ExternallyDefinedSymbol(*i))
}
DocumentReferenceItemRef::ExternallyDefinedTextFont(i) => {
out.push(EntityKey::ExternallyDefinedTextFont(*i))
}
DocumentReferenceItemRef::ExternallyDefinedTile(i) => {
out.push(EntityKey::ExternallyDefinedTile(*i))
}
DocumentReferenceItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
DocumentReferenceItemRef::Face(i) => out.push(EntityKey::Face(*i)),
DocumentReferenceItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
DocumentReferenceItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
DocumentReferenceItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
DocumentReferenceItemRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
DocumentReferenceItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
DocumentReferenceItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
DocumentReferenceItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
DocumentReferenceItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
DocumentReferenceItemRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
DocumentReferenceItemRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
DocumentReferenceItemRef::GeneralProperty(i) => {
out.push(EntityKey::GeneralProperty(*i))
}
DocumentReferenceItemRef::GeometricCurveSet(i) => {
out.push(EntityKey::GeometricCurveSet(*i))
}
DocumentReferenceItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
DocumentReferenceItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
DocumentReferenceItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out
.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(
*i,
)),
DocumentReferenceItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out
.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(
*i,
)),
DocumentReferenceItemRef::Group(i) => out.push(EntityKey::Group(*i)),
DocumentReferenceItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
DocumentReferenceItemRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
DocumentReferenceItemRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
DocumentReferenceItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
DocumentReferenceItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
DocumentReferenceItemRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
DocumentReferenceItemRef::Line(i) => out.push(EntityKey::Line(*i)),
DocumentReferenceItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
DocumentReferenceItemRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
DocumentReferenceItemRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
DocumentReferenceItemRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
DocumentReferenceItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
DocumentReferenceItemRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
DocumentReferenceItemRef::MechanicalDesignAndDraughtingRelationship(i) => {
out.push(EntityKey::MechanicalDesignAndDraughtingRelationship(*i))
}
DocumentReferenceItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
DocumentReferenceItemRef::MechanicalDesignPresentationRepresentationWithDraughting(
i,
) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
DocumentReferenceItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out
.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(
*i,
)),
DocumentReferenceItemRef::ModelGeometricView(i) => {
out.push(EntityKey::ModelGeometricView(*i))
}
DocumentReferenceItemRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
DocumentReferenceItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
DocumentReferenceItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
DocumentReferenceItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
DocumentReferenceItemRef::Organization(i) => out.push(EntityKey::Organization(*i)),
DocumentReferenceItemRef::OrganizationRelationship(i) => {
out.push(EntityKey::OrganizationRelationship(*i))
}
DocumentReferenceItemRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
DocumentReferenceItemRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
DocumentReferenceItemRef::OrganizationalProjectRelationship(i) => {
out.push(EntityKey::OrganizationalProjectRelationship(*i))
}
DocumentReferenceItemRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
DocumentReferenceItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
DocumentReferenceItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
DocumentReferenceItemRef::Path(i) => out.push(EntityKey::Path(*i)),
DocumentReferenceItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
DocumentReferenceItemRef::Person(i) => out.push(EntityKey::Person(*i)),
DocumentReferenceItemRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
DocumentReferenceItemRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
DocumentReferenceItemRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
DocumentReferenceItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
DocumentReferenceItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
DocumentReferenceItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
DocumentReferenceItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
DocumentReferenceItemRef::Point(i) => out.push(EntityKey::Point(*i)),
DocumentReferenceItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
DocumentReferenceItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
DocumentReferenceItemRef::PresentationArea(i) => {
out.push(EntityKey::PresentationArea(*i))
}
DocumentReferenceItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
DocumentReferenceItemRef::PresentationView(i) => {
out.push(EntityKey::PresentationView(*i))
}
DocumentReferenceItemRef::Product(i) => out.push(EntityKey::Product(*i)),
DocumentReferenceItemRef::ProductCategory(i) => {
out.push(EntityKey::ProductCategory(*i))
}
DocumentReferenceItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
DocumentReferenceItemRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
DocumentReferenceItemRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
DocumentReferenceItemRef::ProductDefinitionContext(i) => {
out.push(EntityKey::ProductDefinitionContext(*i))
}
DocumentReferenceItemRef::ProductDefinitionEffectivity(i) => {
out.push(EntityKey::ProductDefinitionEffectivity(*i))
}
DocumentReferenceItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
DocumentReferenceItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
DocumentReferenceItemRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
DocumentReferenceItemRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
DocumentReferenceItemRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
DocumentReferenceItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
DocumentReferenceItemRef::ProductRelatedProductCategory(i) => {
out.push(EntityKey::ProductRelatedProductCategory(*i))
}
DocumentReferenceItemRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
DocumentReferenceItemRef::PropertyDefinitionRepresentation(i) => {
out.push(EntityKey::PropertyDefinitionRepresentation(*i))
}
DocumentReferenceItemRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
DocumentReferenceItemRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
DocumentReferenceItemRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
DocumentReferenceItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
DocumentReferenceItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
DocumentReferenceItemRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
DocumentReferenceItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
DocumentReferenceItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
DocumentReferenceItemRef::RepresentationItem(i) => {
out.push(EntityKey::RepresentationItem(*i))
}
DocumentReferenceItemRef::RepresentationRelationship(i) => {
out.push(EntityKey::RepresentationRelationship(*i))
}
DocumentReferenceItemRef::RepresentationRelationshipWithTransformation(i) => {
out.push(EntityKey::RepresentationRelationshipWithTransformation(*i))
}
DocumentReferenceItemRef::ResourceRequirementType(i) => {
out.push(EntityKey::ResourceRequirementType(*i))
}
DocumentReferenceItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
DocumentReferenceItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
DocumentReferenceItemRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
DocumentReferenceItemRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
DocumentReferenceItemRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
DocumentReferenceItemRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
DocumentReferenceItemRef::ShapeDefinitionRepresentation(i) => {
out.push(EntityKey::ShapeDefinitionRepresentation(*i))
}
DocumentReferenceItemRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
DocumentReferenceItemRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
DocumentReferenceItemRef::ShapeRepresentationRelationship(i) => {
out.push(EntityKey::ShapeRepresentationRelationship(*i))
}
DocumentReferenceItemRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
DocumentReferenceItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
DocumentReferenceItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
DocumentReferenceItemRef::SphericalSurface(i) => {
out.push(EntityKey::SphericalSurface(*i))
}
DocumentReferenceItemRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
DocumentReferenceItemRef::StateType(i) => out.push(EntityKey::StateType(*i)),
DocumentReferenceItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
DocumentReferenceItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
DocumentReferenceItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
DocumentReferenceItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
DocumentReferenceItemRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
DocumentReferenceItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
DocumentReferenceItemRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
DocumentReferenceItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
DocumentReferenceItemRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
DocumentReferenceItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
DocumentReferenceItemRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
DocumentReferenceItemRef::TessellatedFace(i) => {
out.push(EntityKey::TessellatedFace(*i))
}
DocumentReferenceItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
DocumentReferenceItemRef::TessellatedItem(i) => {
out.push(EntityKey::TessellatedItem(*i))
}
DocumentReferenceItemRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
DocumentReferenceItemRef::TessellatedShell(i) => {
out.push(EntityKey::TessellatedShell(*i))
}
DocumentReferenceItemRef::TessellatedSolid(i) => {
out.push(EntityKey::TessellatedSolid(*i))
}
DocumentReferenceItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
DocumentReferenceItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
DocumentReferenceItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
DocumentReferenceItemRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
DocumentReferenceItemRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
DocumentReferenceItemRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
DocumentReferenceItemRef::ToroidalSurface(i) => {
out.push(EntityKey::ToroidalSurface(*i))
}
DocumentReferenceItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
DocumentReferenceItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
DocumentReferenceItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
DocumentReferenceItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
DocumentReferenceItemRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
DocumentReferenceItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
DocumentReferenceItemRef::VersionedActionRequest(i) => {
out.push(EntityKey::VersionedActionRequest(*i))
}
DocumentReferenceItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
DocumentReferenceItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
DocumentReferenceItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
DocumentReferenceItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
DocumentReferenceItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
DocumentReferenceItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_document_type(&self, r: &DocumentTypeRef) -> u64 {
match r {
DocumentTypeRef::DocumentType(i) => {
self.document_type_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_document_type(r: &DocumentTypeRef, out: &mut Vec<EntityKey>) {
match r {
DocumentTypeRef::DocumentType(i) => out.push(EntityKey::DocumentType(*i)),
}
}
fn id_of_ref_draughting_callout_element(&self, r: &DraughtingCalloutElementRef) -> u64 {
match r {
DraughtingCalloutElementRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
DraughtingCalloutElementRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutElementRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_draughting_callout_element(
r: &DraughtingCalloutElementRef,
out: &mut Vec<EntityKey>,
) {
match r {
DraughtingCalloutElementRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
DraughtingCalloutElementRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
DraughtingCalloutElementRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
DraughtingCalloutElementRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
DraughtingCalloutElementRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
DraughtingCalloutElementRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
DraughtingCalloutElementRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
DraughtingCalloutElementRef::LeaderTerminator(i) => {
out.push(EntityKey::LeaderTerminator(*i))
}
DraughtingCalloutElementRef::TerminatorSymbol(i) => {
out.push(EntityKey::TerminatorSymbol(*i))
}
DraughtingCalloutElementRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
DraughtingCalloutElementRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_draughting_callout(&self, r: &DraughtingCalloutRef) -> u64 {
match r {
DraughtingCalloutRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
DraughtingCalloutRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_draughting_callout(r: &DraughtingCalloutRef, out: &mut Vec<EntityKey>) {
match r {
DraughtingCalloutRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
DraughtingCalloutRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
DraughtingCalloutRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_draughting_model_item_association_select(
&self,
r: &DraughtingModelItemAssociationSelectRef,
) -> u64 {
match r {
DraughtingModelItemAssociationSelectRef::AnnotationCurveOccurrence(i) => self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationFillAreaOccurrence(i) => self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationOccurrence(i) => self.annotation_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationPlaceholderOccurrence(i) => self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self.annotation_placeholder_occurrence_with_leader_line_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationPlane(i) => self.annotation_plane_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationSymbolOccurrence(i) => self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::AnnotationTextOccurrence(i) => self.annotation_text_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::DraughtingAnnotationOccurrence(i) => self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::DraughtingCallout(i) => self.draughting_callout_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::LeaderDirectedCallout(i) => self.leader_directed_callout_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::LeaderTerminator(i) => self.leader_terminator_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::TerminatorSymbol(i) => self.terminator_symbol_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::TessellatedAnnotationOccurrence(i) => self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned"),
DraughtingModelItemAssociationSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_draughting_model_item_association_select(
r: &DraughtingModelItemAssociationSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
DraughtingModelItemAssociationSelectRef::AnnotationCurveOccurrence(i) => out.push(EntityKey::AnnotationCurveOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationFillAreaOccurrence(i) => out.push(EntityKey::AnnotationFillAreaOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationOccurrence(i) => out.push(EntityKey::AnnotationOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationPlaceholderOccurrence(i) => out.push(EntityKey::AnnotationPlaceholderOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationSymbolOccurrence(i) => out.push(EntityKey::AnnotationSymbolOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::AnnotationTextOccurrence(i) => out.push(EntityKey::AnnotationTextOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::DraughtingAnnotationOccurrence(i) => out.push(EntityKey::DraughtingAnnotationOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
DraughtingModelItemAssociationSelectRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
DraughtingModelItemAssociationSelectRef::LeaderDirectedCallout(i) => out.push(EntityKey::LeaderDirectedCallout(*i)),
DraughtingModelItemAssociationSelectRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
DraughtingModelItemAssociationSelectRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
DraughtingModelItemAssociationSelectRef::TessellatedAnnotationOccurrence(i) => out.push(EntityKey::TessellatedAnnotationOccurrence(*i)),
DraughtingModelItemAssociationSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_draughting_model_item_definition(
&self,
r: &DraughtingModelItemDefinitionRef,
) -> u64 {
match r {
DraughtingModelItemDefinitionRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::Datum(i) => {
self.datum_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
DraughtingModelItemDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_draughting_model_item_definition(
r: &DraughtingModelItemDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
DraughtingModelItemDefinitionRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
DraughtingModelItemDefinitionRef::AngularSize(i) => {
out.push(EntityKey::AngularSize(*i))
}
DraughtingModelItemDefinitionRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
DraughtingModelItemDefinitionRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
DraughtingModelItemDefinitionRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
DraughtingModelItemDefinitionRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
DraughtingModelItemDefinitionRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
DraughtingModelItemDefinitionRef::CommonDatum(i) => {
out.push(EntityKey::CommonDatum(*i))
}
DraughtingModelItemDefinitionRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
DraughtingModelItemDefinitionRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
DraughtingModelItemDefinitionRef::Datum(i) => out.push(EntityKey::Datum(*i)),
DraughtingModelItemDefinitionRef::DatumFeature(i) => {
out.push(EntityKey::DatumFeature(*i))
}
DraughtingModelItemDefinitionRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
DraughtingModelItemDefinitionRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
DraughtingModelItemDefinitionRef::DatumSystem(i) => {
out.push(EntityKey::DatumSystem(*i))
}
DraughtingModelItemDefinitionRef::DatumTarget(i) => {
out.push(EntityKey::DatumTarget(*i))
}
DraughtingModelItemDefinitionRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
DraughtingModelItemDefinitionRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
DraughtingModelItemDefinitionRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
DraughtingModelItemDefinitionRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
DraughtingModelItemDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
DraughtingModelItemDefinitionRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
DraughtingModelItemDefinitionRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
DraughtingModelItemDefinitionRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
DraughtingModelItemDefinitionRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
DraughtingModelItemDefinitionRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
DraughtingModelItemDefinitionRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
DraughtingModelItemDefinitionRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
DraughtingModelItemDefinitionRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
DraughtingModelItemDefinitionRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
DraughtingModelItemDefinitionRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
DraughtingModelItemDefinitionRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
DraughtingModelItemDefinitionRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
DraughtingModelItemDefinitionRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
DraughtingModelItemDefinitionRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
DraughtingModelItemDefinitionRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
DraughtingModelItemDefinitionRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
DraughtingModelItemDefinitionRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
DraughtingModelItemDefinitionRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
DraughtingModelItemDefinitionRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
DraughtingModelItemDefinitionRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
DraughtingModelItemDefinitionRef::ShapeAspect(i) => {
out.push(EntityKey::ShapeAspect(*i))
}
DraughtingModelItemDefinitionRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
DraughtingModelItemDefinitionRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
DraughtingModelItemDefinitionRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
DraughtingModelItemDefinitionRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
DraughtingModelItemDefinitionRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
DraughtingModelItemDefinitionRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
DraughtingModelItemDefinitionRef::ToleranceZone(i) => {
out.push(EntityKey::ToleranceZone(*i))
}
DraughtingModelItemDefinitionRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
DraughtingModelItemDefinitionRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
DraughtingModelItemDefinitionRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
DraughtingModelItemDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_edge(&self, r: &EdgeRef) -> u64 {
match r {
EdgeRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
EdgeRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
EdgeRef::OrientedEdge(i) => self.oriented_edge_ids[i.0].expect("dep id assigned"),
EdgeRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_edge(r: &EdgeRef, out: &mut Vec<EntityKey>) {
match r {
EdgeRef::Edge(i) => out.push(EntityKey::Edge(*i)),
EdgeRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
EdgeRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
EdgeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_external_identification_item(&self, r: &ExternalIdentificationItemRef) -> u64 {
match r {
ExternalIdentificationItemRef::ActionDirective(i) => self.action_directive_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ActionMethod(i) => self.action_method_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ActionMethodRelationship(i) => self.action_method_relationship_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ActionRelationship(i) => self.action_relationship_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Address(i) => self.address_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AdvancedFace(i) => self.advanced_face_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationCurveOccurrence(i) => self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationFillAreaOccurrence(i) => self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationOccurrence(i) => self.annotation_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationPlaceholderLeaderLine(i) => self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationPlaceholderOccurrence(i) => self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self.annotation_placeholder_occurrence_with_leader_line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationPlane(i) => self.annotation_plane_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationSymbol(i) => self.annotation_symbol_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationSymbolOccurrence(i) => self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationText(i) => self.annotation_text_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationTextCharacter(i) => self.annotation_text_character_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationTextOccurrence(i) => self.annotation_text_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationToAnnotationLeaderLine(i) => self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AnnotationToModelLeaderLine(i) => self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ApllPointWithSurface(i) => self.apll_point_with_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AppliedDateAndTimeAssignment(i) => self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AppliedExternalIdentificationAssignment(i) => self.applied_external_identification_assignment_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Approval(i) => self.approval_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ApprovalPersonOrganization(i) => self.approval_person_organization_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ApprovalStatus(i) => self.approval_status_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AreaUnit(i) => self.area_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AssemblyComponentUsage(i) => self.assembly_component_usage_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::AuxiliaryLeaderLine(i) => self.auxiliary_leader_line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Axis1Placement(i) => self.axis1_placement_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Axis2Placement2d(i) => self.axis2_placement2d_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Axis2Placement3d(i) => self.axis2_placement3d_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BSplineCurve(i) => self.b_spline_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BSplineCurveWithKnots(i) => self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BSplineSurface(i) => self.b_spline_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BSplineSurfaceWithKnots(i) => self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BezierCurve(i) => self.bezier_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BezierSurface(i) => self.bezier_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BoundedCurve(i) => self.bounded_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BoundedPcurve(i) => self.bounded_pcurve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BoundedSurface(i) => self.bounded_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BoundedSurfaceCurve(i) => self.bounded_surface_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::BrepWithVoids(i) => self.brep_with_voids_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraImage(i) => self.camera_image_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraImage3dWithScale(i) => self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraModel(i) => self.camera_model_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraModelD3(i) => self.camera_model_d3_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraModelD3MultiClipping(i) => self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CameraModelD3WithHlhsr(i) => self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CartesianPoint(i) => self.cartesian_point_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CcDesignDateAndTimeAssignment(i) => self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Certification(i) => self.certification_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ComplexTriangulatedFace(i) => self.complex_triangulated_face_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ComplexTriangulatedSurfaceSet(i) => self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CompositeCurve(i) => self.composite_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CompositeText(i) => self.composite_text_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CompoundRepresentationItem(i) => self.compound_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ConfigurationEffectivity(i) => self.configuration_effectivity_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ConicalSurface(i) => self.conical_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ConnectedFaceSet(i) => self.connected_face_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ContextDependentOverRidingStyledItem(i) => self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ContextDependentUnit(i) => self.context_dependent_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ConversionBasedUnit(i) => self.conversion_based_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CoordinatesList(i) => self.coordinates_list_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::CylindricalSurface(i) => self.cylindrical_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DateAndTimeAssignment(i) => self.date_and_time_assignment_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DefinedCharacterGlyph(i) => self.defined_character_glyph_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DefinedSymbol(i) => self.defined_symbol_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DegenerateToroidalSurface(i) => self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DerivedUnit(i) => self.derived_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DescriptiveRepresentationItem(i) => self.descriptive_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DesignContext(i) => self.design_context_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DocumentFile(i) => self.document_file_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DraughtingAnnotationOccurrence(i) => self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DraughtingCallout(i) => self.draughting_callout_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Effectivity(i) => self.effectivity_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ElementarySurface(i) => self.elementary_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ExternalSource(i) => self.external_source_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ExternallyDefinedHatchStyle(i) => self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ExternallyDefinedTileStyle(i) => self.externally_defined_tile_style_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FaceOuterBound(i) => self.face_outer_bound_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FillAreaStyleHatching(i) => self.fill_area_style_hatching_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FillAreaStyleTileColouredRegion(i) => self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FillAreaStyleTileCurveWithStyle(i) => self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FillAreaStyleTileSymbolWithStyle(i) => self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::FillAreaStyleTiles(i) => self.fill_area_style_tiles_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeneralProperty(i) => self.general_property_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GenericProductDefinitionReference(i) => self.generic_product_definition_reference_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeometricCurveSet(i) => self.geometric_curve_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeometricRepresentationItem(i) => self.geometric_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeometricSet(i) => self.geometric_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::IntegerRepresentationItem(i) => self.integer_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::IntersectionCurve(i) => self.intersection_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::LeaderDirectedCallout(i) => self.leader_directed_callout_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::LeaderTerminator(i) => self.leader_terminator_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::LengthUnit(i) => self.length_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ManifoldSolidBrep(i) => self.manifold_solid_brep_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MappedItem(i) => self.mapped_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MassUnit(i) => self.mass_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MeasureRepresentationItem(i) => self.measure_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::NamedUnit(i) => self.named_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::NextAssemblyUsageOccurrence(i) => self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OffsetSurface(i) => self.offset_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OneDirectionRepeatFactor(i) => self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Organization(i) => self.organization_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OrganizationalAddress(i) => self.organizational_address_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OrganizationalProject(i) => self.organizational_project_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OrientedClosedShell(i) => self.oriented_closed_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OrientedEdge(i) => self.oriented_edge_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::OverRidingStyledItem(i) => self.over_riding_styled_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Person(i) => self.person_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PersonAndOrganization(i) => self.person_and_organization_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PersonAndOrganizationAddress(i) => self.person_and_organization_address_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PersonalAddress(i) => self.personal_address_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PlanarExtent(i) => self.planar_extent_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PlaneAngleUnit(i) => self.plane_angle_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PrecisionQualifier(i) => self.precision_qualifier_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PresentationArea(i) => self.presentation_area_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PresentationRepresentation(i) => self.presentation_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PresentationView(i) => self.presentation_view_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductConcept(i) => self.product_concept_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductConceptContext(i) => self.product_concept_context_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductConceptFeatureCategory(i) => self.product_concept_feature_category_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinition(i) => self.product_definition_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionContext(i) => self.product_definition_context_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionEffectivity(i) => self.product_definition_effectivity_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionFormation(i) => self.product_definition_formation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self.product_definition_formation_with_specified_source_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionOccurrence(i) => self.product_definition_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionShape(i) => self.product_definition_shape_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ProductDefinitionWithAssociatedDocuments(i) => self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::PropertyDefinition(i) => self.property_definition_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::QualifiedRepresentationItem(i) => self.qualified_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::QuasiUniformCurve(i) => self.quasi_uniform_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::QuasiUniformSurface(i) => self.quasi_uniform_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RatioUnit(i) => self.ratio_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RationalBSplineCurve(i) => self.rational_b_spline_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RationalBSplineSurface(i) => self.rational_b_spline_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RealRepresentationItem(i) => self.real_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RepositionedTessellatedItem(i) => self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Representation(i) => self.representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::RepresentationItem(i) => self.representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SecurityClassification(i) => self.security_classification_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ShellBasedSurfaceModel(i) => self.shell_based_surface_model_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SiUnit(i) => self.si_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SolidAngleUnit(i) => self.solid_angle_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SolidModel(i) => self.solid_model_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SphericalSurface(i) => self.spherical_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::StateObserved(i) => self.state_observed_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::StateType(i) => self.state_type_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SurfaceCurve(i) => self.surface_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SurfaceOfLinearExtrusion(i) => self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SurfaceOfRevolution(i) => self.surface_of_revolution_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SweptSurface(i) => self.swept_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SymbolRepresentation(i) => self.symbol_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::SymbolTarget(i) => self.symbol_target_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TerminatorSymbol(i) => self.terminator_symbol_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedAnnotationOccurrence(i) => self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedCurveSet(i) => self.tessellated_curve_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedFace(i) => self.tessellated_face_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedGeometricSet(i) => self.tessellated_geometric_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedItem(i) => self.tessellated_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedShell(i) => self.tessellated_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedSolid(i) => self.tessellated_solid_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedStructuredItem(i) => self.tessellated_structured_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TessellatedSurfaceSet(i) => self.tessellated_surface_set_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TextLiteral(i) => self.text_literal_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TimeUnit(i) => self.time_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TopologicalRepresentationItem(i) => self.topological_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ToroidalSurface(i) => self.toroidal_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TrimmedCurve(i) => self.trimmed_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TwoDirectionRepeatFactor(i) => self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::TypeQualifier(i) => self.type_qualifier_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::UncertaintyQualifier(i) => self.uncertainty_qualifier_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::UniformCurve(i) => self.uniform_curve_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::UniformSurface(i) => self.uniform_surface_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::ValueRepresentationItem(i) => self.value_representation_item_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::VersionedActionRequest(i) => self.versioned_action_request_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::VertexPoint(i) => self.vertex_point_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::VertexShell(i) => self.vertex_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::VolumeUnit(i) => self.volume_unit_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
ExternalIdentificationItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_external_identification_item(
r: &ExternalIdentificationItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
ExternalIdentificationItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
ExternalIdentificationItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
ExternalIdentificationItemRef::ActionMethodRelationship(i) => out.push(EntityKey::ActionMethodRelationship(*i)),
ExternalIdentificationItemRef::ActionRelationship(i) => out.push(EntityKey::ActionRelationship(*i)),
ExternalIdentificationItemRef::Address(i) => out.push(EntityKey::Address(*i)),
ExternalIdentificationItemRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
ExternalIdentificationItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
ExternalIdentificationItemRef::AnnotationCurveOccurrence(i) => out.push(EntityKey::AnnotationCurveOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationFillAreaOccurrence(i) => out.push(EntityKey::AnnotationFillAreaOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationOccurrence(i) => out.push(EntityKey::AnnotationOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationPlaceholderLeaderLine(i) => out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i)),
ExternalIdentificationItemRef::AnnotationPlaceholderOccurrence(i) => out.push(EntityKey::AnnotationPlaceholderOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i)),
ExternalIdentificationItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
ExternalIdentificationItemRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
ExternalIdentificationItemRef::AnnotationSymbolOccurrence(i) => out.push(EntityKey::AnnotationSymbolOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
ExternalIdentificationItemRef::AnnotationTextCharacter(i) => out.push(EntityKey::AnnotationTextCharacter(*i)),
ExternalIdentificationItemRef::AnnotationTextOccurrence(i) => out.push(EntityKey::AnnotationTextOccurrence(*i)),
ExternalIdentificationItemRef::AnnotationToAnnotationLeaderLine(i) => out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i)),
ExternalIdentificationItemRef::AnnotationToModelLeaderLine(i) => out.push(EntityKey::AnnotationToModelLeaderLine(*i)),
ExternalIdentificationItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
ExternalIdentificationItemRef::ApllPointWithSurface(i) => out.push(EntityKey::ApllPointWithSurface(*i)),
ExternalIdentificationItemRef::AppliedDateAndTimeAssignment(i) => out.push(EntityKey::AppliedDateAndTimeAssignment(*i)),
ExternalIdentificationItemRef::AppliedExternalIdentificationAssignment(i) => out.push(EntityKey::AppliedExternalIdentificationAssignment(*i)),
ExternalIdentificationItemRef::Approval(i) => out.push(EntityKey::Approval(*i)),
ExternalIdentificationItemRef::ApprovalPersonOrganization(i) => out.push(EntityKey::ApprovalPersonOrganization(*i)),
ExternalIdentificationItemRef::ApprovalStatus(i) => out.push(EntityKey::ApprovalStatus(*i)),
ExternalIdentificationItemRef::AreaUnit(i) => out.push(EntityKey::AreaUnit(*i)),
ExternalIdentificationItemRef::AssemblyComponentUsage(i) => out.push(EntityKey::AssemblyComponentUsage(*i)),
ExternalIdentificationItemRef::AuxiliaryLeaderLine(i) => out.push(EntityKey::AuxiliaryLeaderLine(*i)),
ExternalIdentificationItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
ExternalIdentificationItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
ExternalIdentificationItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
ExternalIdentificationItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
ExternalIdentificationItemRef::BSplineCurveWithKnots(i) => out.push(EntityKey::BSplineCurveWithKnots(*i)),
ExternalIdentificationItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
ExternalIdentificationItemRef::BSplineSurfaceWithKnots(i) => out.push(EntityKey::BSplineSurfaceWithKnots(*i)),
ExternalIdentificationItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
ExternalIdentificationItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
ExternalIdentificationItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
ExternalIdentificationItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
ExternalIdentificationItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
ExternalIdentificationItemRef::BoundedSurfaceCurve(i) => out.push(EntityKey::BoundedSurfaceCurve(*i)),
ExternalIdentificationItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
ExternalIdentificationItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
ExternalIdentificationItemRef::CameraImage3dWithScale(i) => out.push(EntityKey::CameraImage3dWithScale(*i)),
ExternalIdentificationItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
ExternalIdentificationItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
ExternalIdentificationItemRef::CameraModelD3MultiClipping(i) => out.push(EntityKey::CameraModelD3MultiClipping(*i)),
ExternalIdentificationItemRef::CameraModelD3WithHlhsr(i) => out.push(EntityKey::CameraModelD3WithHlhsr(*i)),
ExternalIdentificationItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
ExternalIdentificationItemRef::CcDesignDateAndTimeAssignment(i) => out.push(EntityKey::CcDesignDateAndTimeAssignment(*i)),
ExternalIdentificationItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
ExternalIdentificationItemRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
ExternalIdentificationItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
ExternalIdentificationItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ExternalIdentificationItemRef::ComplexTriangulatedFace(i) => out.push(EntityKey::ComplexTriangulatedFace(*i)),
ExternalIdentificationItemRef::ComplexTriangulatedSurfaceSet(i) => out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i)),
ExternalIdentificationItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
ExternalIdentificationItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
ExternalIdentificationItemRef::CompoundRepresentationItem(i) => out.push(EntityKey::CompoundRepresentationItem(*i)),
ExternalIdentificationItemRef::ConfigurationEffectivity(i) => out.push(EntityKey::ConfigurationEffectivity(*i)),
ExternalIdentificationItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
ExternalIdentificationItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
ExternalIdentificationItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
ExternalIdentificationItemRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
ExternalIdentificationItemRef::ContextDependentOverRidingStyledItem(i) => out.push(EntityKey::ContextDependentOverRidingStyledItem(*i)),
ExternalIdentificationItemRef::ContextDependentUnit(i) => out.push(EntityKey::ContextDependentUnit(*i)),
ExternalIdentificationItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
ExternalIdentificationItemRef::ConversionBasedUnit(i) => out.push(EntityKey::ConversionBasedUnit(*i)),
ExternalIdentificationItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
ExternalIdentificationItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
ExternalIdentificationItemRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
ExternalIdentificationItemRef::DateAndTimeAssignment(i) => out.push(EntityKey::DateAndTimeAssignment(*i)),
ExternalIdentificationItemRef::DefinedCharacterGlyph(i) => out.push(EntityKey::DefinedCharacterGlyph(*i)),
ExternalIdentificationItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
ExternalIdentificationItemRef::DefinitionalRepresentation(i) => out.push(EntityKey::DefinitionalRepresentation(*i)),
ExternalIdentificationItemRef::DegenerateToroidalSurface(i) => out.push(EntityKey::DegenerateToroidalSurface(*i)),
ExternalIdentificationItemRef::DerivedUnit(i) => out.push(EntityKey::DerivedUnit(*i)),
ExternalIdentificationItemRef::DescriptiveRepresentationItem(i) => out.push(EntityKey::DescriptiveRepresentationItem(*i)),
ExternalIdentificationItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
ExternalIdentificationItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
ExternalIdentificationItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
ExternalIdentificationItemRef::DraughtingAnnotationOccurrence(i) => out.push(EntityKey::DraughtingAnnotationOccurrence(*i)),
ExternalIdentificationItemRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
ExternalIdentificationItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
ExternalIdentificationItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
ExternalIdentificationItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
ExternalIdentificationItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
ExternalIdentificationItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
ExternalIdentificationItemRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
ExternalIdentificationItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
ExternalIdentificationItemRef::ExternalSource(i) => out.push(EntityKey::ExternalSource(*i)),
ExternalIdentificationItemRef::ExternallyDefinedHatchStyle(i) => out.push(EntityKey::ExternallyDefinedHatchStyle(*i)),
ExternalIdentificationItemRef::ExternallyDefinedTileStyle(i) => out.push(EntityKey::ExternallyDefinedTileStyle(*i)),
ExternalIdentificationItemRef::Face(i) => out.push(EntityKey::Face(*i)),
ExternalIdentificationItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
ExternalIdentificationItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
ExternalIdentificationItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
ExternalIdentificationItemRef::FillAreaStyleHatching(i) => out.push(EntityKey::FillAreaStyleHatching(*i)),
ExternalIdentificationItemRef::FillAreaStyleTileColouredRegion(i) => out.push(EntityKey::FillAreaStyleTileColouredRegion(*i)),
ExternalIdentificationItemRef::FillAreaStyleTileCurveWithStyle(i) => out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i)),
ExternalIdentificationItemRef::FillAreaStyleTileSymbolWithStyle(i) => out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i)),
ExternalIdentificationItemRef::FillAreaStyleTiles(i) => out.push(EntityKey::FillAreaStyleTiles(*i)),
ExternalIdentificationItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
ExternalIdentificationItemRef::GenericProductDefinitionReference(i) => out.push(EntityKey::GenericProductDefinitionReference(*i)),
ExternalIdentificationItemRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
ExternalIdentificationItemRef::GeometricRepresentationItem(i) => out.push(EntityKey::GeometricRepresentationItem(*i)),
ExternalIdentificationItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
ExternalIdentificationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
ExternalIdentificationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
ExternalIdentificationItemRef::Group(i) => out.push(EntityKey::Group(*i)),
ExternalIdentificationItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
ExternalIdentificationItemRef::IntegerRepresentationItem(i) => out.push(EntityKey::IntegerRepresentationItem(*i)),
ExternalIdentificationItemRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
ExternalIdentificationItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
ExternalIdentificationItemRef::LeaderDirectedCallout(i) => out.push(EntityKey::LeaderDirectedCallout(*i)),
ExternalIdentificationItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
ExternalIdentificationItemRef::LengthUnit(i) => out.push(EntityKey::LengthUnit(*i)),
ExternalIdentificationItemRef::Line(i) => out.push(EntityKey::Line(*i)),
ExternalIdentificationItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
ExternalIdentificationItemRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
ExternalIdentificationItemRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
ExternalIdentificationItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
ExternalIdentificationItemRef::MassUnit(i) => out.push(EntityKey::MassUnit(*i)),
ExternalIdentificationItemRef::MeasureRepresentationItem(i) => out.push(EntityKey::MeasureRepresentationItem(*i)),
ExternalIdentificationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
ExternalIdentificationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
ExternalIdentificationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
ExternalIdentificationItemRef::NamedUnit(i) => out.push(EntityKey::NamedUnit(*i)),
ExternalIdentificationItemRef::NextAssemblyUsageOccurrence(i) => out.push(EntityKey::NextAssemblyUsageOccurrence(*i)),
ExternalIdentificationItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
ExternalIdentificationItemRef::OneDirectionRepeatFactor(i) => out.push(EntityKey::OneDirectionRepeatFactor(*i)),
ExternalIdentificationItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
ExternalIdentificationItemRef::Organization(i) => out.push(EntityKey::Organization(*i)),
ExternalIdentificationItemRef::OrganizationalAddress(i) => out.push(EntityKey::OrganizationalAddress(*i)),
ExternalIdentificationItemRef::OrganizationalProject(i) => out.push(EntityKey::OrganizationalProject(*i)),
ExternalIdentificationItemRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
ExternalIdentificationItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
ExternalIdentificationItemRef::OverRidingStyledItem(i) => out.push(EntityKey::OverRidingStyledItem(*i)),
ExternalIdentificationItemRef::Path(i) => out.push(EntityKey::Path(*i)),
ExternalIdentificationItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
ExternalIdentificationItemRef::Person(i) => out.push(EntityKey::Person(*i)),
ExternalIdentificationItemRef::PersonAndOrganization(i) => out.push(EntityKey::PersonAndOrganization(*i)),
ExternalIdentificationItemRef::PersonAndOrganizationAddress(i) => out.push(EntityKey::PersonAndOrganizationAddress(*i)),
ExternalIdentificationItemRef::PersonalAddress(i) => out.push(EntityKey::PersonalAddress(*i)),
ExternalIdentificationItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
ExternalIdentificationItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
ExternalIdentificationItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
ExternalIdentificationItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
ExternalIdentificationItemRef::PlaneAngleUnit(i) => out.push(EntityKey::PlaneAngleUnit(*i)),
ExternalIdentificationItemRef::Point(i) => out.push(EntityKey::Point(*i)),
ExternalIdentificationItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
ExternalIdentificationItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
ExternalIdentificationItemRef::PrecisionQualifier(i) => out.push(EntityKey::PrecisionQualifier(*i)),
ExternalIdentificationItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
ExternalIdentificationItemRef::PresentationRepresentation(i) => out.push(EntityKey::PresentationRepresentation(*i)),
ExternalIdentificationItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
ExternalIdentificationItemRef::Product(i) => out.push(EntityKey::Product(*i)),
ExternalIdentificationItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
ExternalIdentificationItemRef::ProductConceptContext(i) => out.push(EntityKey::ProductConceptContext(*i)),
ExternalIdentificationItemRef::ProductConceptFeatureCategory(i) => out.push(EntityKey::ProductConceptFeatureCategory(*i)),
ExternalIdentificationItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
ExternalIdentificationItemRef::ProductDefinitionContext(i) => out.push(EntityKey::ProductDefinitionContext(*i)),
ExternalIdentificationItemRef::ProductDefinitionEffectivity(i) => out.push(EntityKey::ProductDefinitionEffectivity(*i)),
ExternalIdentificationItemRef::ProductDefinitionFormation(i) => out.push(EntityKey::ProductDefinitionFormation(*i)),
ExternalIdentificationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i)),
ExternalIdentificationItemRef::ProductDefinitionOccurrence(i) => out.push(EntityKey::ProductDefinitionOccurrence(*i)),
ExternalIdentificationItemRef::ProductDefinitionShape(i) => out.push(EntityKey::ProductDefinitionShape(*i)),
ExternalIdentificationItemRef::ProductDefinitionWithAssociatedDocuments(i) => out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i)),
ExternalIdentificationItemRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
ExternalIdentificationItemRef::QualifiedRepresentationItem(i) => out.push(EntityKey::QualifiedRepresentationItem(*i)),
ExternalIdentificationItemRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
ExternalIdentificationItemRef::QuasiUniformSurface(i) => out.push(EntityKey::QuasiUniformSurface(*i)),
ExternalIdentificationItemRef::RatioUnit(i) => out.push(EntityKey::RatioUnit(*i)),
ExternalIdentificationItemRef::RationalBSplineCurve(i) => out.push(EntityKey::RationalBSplineCurve(*i)),
ExternalIdentificationItemRef::RationalBSplineSurface(i) => out.push(EntityKey::RationalBSplineSurface(*i)),
ExternalIdentificationItemRef::RealRepresentationItem(i) => out.push(EntityKey::RealRepresentationItem(*i)),
ExternalIdentificationItemRef::RepositionedTessellatedItem(i) => out.push(EntityKey::RepositionedTessellatedItem(*i)),
ExternalIdentificationItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
ExternalIdentificationItemRef::RepresentationItem(i) => out.push(EntityKey::RepresentationItem(*i)),
ExternalIdentificationItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
ExternalIdentificationItemRef::SecurityClassification(i) => out.push(EntityKey::SecurityClassification(*i)),
ExternalIdentificationItemRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
ExternalIdentificationItemRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
ExternalIdentificationItemRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
ExternalIdentificationItemRef::ShellBasedSurfaceModel(i) => out.push(EntityKey::ShellBasedSurfaceModel(*i)),
ExternalIdentificationItemRef::SiUnit(i) => out.push(EntityKey::SiUnit(*i)),
ExternalIdentificationItemRef::SolidAngleUnit(i) => out.push(EntityKey::SolidAngleUnit(*i)),
ExternalIdentificationItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
ExternalIdentificationItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
ExternalIdentificationItemRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
ExternalIdentificationItemRef::StateType(i) => out.push(EntityKey::StateType(*i)),
ExternalIdentificationItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
ExternalIdentificationItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
ExternalIdentificationItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
ExternalIdentificationItemRef::SurfaceOfLinearExtrusion(i) => out.push(EntityKey::SurfaceOfLinearExtrusion(*i)),
ExternalIdentificationItemRef::SurfaceOfRevolution(i) => out.push(EntityKey::SurfaceOfRevolution(*i)),
ExternalIdentificationItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
ExternalIdentificationItemRef::SymbolRepresentation(i) => out.push(EntityKey::SymbolRepresentation(*i)),
ExternalIdentificationItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
ExternalIdentificationItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
ExternalIdentificationItemRef::TessellatedAnnotationOccurrence(i) => out.push(EntityKey::TessellatedAnnotationOccurrence(*i)),
ExternalIdentificationItemRef::TessellatedCurveSet(i) => out.push(EntityKey::TessellatedCurveSet(*i)),
ExternalIdentificationItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
ExternalIdentificationItemRef::TessellatedGeometricSet(i) => out.push(EntityKey::TessellatedGeometricSet(*i)),
ExternalIdentificationItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
ExternalIdentificationItemRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
ExternalIdentificationItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
ExternalIdentificationItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
ExternalIdentificationItemRef::TessellatedStructuredItem(i) => out.push(EntityKey::TessellatedStructuredItem(*i)),
ExternalIdentificationItemRef::TessellatedSurfaceSet(i) => out.push(EntityKey::TessellatedSurfaceSet(*i)),
ExternalIdentificationItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
ExternalIdentificationItemRef::TimeUnit(i) => out.push(EntityKey::TimeUnit(*i)),
ExternalIdentificationItemRef::TopologicalRepresentationItem(i) => out.push(EntityKey::TopologicalRepresentationItem(*i)),
ExternalIdentificationItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
ExternalIdentificationItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
ExternalIdentificationItemRef::TwoDirectionRepeatFactor(i) => out.push(EntityKey::TwoDirectionRepeatFactor(*i)),
ExternalIdentificationItemRef::TypeQualifier(i) => out.push(EntityKey::TypeQualifier(*i)),
ExternalIdentificationItemRef::UncertaintyQualifier(i) => out.push(EntityKey::UncertaintyQualifier(*i)),
ExternalIdentificationItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
ExternalIdentificationItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
ExternalIdentificationItemRef::ValueRepresentationItem(i) => out.push(EntityKey::ValueRepresentationItem(*i)),
ExternalIdentificationItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
ExternalIdentificationItemRef::VersionedActionRequest(i) => out.push(EntityKey::VersionedActionRequest(*i)),
ExternalIdentificationItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
ExternalIdentificationItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
ExternalIdentificationItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
ExternalIdentificationItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
ExternalIdentificationItemRef::VolumeUnit(i) => out.push(EntityKey::VolumeUnit(*i)),
ExternalIdentificationItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
ExternalIdentificationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_external_source(&self, r: &ExternalSourceRef) -> u64 {
match r {
ExternalSourceRef::ExternalSource(i) => {
self.external_source_ids[i.0].expect("dep id assigned")
}
ExternalSourceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_external_source(r: &ExternalSourceRef, out: &mut Vec<EntityKey>) {
match r {
ExternalSourceRef::ExternalSource(i) => out.push(EntityKey::ExternalSource(*i)),
ExternalSourceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_face_bound(&self, r: &FaceBoundRef) -> u64 {
match r {
FaceBoundRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
FaceBoundRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
FaceBoundRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_face_bound(r: &FaceBoundRef, out: &mut Vec<EntityKey>) {
match r {
FaceBoundRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
FaceBoundRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
FaceBoundRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_face_or_surface(&self, r: &FaceOrSurfaceRef) -> u64 {
match r {
FaceOrSurfaceRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
FaceOrSurfaceRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
FaceOrSurfaceRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
FaceOrSurfaceRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
FaceOrSurfaceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_face_or_surface(r: &FaceOrSurfaceRef, out: &mut Vec<EntityKey>) {
match r {
FaceOrSurfaceRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
FaceOrSurfaceRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
FaceOrSurfaceRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
FaceOrSurfaceRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
FaceOrSurfaceRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
FaceOrSurfaceRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
FaceOrSurfaceRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
FaceOrSurfaceRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
FaceOrSurfaceRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
FaceOrSurfaceRef::Face(i) => out.push(EntityKey::Face(*i)),
FaceOrSurfaceRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
FaceOrSurfaceRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
FaceOrSurfaceRef::Plane(i) => out.push(EntityKey::Plane(*i)),
FaceOrSurfaceRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
FaceOrSurfaceRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
FaceOrSurfaceRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
FaceOrSurfaceRef::Surface(i) => out.push(EntityKey::Surface(*i)),
FaceOrSurfaceRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
FaceOrSurfaceRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
FaceOrSurfaceRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
FaceOrSurfaceRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
FaceOrSurfaceRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
FaceOrSurfaceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_face(&self, r: &FaceRef) -> u64 {
match r {
FaceRef::AdvancedFace(i) => self.advanced_face_ids[i.0].expect("dep id assigned"),
FaceRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
FaceRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
FaceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_face(r: &FaceRef, out: &mut Vec<EntityKey>) {
match r {
FaceRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
FaceRef::Face(i) => out.push(EntityKey::Face(*i)),
FaceRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
FaceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_face_surface(&self, r: &FaceSurfaceRef) -> u64 {
match r {
FaceSurfaceRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
FaceSurfaceRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
FaceSurfaceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_face_surface(r: &FaceSurfaceRef, out: &mut Vec<EntityKey>) {
match r {
FaceSurfaceRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
FaceSurfaceRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
FaceSurfaceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_fill_area_style(&self, r: &FillAreaStyleRef) -> u64 {
match r {
FillAreaStyleRef::FillAreaStyle(i) => {
self.fill_area_style_ids[i.0].expect("dep id assigned")
}
FillAreaStyleRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_fill_area_style(r: &FillAreaStyleRef, out: &mut Vec<EntityKey>) {
match r {
FillAreaStyleRef::FillAreaStyle(i) => out.push(EntityKey::FillAreaStyle(*i)),
FillAreaStyleRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_fill_area_style_tile_shape_select(
&self,
r: &FillAreaStyleTileShapeSelectRef,
) -> u64 {
match r {
FillAreaStyleTileShapeSelectRef::ExternallyDefinedTile(i) => {
self.externally_defined_tile_ids[i.0].expect("dep id assigned")
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
FillAreaStyleTileShapeSelectRef::PreDefinedTile(i) => {
self.pre_defined_tile_ids[i.0].expect("dep id assigned")
}
FillAreaStyleTileShapeSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_fill_area_style_tile_shape_select(
r: &FillAreaStyleTileShapeSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
FillAreaStyleTileShapeSelectRef::ExternallyDefinedTile(i) => {
out.push(EntityKey::ExternallyDefinedTile(*i))
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
FillAreaStyleTileShapeSelectRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
FillAreaStyleTileShapeSelectRef::PreDefinedTile(i) => {
out.push(EntityKey::PreDefinedTile(*i))
}
FillAreaStyleTileShapeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_fill_style_select(&self, r: &FillStyleSelectRef) -> u64 {
match r {
FillStyleSelectRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::FillAreaStyleColour(i) => {
self.fill_area_style_colour_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::TextureStyleSpecification(i) => {
self.texture_style_specification_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::TextureStyleTessellationSpecification(i) => {
self.texture_style_tessellation_specification_ids[i.0].expect("dep id assigned")
}
FillStyleSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_fill_style_select(r: &FillStyleSelectRef, out: &mut Vec<EntityKey>) {
match r {
FillStyleSelectRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
FillStyleSelectRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
FillStyleSelectRef::FillAreaStyleColour(i) => {
out.push(EntityKey::FillAreaStyleColour(*i))
}
FillStyleSelectRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
FillStyleSelectRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
FillStyleSelectRef::TextureStyleSpecification(i) => {
out.push(EntityKey::TextureStyleSpecification(*i))
}
FillStyleSelectRef::TextureStyleTessellationSpecification(i) => {
out.push(EntityKey::TextureStyleTessellationSpecification(*i))
}
FillStyleSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_font_select(&self, r: &FontSelectRef) -> u64 {
match r {
FontSelectRef::DraughtingPreDefinedTextFont(i) => {
self.draughting_pre_defined_text_font_ids[i.0].expect("dep id assigned")
}
FontSelectRef::ExternallyDefinedTextFont(i) => {
self.externally_defined_text_font_ids[i.0].expect("dep id assigned")
}
FontSelectRef::PreDefinedTextFont(i) => {
self.pre_defined_text_font_ids[i.0].expect("dep id assigned")
}
FontSelectRef::TextFont(i) => self.text_font_ids[i.0].expect("dep id assigned"),
FontSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_font_select(r: &FontSelectRef, out: &mut Vec<EntityKey>) {
match r {
FontSelectRef::DraughtingPreDefinedTextFont(i) => {
out.push(EntityKey::DraughtingPreDefinedTextFont(*i))
}
FontSelectRef::ExternallyDefinedTextFont(i) => {
out.push(EntityKey::ExternallyDefinedTextFont(*i))
}
FontSelectRef::PreDefinedTextFont(i) => out.push(EntityKey::PreDefinedTextFont(*i)),
FontSelectRef::TextFont(i) => out.push(EntityKey::TextFont(*i)),
FontSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_general_property(&self, r: &GeneralPropertyRef) -> u64 {
match r {
GeneralPropertyRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
GeneralPropertyRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_general_property(r: &GeneralPropertyRef, out: &mut Vec<EntityKey>) {
match r {
GeneralPropertyRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
GeneralPropertyRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_geometric_item_specific_usage_select(
&self,
r: &GeometricItemSpecificUsageSelectRef,
) -> u64 {
match r {
GeometricItemSpecificUsageSelectRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::Datum(i) => {
self.datum_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
GeometricItemSpecificUsageSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_geometric_item_specific_usage_select(
r: &GeometricItemSpecificUsageSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
GeometricItemSpecificUsageSelectRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
GeometricItemSpecificUsageSelectRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
GeometricItemSpecificUsageSelectRef::CommonDatum(i) => {
out.push(EntityKey::CommonDatum(*i))
}
GeometricItemSpecificUsageSelectRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::Datum(i) => out.push(EntityKey::Datum(*i)),
GeometricItemSpecificUsageSelectRef::DatumFeature(i) => {
out.push(EntityKey::DatumFeature(*i))
}
GeometricItemSpecificUsageSelectRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
GeometricItemSpecificUsageSelectRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
GeometricItemSpecificUsageSelectRef::DatumSystem(i) => {
out.push(EntityKey::DatumSystem(*i))
}
GeometricItemSpecificUsageSelectRef::DatumTarget(i) => {
out.push(EntityKey::DatumTarget(*i))
}
GeometricItemSpecificUsageSelectRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
GeometricItemSpecificUsageSelectRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
GeometricItemSpecificUsageSelectRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
GeometricItemSpecificUsageSelectRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
GeometricItemSpecificUsageSelectRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
GeometricItemSpecificUsageSelectRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
GeometricItemSpecificUsageSelectRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
GeometricItemSpecificUsageSelectRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
GeometricItemSpecificUsageSelectRef::ShapeAspect(i) => {
out.push(EntityKey::ShapeAspect(*i))
}
GeometricItemSpecificUsageSelectRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
GeometricItemSpecificUsageSelectRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
GeometricItemSpecificUsageSelectRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
GeometricItemSpecificUsageSelectRef::ToleranceZone(i) => {
out.push(EntityKey::ToleranceZone(*i))
}
GeometricItemSpecificUsageSelectRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
GeometricItemSpecificUsageSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_geometric_model_item(&self, r: &GeometricModelItemRef) -> u64 {
match r {
GeometricModelItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
GeometricModelItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Direction(i) => {
self.direction_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
GeometricModelItemRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
GeometricModelItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_geometric_model_item(r: &GeometricModelItemRef, out: &mut Vec<EntityKey>) {
match r {
GeometricModelItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
GeometricModelItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
GeometricModelItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
GeometricModelItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
GeometricModelItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
GeometricModelItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
GeometricModelItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
GeometricModelItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
GeometricModelItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
GeometricModelItemRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
GeometricModelItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
GeometricModelItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
GeometricModelItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
GeometricModelItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
GeometricModelItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
GeometricModelItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
GeometricModelItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
GeometricModelItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
GeometricModelItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
GeometricModelItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
GeometricModelItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
GeometricModelItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
GeometricModelItemRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
GeometricModelItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
GeometricModelItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
GeometricModelItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
GeometricModelItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
GeometricModelItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
GeometricModelItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
GeometricModelItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
GeometricModelItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
GeometricModelItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
GeometricModelItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
GeometricModelItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
GeometricModelItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
GeometricModelItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
GeometricModelItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
GeometricModelItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
GeometricModelItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
GeometricModelItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
GeometricModelItemRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
GeometricModelItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
GeometricModelItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
GeometricModelItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
GeometricModelItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
GeometricModelItemRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
GeometricModelItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
GeometricModelItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
GeometricModelItemRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
GeometricModelItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
GeometricModelItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
GeometricModelItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
GeometricModelItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
GeometricModelItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
GeometricModelItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
GeometricModelItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
GeometricModelItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
GeometricModelItemRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
GeometricModelItemRef::GeometricCurveSet(i) => {
out.push(EntityKey::GeometricCurveSet(*i))
}
GeometricModelItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
GeometricModelItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
GeometricModelItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
GeometricModelItemRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
GeometricModelItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
GeometricModelItemRef::Line(i) => out.push(EntityKey::Line(*i)),
GeometricModelItemRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
GeometricModelItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
GeometricModelItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
GeometricModelItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
GeometricModelItemRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
GeometricModelItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
GeometricModelItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
GeometricModelItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
GeometricModelItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
GeometricModelItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
GeometricModelItemRef::Point(i) => out.push(EntityKey::Point(*i)),
GeometricModelItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
GeometricModelItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
GeometricModelItemRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
GeometricModelItemRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
GeometricModelItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
GeometricModelItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
GeometricModelItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
GeometricModelItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
GeometricModelItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
GeometricModelItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
GeometricModelItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
GeometricModelItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
GeometricModelItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
GeometricModelItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
GeometricModelItemRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
GeometricModelItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
GeometricModelItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
GeometricModelItemRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
GeometricModelItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
GeometricModelItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
GeometricModelItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
GeometricModelItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
GeometricModelItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
GeometricModelItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
GeometricModelItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
GeometricModelItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
GeometricModelItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
GeometricModelItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
GeometricModelItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
GeometricModelItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
GeometricModelItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
GeometricModelItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
GeometricModelItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
GeometricModelItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_geometric_set_select(&self, r: &GeometricSetSelectRef) -> u64 {
match r {
GeometricSetSelectRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
GeometricSetSelectRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
GeometricSetSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_geometric_set_select(r: &GeometricSetSelectRef, out: &mut Vec<EntityKey>) {
match r {
GeometricSetSelectRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
GeometricSetSelectRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
GeometricSetSelectRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
GeometricSetSelectRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
GeometricSetSelectRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
GeometricSetSelectRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
GeometricSetSelectRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
GeometricSetSelectRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
GeometricSetSelectRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
GeometricSetSelectRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
GeometricSetSelectRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
GeometricSetSelectRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
GeometricSetSelectRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
GeometricSetSelectRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
GeometricSetSelectRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
GeometricSetSelectRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
GeometricSetSelectRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
GeometricSetSelectRef::Circle(i) => out.push(EntityKey::Circle(*i)),
GeometricSetSelectRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
GeometricSetSelectRef::Conic(i) => out.push(EntityKey::Conic(*i)),
GeometricSetSelectRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
GeometricSetSelectRef::Curve(i) => out.push(EntityKey::Curve(*i)),
GeometricSetSelectRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
GeometricSetSelectRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
GeometricSetSelectRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
GeometricSetSelectRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
GeometricSetSelectRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
GeometricSetSelectRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
GeometricSetSelectRef::Line(i) => out.push(EntityKey::Line(*i)),
GeometricSetSelectRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
GeometricSetSelectRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
GeometricSetSelectRef::Placement(i) => out.push(EntityKey::Placement(*i)),
GeometricSetSelectRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
GeometricSetSelectRef::Plane(i) => out.push(EntityKey::Plane(*i)),
GeometricSetSelectRef::Point(i) => out.push(EntityKey::Point(*i)),
GeometricSetSelectRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
GeometricSetSelectRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
GeometricSetSelectRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
GeometricSetSelectRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
GeometricSetSelectRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
GeometricSetSelectRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
GeometricSetSelectRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
GeometricSetSelectRef::Surface(i) => out.push(EntityKey::Surface(*i)),
GeometricSetSelectRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
GeometricSetSelectRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
GeometricSetSelectRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
GeometricSetSelectRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
GeometricSetSelectRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
GeometricSetSelectRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
GeometricSetSelectRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
GeometricSetSelectRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
GeometricSetSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_geometric_tolerance(&self, r: &GeometricToleranceRef) -> u64 {
match r {
GeometricToleranceRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
GeometricToleranceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_geometric_tolerance(r: &GeometricToleranceRef, out: &mut Vec<EntityKey>) {
match r {
GeometricToleranceRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
GeometricToleranceRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
GeometricToleranceRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
GeometricToleranceRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
GeometricToleranceRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
GeometricToleranceRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
GeometricToleranceRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
GeometricToleranceRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
GeometricToleranceRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
GeometricToleranceRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
GeometricToleranceRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
GeometricToleranceRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
GeometricToleranceRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
GeometricToleranceRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
GeometricToleranceRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
GeometricToleranceRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
GeometricToleranceRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
GeometricToleranceRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
GeometricToleranceRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
GeometricToleranceRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
GeometricToleranceRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
GeometricToleranceRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
GeometricToleranceRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
GeometricToleranceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_geometric_tolerance_target(&self, r: &GeometricToleranceTargetRef) -> u64 {
match r {
GeometricToleranceTargetRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
GeometricToleranceTargetRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
GeometricToleranceTargetRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_geometric_tolerance_target(
r: &GeometricToleranceTargetRef,
out: &mut Vec<EntityKey>,
) {
match r {
GeometricToleranceTargetRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
GeometricToleranceTargetRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
GeometricToleranceTargetRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
GeometricToleranceTargetRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
GeometricToleranceTargetRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
GeometricToleranceTargetRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
GeometricToleranceTargetRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
GeometricToleranceTargetRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
GeometricToleranceTargetRef::Datum(i) => out.push(EntityKey::Datum(*i)),
GeometricToleranceTargetRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
GeometricToleranceTargetRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
GeometricToleranceTargetRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
GeometricToleranceTargetRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
GeometricToleranceTargetRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
GeometricToleranceTargetRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
GeometricToleranceTargetRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
GeometricToleranceTargetRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
GeometricToleranceTargetRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
GeometricToleranceTargetRef::DimensionalSize(i) => {
out.push(EntityKey::DimensionalSize(*i))
}
GeometricToleranceTargetRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
GeometricToleranceTargetRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
GeometricToleranceTargetRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
GeometricToleranceTargetRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
GeometricToleranceTargetRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
GeometricToleranceTargetRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
GeometricToleranceTargetRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
GeometricToleranceTargetRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
GeometricToleranceTargetRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
GeometricToleranceTargetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_group(&self, r: &GroupRef) -> u64 {
match r {
GroupRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
GroupRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
GroupRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_group(r: &GroupRef, out: &mut Vec<EntityKey>) {
match r {
GroupRef::Group(i) => out.push(EntityKey::Group(*i)),
GroupRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
GroupRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_groupable_item(&self, r: &GroupableItemRef) -> u64 {
match r {
GroupableItemRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Address(i) => self.address_ids[i.0].expect("dep id assigned"),
GroupableItemRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AppliedDateAndTimeAssignment(i) => {
self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AppliedGroupAssignment(i) => {
self.applied_group_assignment_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Approval(i) => self.approval_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ApprovalPersonOrganization(i) => {
self.approval_person_organization_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ApprovalStatus(i) => {
self.approval_status_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AreaUnit(i) => self.area_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::AscribableState(i) => {
self.ascribable_state_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AscribableStateRelationship(i) => {
self.ascribable_state_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CalendarDate(i) => {
self.calendar_date_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CcDesignDateAndTimeAssignment(i) => {
self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Certification(i) => {
self.certification_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConfigurationItem(i) => {
self.configuration_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ConstructiveGeometryRepresentationRelationship(i) => self
.constructive_geometry_representation_relationship_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ContextDependentShapeRepresentation(i) => {
self.context_dependent_shape_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ContextDependentUnit(i) => {
self.context_dependent_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ConversionBasedUnit(i) => {
self.conversion_based_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CoordinatedUniversalTimeOffset(i) => {
self.coordinated_universal_time_offset_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
GroupableItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DateAndTime(i) => {
self.date_and_time_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DateAndTimeAssignment(i) => {
self.date_and_time_assignment_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
GroupableItemRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => self
.definitional_representation_relationship_with_same_context_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DerivedUnit(i) => {
self.derived_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DerivedUnitElement(i) => {
self.derived_unit_element_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DesignContext(i) => {
self.design_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
GroupableItemRef::DocumentFile(i) => {
self.document_file_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
GroupableItemRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
GroupableItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Effectivity(i) => self.effectivity_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ExternalSource(i) => {
self.external_source_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
GroupableItemRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
GroupableItemRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricItemSpecificUsage(i) => {
self.geometric_item_specific_usage_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricRepresentationContext(i) => {
self.geometric_representation_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::GlobalUncertaintyAssignedContext(i) => {
self.global_uncertainty_assigned_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::GlobalUnitAssignedContext(i) => {
self.global_unit_assigned_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
GroupableItemRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ItemDefinedTransformation(i) => {
self.item_defined_transformation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::LengthMeasureWithUnit(i) => {
self.length_measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::LengthUnit(i) => self.length_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
GroupableItemRef::LocalTime(i) => self.local_time_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
GroupableItemRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::MappedItem(i) => self.mapped_item_ids[i.0].expect("dep id assigned"),
GroupableItemRef::MassMeasureWithUnit(i) => {
self.mass_measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::MassUnit(i) => self.mass_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::MeasureWithUnit(i) => {
self.measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::MechanicalDesignAndDraughtingRelationship(i) => self
.mechanical_design_and_draughting_relationship_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self
.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::NamedUnit(i) => self.named_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Organization(i) => {
self.organization_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrganizationRelationship(i) => {
self.organization_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrganizationType(i) => {
self.organization_type_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrganizationalProjectRelationship(i) => {
self.organizational_project_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ParametricRepresentationContext(i) => {
self.parametric_representation_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Person(i) => self.person_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PersonalAddress(i) => {
self.personal_address_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PlaneAngleMeasureWithUnit(i) => {
self.plane_angle_measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PlaneAngleUnit(i) => {
self.plane_angle_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
GroupableItemRef::PrecisionQualifier(i) => {
self.precision_qualifier_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductConceptContext(i) => {
self.product_concept_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RatioMeasureWithUnit(i) => {
self.ratio_measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RatioUnit(i) => self.ratio_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RepresentationContext(i) => {
self.representation_context_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RepresentationRelationship(i) => {
self.representation_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::RepresentationRelationshipWithTransformation(i) => self
.representation_relationship_with_transformation_ids[i.0]
.expect("dep id assigned"),
GroupableItemRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
GroupableItemRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SiUnit(i) => self.si_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::SolidAngleUnit(i) => {
self.solid_angle_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SolidModel(i) => self.solid_model_ids[i.0].expect("dep id assigned"),
GroupableItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::StateObserved(i) => {
self.state_observed_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::StateType(i) => self.state_type_ids[i.0].expect("dep id assigned"),
GroupableItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
GroupableItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TimeUnit(i) => self.time_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::TypeQualifier(i) => {
self.type_qualifier_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::UncertaintyMeasureWithUnit(i) => {
self.uncertainty_measure_with_unit_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::UncertaintyQualifier(i) => {
self.uncertainty_qualifier_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
GroupableItemRef::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
GroupableItemRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
GroupableItemRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
GroupableItemRef::VolumeUnit(i) => self.volume_unit_ids[i.0].expect("dep id assigned"),
GroupableItemRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
GroupableItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_groupable_item(r: &GroupableItemRef, out: &mut Vec<EntityKey>) {
match r {
GroupableItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
GroupableItemRef::Address(i) => out.push(EntityKey::Address(*i)),
GroupableItemRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
GroupableItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
GroupableItemRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
GroupableItemRef::AngularLocation(i) => out.push(EntityKey::AngularLocation(*i)),
GroupableItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
GroupableItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
GroupableItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
GroupableItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
GroupableItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
GroupableItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
GroupableItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
GroupableItemRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
GroupableItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
GroupableItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
GroupableItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
GroupableItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
GroupableItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
GroupableItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
GroupableItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
GroupableItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
GroupableItemRef::AppliedDateAndTimeAssignment(i) => {
out.push(EntityKey::AppliedDateAndTimeAssignment(*i))
}
GroupableItemRef::AppliedGroupAssignment(i) => {
out.push(EntityKey::AppliedGroupAssignment(*i))
}
GroupableItemRef::Approval(i) => out.push(EntityKey::Approval(*i)),
GroupableItemRef::ApprovalPersonOrganization(i) => {
out.push(EntityKey::ApprovalPersonOrganization(*i))
}
GroupableItemRef::ApprovalStatus(i) => out.push(EntityKey::ApprovalStatus(*i)),
GroupableItemRef::AreaUnit(i) => out.push(EntityKey::AreaUnit(*i)),
GroupableItemRef::AscribableState(i) => out.push(EntityKey::AscribableState(*i)),
GroupableItemRef::AscribableStateRelationship(i) => {
out.push(EntityKey::AscribableStateRelationship(*i))
}
GroupableItemRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
GroupableItemRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
GroupableItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
GroupableItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
GroupableItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
GroupableItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
GroupableItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
GroupableItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
GroupableItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
GroupableItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
GroupableItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
GroupableItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
GroupableItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
GroupableItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
GroupableItemRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
GroupableItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
GroupableItemRef::CalendarDate(i) => out.push(EntityKey::CalendarDate(*i)),
GroupableItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
GroupableItemRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
GroupableItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
GroupableItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
GroupableItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
GroupableItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
GroupableItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
GroupableItemRef::CcDesignDateAndTimeAssignment(i) => {
out.push(EntityKey::CcDesignDateAndTimeAssignment(*i))
}
GroupableItemRef::CentreOfSymmetry(i) => out.push(EntityKey::CentreOfSymmetry(*i)),
GroupableItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
GroupableItemRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
GroupableItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
GroupableItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
GroupableItemRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
GroupableItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
GroupableItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
GroupableItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
GroupableItemRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
GroupableItemRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
GroupableItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
GroupableItemRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
GroupableItemRef::ConfigurationDesign(i) => {
out.push(EntityKey::ConfigurationDesign(*i))
}
GroupableItemRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
GroupableItemRef::ConfigurationItem(i) => out.push(EntityKey::ConfigurationItem(*i)),
GroupableItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
GroupableItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
GroupableItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
GroupableItemRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
GroupableItemRef::ConstructiveGeometryRepresentationRelationship(i) => out.push(
EntityKey::ConstructiveGeometryRepresentationRelationship(*i),
),
GroupableItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
GroupableItemRef::ContextDependentShapeRepresentation(i) => {
out.push(EntityKey::ContextDependentShapeRepresentation(*i))
}
GroupableItemRef::ContextDependentUnit(i) => {
out.push(EntityKey::ContextDependentUnit(*i))
}
GroupableItemRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
GroupableItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
GroupableItemRef::ConversionBasedUnit(i) => {
out.push(EntityKey::ConversionBasedUnit(*i))
}
GroupableItemRef::CoordinatedUniversalTimeOffset(i) => {
out.push(EntityKey::CoordinatedUniversalTimeOffset(*i))
}
GroupableItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
GroupableItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
GroupableItemRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
GroupableItemRef::DateAndTime(i) => out.push(EntityKey::DateAndTime(*i)),
GroupableItemRef::DateAndTimeAssignment(i) => {
out.push(EntityKey::DateAndTimeAssignment(*i))
}
GroupableItemRef::Datum(i) => out.push(EntityKey::Datum(*i)),
GroupableItemRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
GroupableItemRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
GroupableItemRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
GroupableItemRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
GroupableItemRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
GroupableItemRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
GroupableItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
GroupableItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
GroupableItemRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
GroupableItemRef::DefinitionalRepresentationRelationship(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationship(*i))
}
GroupableItemRef::DefinitionalRepresentationRelationshipWithSameContext(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationshipWithSameContext(*i))
}
GroupableItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
GroupableItemRef::DerivedShapeAspect(i) => out.push(EntityKey::DerivedShapeAspect(*i)),
GroupableItemRef::DerivedUnit(i) => out.push(EntityKey::DerivedUnit(*i)),
GroupableItemRef::DerivedUnitElement(i) => out.push(EntityKey::DerivedUnitElement(*i)),
GroupableItemRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
GroupableItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
GroupableItemRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
GroupableItemRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
GroupableItemRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
GroupableItemRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
GroupableItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
GroupableItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
GroupableItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
GroupableItemRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
GroupableItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
GroupableItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
GroupableItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
GroupableItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
GroupableItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
GroupableItemRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
GroupableItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
GroupableItemRef::ExternalSource(i) => out.push(EntityKey::ExternalSource(*i)),
GroupableItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
GroupableItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
GroupableItemRef::Face(i) => out.push(EntityKey::Face(*i)),
GroupableItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
GroupableItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
GroupableItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
GroupableItemRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
GroupableItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
GroupableItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
GroupableItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
GroupableItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
GroupableItemRef::FillAreaStyleTiles(i) => out.push(EntityKey::FillAreaStyleTiles(*i)),
GroupableItemRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
GroupableItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
GroupableItemRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
GroupableItemRef::GeometricItemSpecificUsage(i) => {
out.push(EntityKey::GeometricItemSpecificUsage(*i))
}
GroupableItemRef::GeometricRepresentationContext(i) => {
out.push(EntityKey::GeometricRepresentationContext(*i))
}
GroupableItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
GroupableItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
GroupableItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
GroupableItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
GroupableItemRef::GlobalUncertaintyAssignedContext(i) => {
out.push(EntityKey::GlobalUncertaintyAssignedContext(*i))
}
GroupableItemRef::GlobalUnitAssignedContext(i) => {
out.push(EntityKey::GlobalUnitAssignedContext(*i))
}
GroupableItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
GroupableItemRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
GroupableItemRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
GroupableItemRef::ItemDefinedTransformation(i) => {
out.push(EntityKey::ItemDefinedTransformation(*i))
}
GroupableItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
GroupableItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
GroupableItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
GroupableItemRef::LengthMeasureWithUnit(i) => {
out.push(EntityKey::LengthMeasureWithUnit(*i))
}
GroupableItemRef::LengthUnit(i) => out.push(EntityKey::LengthUnit(*i)),
GroupableItemRef::Line(i) => out.push(EntityKey::Line(*i)),
GroupableItemRef::LocalTime(i) => out.push(EntityKey::LocalTime(*i)),
GroupableItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
GroupableItemRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
GroupableItemRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
GroupableItemRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
GroupableItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
GroupableItemRef::MassMeasureWithUnit(i) => {
out.push(EntityKey::MassMeasureWithUnit(*i))
}
GroupableItemRef::MassUnit(i) => out.push(EntityKey::MassUnit(*i)),
GroupableItemRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
GroupableItemRef::MeasureWithUnit(i) => out.push(EntityKey::MeasureWithUnit(*i)),
GroupableItemRef::MechanicalDesignAndDraughtingRelationship(i) => {
out.push(EntityKey::MechanicalDesignAndDraughtingRelationship(*i))
}
GroupableItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
GroupableItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
GroupableItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
GroupableItemRef::NamedUnit(i) => out.push(EntityKey::NamedUnit(*i)),
GroupableItemRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
GroupableItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
GroupableItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
GroupableItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
GroupableItemRef::Organization(i) => out.push(EntityKey::Organization(*i)),
GroupableItemRef::OrganizationRelationship(i) => {
out.push(EntityKey::OrganizationRelationship(*i))
}
GroupableItemRef::OrganizationType(i) => out.push(EntityKey::OrganizationType(*i)),
GroupableItemRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
GroupableItemRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
GroupableItemRef::OrganizationalProjectRelationship(i) => {
out.push(EntityKey::OrganizationalProjectRelationship(*i))
}
GroupableItemRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
GroupableItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
GroupableItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
GroupableItemRef::ParametricRepresentationContext(i) => {
out.push(EntityKey::ParametricRepresentationContext(*i))
}
GroupableItemRef::Path(i) => out.push(EntityKey::Path(*i)),
GroupableItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
GroupableItemRef::Person(i) => out.push(EntityKey::Person(*i)),
GroupableItemRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
GroupableItemRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
GroupableItemRef::PersonalAddress(i) => out.push(EntityKey::PersonalAddress(*i)),
GroupableItemRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
GroupableItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
GroupableItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
GroupableItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
GroupableItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
GroupableItemRef::PlaneAngleMeasureWithUnit(i) => {
out.push(EntityKey::PlaneAngleMeasureWithUnit(*i))
}
GroupableItemRef::PlaneAngleUnit(i) => out.push(EntityKey::PlaneAngleUnit(*i)),
GroupableItemRef::Point(i) => out.push(EntityKey::Point(*i)),
GroupableItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
GroupableItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
GroupableItemRef::PrecisionQualifier(i) => out.push(EntityKey::PrecisionQualifier(*i)),
GroupableItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
GroupableItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
GroupableItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
GroupableItemRef::Product(i) => out.push(EntityKey::Product(*i)),
GroupableItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
GroupableItemRef::ProductConceptContext(i) => {
out.push(EntityKey::ProductConceptContext(*i))
}
GroupableItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
GroupableItemRef::ProductDefinitionContext(i) => {
out.push(EntityKey::ProductDefinitionContext(*i))
}
GroupableItemRef::ProductDefinitionEffectivity(i) => {
out.push(EntityKey::ProductDefinitionEffectivity(*i))
}
GroupableItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
GroupableItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
GroupableItemRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
GroupableItemRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
GroupableItemRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
GroupableItemRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
GroupableItemRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
GroupableItemRef::PropertyDefinitionRepresentation(i) => {
out.push(EntityKey::PropertyDefinitionRepresentation(*i))
}
GroupableItemRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
GroupableItemRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
GroupableItemRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
GroupableItemRef::RatioMeasureWithUnit(i) => {
out.push(EntityKey::RatioMeasureWithUnit(*i))
}
GroupableItemRef::RatioUnit(i) => out.push(EntityKey::RatioUnit(*i)),
GroupableItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
GroupableItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
GroupableItemRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
GroupableItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
GroupableItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
GroupableItemRef::RepresentationContext(i) => {
out.push(EntityKey::RepresentationContext(*i))
}
GroupableItemRef::RepresentationItem(i) => out.push(EntityKey::RepresentationItem(*i)),
GroupableItemRef::RepresentationRelationship(i) => {
out.push(EntityKey::RepresentationRelationship(*i))
}
GroupableItemRef::RepresentationRelationshipWithTransformation(i) => {
out.push(EntityKey::RepresentationRelationshipWithTransformation(*i))
}
GroupableItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
GroupableItemRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
GroupableItemRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
GroupableItemRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
GroupableItemRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
GroupableItemRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
GroupableItemRef::ShapeDefinitionRepresentation(i) => {
out.push(EntityKey::ShapeDefinitionRepresentation(*i))
}
GroupableItemRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
GroupableItemRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
GroupableItemRef::ShapeRepresentationRelationship(i) => {
out.push(EntityKey::ShapeRepresentationRelationship(*i))
}
GroupableItemRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
GroupableItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
GroupableItemRef::SiUnit(i) => out.push(EntityKey::SiUnit(*i)),
GroupableItemRef::SolidAngleUnit(i) => out.push(EntityKey::SolidAngleUnit(*i)),
GroupableItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
GroupableItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
GroupableItemRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
GroupableItemRef::StateType(i) => out.push(EntityKey::StateType(*i)),
GroupableItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
GroupableItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
GroupableItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
GroupableItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
GroupableItemRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
GroupableItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
GroupableItemRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
GroupableItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
GroupableItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
GroupableItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
GroupableItemRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
GroupableItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
GroupableItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
GroupableItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
GroupableItemRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
GroupableItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
GroupableItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
GroupableItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
GroupableItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
GroupableItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
GroupableItemRef::TimeUnit(i) => out.push(EntityKey::TimeUnit(*i)),
GroupableItemRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
GroupableItemRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
GroupableItemRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
GroupableItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
GroupableItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
GroupableItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
GroupableItemRef::TypeQualifier(i) => out.push(EntityKey::TypeQualifier(*i)),
GroupableItemRef::UncertaintyMeasureWithUnit(i) => {
out.push(EntityKey::UncertaintyMeasureWithUnit(*i))
}
GroupableItemRef::UncertaintyQualifier(i) => {
out.push(EntityKey::UncertaintyQualifier(*i))
}
GroupableItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
GroupableItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
GroupableItemRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
GroupableItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
GroupableItemRef::VersionedActionRequest(i) => {
out.push(EntityKey::VersionedActionRequest(*i))
}
GroupableItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
GroupableItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
GroupableItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
GroupableItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
GroupableItemRef::VolumeUnit(i) => out.push(EntityKey::VolumeUnit(*i)),
GroupableItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
GroupableItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_id_attribute_select(&self, r: &IdAttributeSelectRef) -> u64 {
match r {
IdAttributeSelectRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::Address(i) => self.address_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ApplicationContext(i) => {
self.application_context_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::AscribableStateRelationship(i) => {
self.ascribable_state_relationship_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::FaceBound(i) => {
self.face_bound_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
IdAttributeSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
IdAttributeSelectRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
IdAttributeSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
self.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned")
}
IdAttributeSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
IdAttributeSelectRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PersonalAddress(i) => {
self.personal_address_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ProductCategory(i) => {
self.product_category_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ProductRelatedProductCategory(i) => {
self.product_related_product_category_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
IdAttributeSelectRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::WireShell(i) => {
self.wire_shell_ids[i.0].expect("dep id assigned")
}
IdAttributeSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_id_attribute_select(r: &IdAttributeSelectRef, out: &mut Vec<EntityKey>) {
match r {
IdAttributeSelectRef::Action(i) => out.push(EntityKey::Action(*i)),
IdAttributeSelectRef::Address(i) => out.push(EntityKey::Address(*i)),
IdAttributeSelectRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
IdAttributeSelectRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
IdAttributeSelectRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
IdAttributeSelectRef::AngularLocation(i) => out.push(EntityKey::AngularLocation(*i)),
IdAttributeSelectRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
IdAttributeSelectRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
IdAttributeSelectRef::ApplicationContext(i) => {
out.push(EntityKey::ApplicationContext(*i))
}
IdAttributeSelectRef::AscribableStateRelationship(i) => {
out.push(EntityKey::AscribableStateRelationship(*i))
}
IdAttributeSelectRef::CentreOfSymmetry(i) => out.push(EntityKey::CentreOfSymmetry(*i)),
IdAttributeSelectRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
IdAttributeSelectRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
IdAttributeSelectRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
IdAttributeSelectRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
IdAttributeSelectRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
IdAttributeSelectRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
IdAttributeSelectRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
IdAttributeSelectRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
IdAttributeSelectRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
IdAttributeSelectRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
IdAttributeSelectRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
IdAttributeSelectRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
IdAttributeSelectRef::Datum(i) => out.push(EntityKey::Datum(*i)),
IdAttributeSelectRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
IdAttributeSelectRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
IdAttributeSelectRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
IdAttributeSelectRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
IdAttributeSelectRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
IdAttributeSelectRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
IdAttributeSelectRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
IdAttributeSelectRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
IdAttributeSelectRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
IdAttributeSelectRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
IdAttributeSelectRef::DimensionalSize(i) => out.push(EntityKey::DimensionalSize(*i)),
IdAttributeSelectRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
IdAttributeSelectRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
IdAttributeSelectRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
IdAttributeSelectRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
IdAttributeSelectRef::Edge(i) => out.push(EntityKey::Edge(*i)),
IdAttributeSelectRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
IdAttributeSelectRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
IdAttributeSelectRef::Face(i) => out.push(EntityKey::Face(*i)),
IdAttributeSelectRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
IdAttributeSelectRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
IdAttributeSelectRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
IdAttributeSelectRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
IdAttributeSelectRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
IdAttributeSelectRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
IdAttributeSelectRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
IdAttributeSelectRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
IdAttributeSelectRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
IdAttributeSelectRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
IdAttributeSelectRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
IdAttributeSelectRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
IdAttributeSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
IdAttributeSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
IdAttributeSelectRef::Group(i) => out.push(EntityKey::Group(*i)),
IdAttributeSelectRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
IdAttributeSelectRef::Loop(i) => out.push(EntityKey::Loop(*i)),
IdAttributeSelectRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
IdAttributeSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
IdAttributeSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
IdAttributeSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
IdAttributeSelectRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
IdAttributeSelectRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
IdAttributeSelectRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
IdAttributeSelectRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
IdAttributeSelectRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
IdAttributeSelectRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
IdAttributeSelectRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
IdAttributeSelectRef::Path(i) => out.push(EntityKey::Path(*i)),
IdAttributeSelectRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
IdAttributeSelectRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
IdAttributeSelectRef::PersonalAddress(i) => out.push(EntityKey::PersonalAddress(*i)),
IdAttributeSelectRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
IdAttributeSelectRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
IdAttributeSelectRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
IdAttributeSelectRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
IdAttributeSelectRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
IdAttributeSelectRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
IdAttributeSelectRef::ProductCategory(i) => out.push(EntityKey::ProductCategory(*i)),
IdAttributeSelectRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
IdAttributeSelectRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
IdAttributeSelectRef::ProductRelatedProductCategory(i) => {
out.push(EntityKey::ProductRelatedProductCategory(*i))
}
IdAttributeSelectRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
IdAttributeSelectRef::Representation(i) => out.push(EntityKey::Representation(*i)),
IdAttributeSelectRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
IdAttributeSelectRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
IdAttributeSelectRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
IdAttributeSelectRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
IdAttributeSelectRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
IdAttributeSelectRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
IdAttributeSelectRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
IdAttributeSelectRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
IdAttributeSelectRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
IdAttributeSelectRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
IdAttributeSelectRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
IdAttributeSelectRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
IdAttributeSelectRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
IdAttributeSelectRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
IdAttributeSelectRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
IdAttributeSelectRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
IdAttributeSelectRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
IdAttributeSelectRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
IdAttributeSelectRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
IdAttributeSelectRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
IdAttributeSelectRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
IdAttributeSelectRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
IdAttributeSelectRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
IdAttributeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_identification_role(&self, r: &IdentificationRoleRef) -> u64 {
match r {
IdentificationRoleRef::IdentificationRole(i) => {
self.identification_role_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_identification_role(r: &IdentificationRoleRef, out: &mut Vec<EntityKey>) {
match r {
IdentificationRoleRef::IdentificationRole(i) => {
out.push(EntityKey::IdentificationRole(*i))
}
}
}
fn id_of_ref_invisible_item(&self, r: &InvisibleItemRef) -> u64 {
match r {
InvisibleItemRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self
.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
InvisibleItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::PresentationLayerAssignment(i) => {
self.presentation_layer_assignment_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
InvisibleItemRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
InvisibleItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_invisible_item(r: &InvisibleItemRef, out: &mut Vec<EntityKey>) {
match r {
InvisibleItemRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
InvisibleItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
InvisibleItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
InvisibleItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
InvisibleItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
InvisibleItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
InvisibleItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
InvisibleItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
InvisibleItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
InvisibleItemRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
InvisibleItemRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
InvisibleItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
InvisibleItemRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
InvisibleItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
InvisibleItemRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
InvisibleItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
InvisibleItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
InvisibleItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
InvisibleItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
InvisibleItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
InvisibleItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
InvisibleItemRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
InvisibleItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
InvisibleItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
InvisibleItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
InvisibleItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
InvisibleItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
InvisibleItemRef::PresentationLayerAssignment(i) => {
out.push(EntityKey::PresentationLayerAssignment(*i))
}
InvisibleItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
InvisibleItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
InvisibleItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
InvisibleItemRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
InvisibleItemRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
InvisibleItemRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
InvisibleItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
InvisibleItemRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
InvisibleItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
InvisibleItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
InvisibleItemRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
InvisibleItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_item_defined_transformation(&self, r: &ItemDefinedTransformationRef) -> u64 {
match r {
ItemDefinedTransformationRef::ItemDefinedTransformation(i) => {
self.item_defined_transformation_ids[i.0].expect("dep id assigned")
}
ItemDefinedTransformationRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_item_defined_transformation(
r: &ItemDefinedTransformationRef,
out: &mut Vec<EntityKey>,
) {
match r {
ItemDefinedTransformationRef::ItemDefinedTransformation(i) => {
out.push(EntityKey::ItemDefinedTransformation(*i))
}
ItemDefinedTransformationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_item_identified_representation_usage_definition(
&self,
r: &ItemIdentifiedRepresentationUsageDefinitionRef,
) -> u64 {
match r {
ItemIdentifiedRepresentationUsageDefinitionRef::AllAroundShapeAspect(i) => self.all_around_shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularLocation(i) => self.angular_location_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularSize(i) => self.angular_size_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularityTolerance(i) => self.angularity_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedApprovalAssignment(i) => self.applied_approval_assignment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedDateAndTimeAssignment(i) => self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedDocumentReference(i) => self.applied_document_reference_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedExternalIdentificationAssignment(i) => self.applied_external_identification_assignment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedGroupAssignment(i) => self.applied_group_assignment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedPersonAndOrganizationAssignment(i) => self.applied_person_and_organization_assignment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::AssemblyComponentUsage(i) => self.assembly_component_usage_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CentreOfSymmetry(i) => self.centre_of_symmetry_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedItemWithinRepresentation(i) => self.characterized_item_within_representation_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedObject(i) => self.characterized_object_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CircularRunoutTolerance(i) => self.circular_runout_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CoaxialityTolerance(i) => self.coaxiality_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CommonDatum(i) => self.common_datum_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CompositeGroupShapeAspect(i) => self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CompositeShapeAspect(i) => self.composite_shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ConcentricityTolerance(i) => self.concentricity_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ContinuousShapeAspect(i) => self.continuous_shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::CylindricityTolerance(i) => self.cylindricity_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumFeature(i) => self.datum_feature_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumReferenceCompartment(i) => self.datum_reference_compartment_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumReferenceElement(i) => self.datum_reference_element_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumSystem(i) => self.datum_system_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumTarget(i) => self.datum_target_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DefaultModelGeometricView(i) => self.default_model_geometric_view_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DerivedShapeAspect(i) => self.derived_shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalLocation(i) => self.dimensional_location_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalLocationWithPath(i) => self.dimensional_location_with_path_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSize(i) => self.dimensional_size_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSizeWithDatumFeature(i) => self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSizeWithPath(i) => self.dimensional_size_with_path_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DirectedDimensionalLocation(i) => self.directed_dimensional_location_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::DocumentFile(i) => self.document_file_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::FeatureForDatumTargetRelationship(i) => self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::FlatnessTolerance(i) => self.flatness_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeneralDatumReference(i) => self.general_datum_reference_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeneralProperty(i) => self.general_property_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricTolerance(i) => self.geometric_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDatumReference(i) => self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDefinedUnit(i) => self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithModifiers(i) => self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::LineProfileTolerance(i) => self.line_profile_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::MakeFromUsageOption(i) => self.make_from_usage_option_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ModelGeometricView(i) => self.model_geometric_view_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ModifiedGeometricTolerance(i) => self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::NextAssemblyUsageOccurrence(i) => self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ParallelismTolerance(i) => self.parallelism_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::PerpendicularityTolerance(i) => self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::PlacedDatumTargetFeature(i) => self.placed_datum_target_feature_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::PositionTolerance(i) => self.position_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionRelationship(i) => self.product_definition_relationship_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionShape(i) => self.product_definition_shape_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionUsage(i) => self.product_definition_usage_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::PropertyDefinition(i) => self.property_definition_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::PropertyDefinitionRelationship(i) => self.property_definition_relationship_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::RoundnessTolerance(i) => self.roundness_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspect(i) => self.shape_aspect_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectAssociativity(i) => self.shape_aspect_associativity_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectDerivingRelationship(i) => self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectRelationship(i) => self.shape_aspect_relationship_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::StraightnessTolerance(i) => self.straightness_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::SurfaceProfileTolerance(i) => self.surface_profile_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::SymmetryTolerance(i) => self.symmetry_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ToleranceZone(i) => self.tolerance_zone_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::ToleranceZoneWithDatum(i) => self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::TotalRunoutTolerance(i) => self.total_runout_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::UnequallyDisposedGeometricTolerance(i) => self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageDefinitionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_item_identified_representation_usage_definition(
r: &ItemIdentifiedRepresentationUsageDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
ItemIdentifiedRepresentationUsageDefinitionRef::AllAroundShapeAspect(i) => out.push(EntityKey::AllAroundShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularLocation(i) => out.push(EntityKey::AngularLocation(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AngularityTolerance(i) => out.push(EntityKey::AngularityTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedApprovalAssignment(i) => out.push(EntityKey::AppliedApprovalAssignment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedDateAndTimeAssignment(i) => out.push(EntityKey::AppliedDateAndTimeAssignment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedDocumentReference(i) => out.push(EntityKey::AppliedDocumentReference(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedExternalIdentificationAssignment(i) => out.push(EntityKey::AppliedExternalIdentificationAssignment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedGroupAssignment(i) => out.push(EntityKey::AppliedGroupAssignment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AppliedPersonAndOrganizationAssignment(i) => out.push(EntityKey::AppliedPersonAndOrganizationAssignment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::AssemblyComponentUsage(i) => out.push(EntityKey::AssemblyComponentUsage(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CentreOfSymmetry(i) => out.push(EntityKey::CentreOfSymmetry(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedItemWithinRepresentation(i) => out.push(EntityKey::CharacterizedItemWithinRepresentation(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedObject(i) => out.push(EntityKey::CharacterizedObject(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CircularRunoutTolerance(i) => out.push(EntityKey::CircularRunoutTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CoaxialityTolerance(i) => out.push(EntityKey::CoaxialityTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CompositeGroupShapeAspect(i) => out.push(EntityKey::CompositeGroupShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CompositeShapeAspect(i) => out.push(EntityKey::CompositeShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ConcentricityTolerance(i) => out.push(EntityKey::ConcentricityTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ContinuousShapeAspect(i) => out.push(EntityKey::ContinuousShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::CylindricityTolerance(i) => out.push(EntityKey::CylindricityTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::Datum(i) => out.push(EntityKey::Datum(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumReferenceCompartment(i) => out.push(EntityKey::DatumReferenceCompartment(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumReferenceElement(i) => out.push(EntityKey::DatumReferenceElement(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DefaultModelGeometricView(i) => out.push(EntityKey::DefaultModelGeometricView(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DerivedShapeAspect(i) => out.push(EntityKey::DerivedShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalLocation(i) => out.push(EntityKey::DimensionalLocation(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalLocationWithPath(i) => out.push(EntityKey::DimensionalLocationWithPath(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSize(i) => out.push(EntityKey::DimensionalSize(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSizeWithDatumFeature(i) => out.push(EntityKey::DimensionalSizeWithDatumFeature(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DimensionalSizeWithPath(i) => out.push(EntityKey::DimensionalSizeWithPath(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DirectedDimensionalLocation(i) => out.push(EntityKey::DirectedDimensionalLocation(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::FeatureForDatumTargetRelationship(i) => out.push(EntityKey::FeatureForDatumTargetRelationship(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::FlatnessTolerance(i) => out.push(EntityKey::FlatnessTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeneralDatumReference(i) => out.push(EntityKey::GeneralDatumReference(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricTolerance(i) => out.push(EntityKey::GeometricTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDatumReference(i) => out.push(EntityKey::GeometricToleranceWithDatumReference(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDefinedAreaUnit(i) => out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithDefinedUnit(i) => out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithMaximumTolerance(i) => out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::GeometricToleranceWithModifiers(i) => out.push(EntityKey::GeometricToleranceWithModifiers(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::LineProfileTolerance(i) => out.push(EntityKey::LineProfileTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::MakeFromUsageOption(i) => out.push(EntityKey::MakeFromUsageOption(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ModelGeometricView(i) => out.push(EntityKey::ModelGeometricView(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ModifiedGeometricTolerance(i) => out.push(EntityKey::ModifiedGeometricTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::NextAssemblyUsageOccurrence(i) => out.push(EntityKey::NextAssemblyUsageOccurrence(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ParallelismTolerance(i) => out.push(EntityKey::ParallelismTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::PerpendicularityTolerance(i) => out.push(EntityKey::PerpendicularityTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::PlacedDatumTargetFeature(i) => out.push(EntityKey::PlacedDatumTargetFeature(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::PositionTolerance(i) => out.push(EntityKey::PositionTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionRelationship(i) => out.push(EntityKey::ProductDefinitionRelationship(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionShape(i) => out.push(EntityKey::ProductDefinitionShape(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ProductDefinitionUsage(i) => out.push(EntityKey::ProductDefinitionUsage(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::PropertyDefinitionRelationship(i) => out.push(EntityKey::PropertyDefinitionRelationship(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::RoundnessTolerance(i) => out.push(EntityKey::RoundnessTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectAssociativity(i) => out.push(EntityKey::ShapeAspectAssociativity(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectDerivingRelationship(i) => out.push(EntityKey::ShapeAspectDerivingRelationship(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ShapeAspectRelationship(i) => out.push(EntityKey::ShapeAspectRelationship(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::StraightnessTolerance(i) => out.push(EntityKey::StraightnessTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::SurfaceProfileTolerance(i) => out.push(EntityKey::SurfaceProfileTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::SymmetryTolerance(i) => out.push(EntityKey::SymmetryTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::ToleranceZoneWithDatum(i) => out.push(EntityKey::ToleranceZoneWithDatum(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::TotalRunoutTolerance(i) => out.push(EntityKey::TotalRunoutTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::UnequallyDisposedGeometricTolerance(i) => out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i)),
ItemIdentifiedRepresentationUsageDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_item_identified_representation_usage_select(
&self,
r: &ItemIdentifiedRepresentationUsageSelectRef,
) -> u64 {
match r {
ItemIdentifiedRepresentationUsageSelectRef::AdvancedFace(i) => self.advanced_face_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationCurveOccurrence(i) => self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationFillAreaOccurrence(i) => self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationOccurrence(i) => self.annotation_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderLeaderLine(i) => self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderOccurrence(i) => self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self.annotation_placeholder_occurrence_with_leader_line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlane(i) => self.annotation_plane_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationSymbol(i) => self.annotation_symbol_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationSymbolOccurrence(i) => self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationText(i) => self.annotation_text_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationTextCharacter(i) => self.annotation_text_character_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationTextOccurrence(i) => self.annotation_text_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationToAnnotationLeaderLine(i) => self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationToModelLeaderLine(i) => self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ApllPointWithSurface(i) => self.apll_point_with_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::AuxiliaryLeaderLine(i) => self.auxiliary_leader_line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Axis1Placement(i) => self.axis1_placement_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Axis2Placement2d(i) => self.axis2_placement2d_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Axis2Placement3d(i) => self.axis2_placement3d_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BSplineCurve(i) => self.b_spline_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BSplineCurveWithKnots(i) => self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BSplineSurface(i) => self.b_spline_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BSplineSurfaceWithKnots(i) => self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BezierCurve(i) => self.bezier_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BezierSurface(i) => self.bezier_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BoundedCurve(i) => self.bounded_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BoundedPcurve(i) => self.bounded_pcurve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BoundedSurface(i) => self.bounded_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BoundedSurfaceCurve(i) => self.bounded_surface_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::BrepWithVoids(i) => self.brep_with_voids_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraImage(i) => self.camera_image_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraImage3dWithScale(i) => self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraModel(i) => self.camera_model_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3(i) => self.camera_model_d3_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3MultiClipping(i) => self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3WithHlhsr(i) => self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CartesianPoint(i) => self.cartesian_point_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ComplexTriangulatedFace(i) => self.complex_triangulated_face_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ComplexTriangulatedSurfaceSet(i) => self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CompositeCurve(i) => self.composite_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CompositeText(i) => self.composite_text_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CompoundRepresentationItem(i) => self.compound_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ConicalSurface(i) => self.conical_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ConnectedFaceSet(i) => self.connected_face_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ContextDependentOverRidingStyledItem(i) => self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CoordinatesList(i) => self.coordinates_list_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::CylindricalSurface(i) => self.cylindrical_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DefinedCharacterGlyph(i) => self.defined_character_glyph_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DefinedSymbol(i) => self.defined_symbol_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DegenerateToroidalSurface(i) => self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DescriptiveRepresentationItem(i) => self.descriptive_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DraughtingAnnotationOccurrence(i) => self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::DraughtingCallout(i) => self.draughting_callout_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ElementarySurface(i) => self.elementary_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ExternallyDefinedHatchStyle(i) => self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ExternallyDefinedTileStyle(i) => self.externally_defined_tile_style_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FaceOuterBound(i) => self.face_outer_bound_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleHatching(i) => self.fill_area_style_hatching_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileColouredRegion(i) => self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileCurveWithStyle(i) => self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileSymbolWithStyle(i) => self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTiles(i) => self.fill_area_style_tiles_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::GeometricCurveSet(i) => self.geometric_curve_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::GeometricRepresentationItem(i) => self.geometric_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::GeometricSet(i) => self.geometric_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::IntegerRepresentationItem(i) => self.integer_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::IntersectionCurve(i) => self.intersection_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::LeaderDirectedCallout(i) => self.leader_directed_callout_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::LeaderTerminator(i) => self.leader_terminator_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ManifoldSolidBrep(i) => self.manifold_solid_brep_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::MappedItem(i) => self.mapped_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::MeasureRepresentationItem(i) => self.measure_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OffsetSurface(i) => self.offset_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OneDirectionRepeatFactor(i) => self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OrientedClosedShell(i) => self.oriented_closed_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OrientedEdge(i) => self.oriented_edge_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::OverRidingStyledItem(i) => self.over_riding_styled_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::PlanarExtent(i) => self.planar_extent_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::QualifiedRepresentationItem(i) => self.qualified_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::QuasiUniformCurve(i) => self.quasi_uniform_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::QuasiUniformSurface(i) => self.quasi_uniform_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::RationalBSplineCurve(i) => self.rational_b_spline_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::RationalBSplineSurface(i) => self.rational_b_spline_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::RealRepresentationItem(i) => self.real_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::RepositionedTessellatedItem(i) => self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::RepresentationItem(i) => self.representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ShellBasedSurfaceModel(i) => self.shell_based_surface_model_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SolidModel(i) => self.solid_model_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SphericalSurface(i) => self.spherical_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceCurve(i) => self.surface_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceOfLinearExtrusion(i) => self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceOfRevolution(i) => self.surface_of_revolution_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SweptSurface(i) => self.swept_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::SymbolTarget(i) => self.symbol_target_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TerminatorSymbol(i) => self.terminator_symbol_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedAnnotationOccurrence(i) => self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedCurveSet(i) => self.tessellated_curve_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedFace(i) => self.tessellated_face_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedGeometricSet(i) => self.tessellated_geometric_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedItem(i) => self.tessellated_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedShell(i) => self.tessellated_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedSolid(i) => self.tessellated_solid_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedStructuredItem(i) => self.tessellated_structured_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedSurfaceSet(i) => self.tessellated_surface_set_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TextLiteral(i) => self.text_literal_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TopologicalRepresentationItem(i) => self.topological_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ToroidalSurface(i) => self.toroidal_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TrimmedCurve(i) => self.trimmed_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::TwoDirectionRepeatFactor(i) => self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::UniformCurve(i) => self.uniform_curve_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::UniformSurface(i) => self.uniform_surface_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ValueRepresentationItem(i) => self.value_representation_item_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::VertexPoint(i) => self.vertex_point_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::VertexShell(i) => self.vertex_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
ItemIdentifiedRepresentationUsageSelectRef::ListRepresentationItem(_) => panic!("aggregate via single id_of"),
ItemIdentifiedRepresentationUsageSelectRef::SetRepresentationItem(_) => panic!("aggregate via single id_of"),
}
}
fn deps_ref_item_identified_representation_usage_select(
r: &ItemIdentifiedRepresentationUsageSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
ItemIdentifiedRepresentationUsageSelectRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationCurveOccurrence(i) => out.push(EntityKey::AnnotationCurveOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationFillAreaOccurrence(i) => out.push(EntityKey::AnnotationFillAreaOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationOccurrence(i) => out.push(EntityKey::AnnotationOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderLeaderLine(i) => out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderOccurrence(i) => out.push(EntityKey::AnnotationPlaceholderOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationSymbolOccurrence(i) => out.push(EntityKey::AnnotationSymbolOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationTextCharacter(i) => out.push(EntityKey::AnnotationTextCharacter(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationTextOccurrence(i) => out.push(EntityKey::AnnotationTextOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationToAnnotationLeaderLine(i) => out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AnnotationToModelLeaderLine(i) => out.push(EntityKey::AnnotationToModelLeaderLine(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ApllPointWithSurface(i) => out.push(EntityKey::ApllPointWithSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::AuxiliaryLeaderLine(i) => out.push(EntityKey::AuxiliaryLeaderLine(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BSplineCurveWithKnots(i) => out.push(EntityKey::BSplineCurveWithKnots(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BSplineSurfaceWithKnots(i) => out.push(EntityKey::BSplineSurfaceWithKnots(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BoundedSurfaceCurve(i) => out.push(EntityKey::BoundedSurfaceCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraImage3dWithScale(i) => out.push(EntityKey::CameraImage3dWithScale(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3MultiClipping(i) => out.push(EntityKey::CameraModelD3MultiClipping(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CameraModelD3WithHlhsr(i) => out.push(EntityKey::CameraModelD3WithHlhsr(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Circle(i) => out.push(EntityKey::Circle(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ComplexTriangulatedFace(i) => out.push(EntityKey::ComplexTriangulatedFace(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ComplexTriangulatedSurfaceSet(i) => out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CompoundRepresentationItem(i) => out.push(EntityKey::CompoundRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Conic(i) => out.push(EntityKey::Conic(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ContextDependentOverRidingStyledItem(i) => out.push(EntityKey::ContextDependentOverRidingStyledItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Curve(i) => out.push(EntityKey::Curve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DefinedCharacterGlyph(i) => out.push(EntityKey::DefinedCharacterGlyph(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DegenerateToroidalSurface(i) => out.push(EntityKey::DegenerateToroidalSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DescriptiveRepresentationItem(i) => out.push(EntityKey::DescriptiveRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Direction(i) => out.push(EntityKey::Direction(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DraughtingAnnotationOccurrence(i) => out.push(EntityKey::DraughtingAnnotationOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Edge(i) => out.push(EntityKey::Edge(*i)),
ItemIdentifiedRepresentationUsageSelectRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ExternallyDefinedHatchStyle(i) => out.push(EntityKey::ExternallyDefinedHatchStyle(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ExternallyDefinedTileStyle(i) => out.push(EntityKey::ExternallyDefinedTileStyle(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Face(i) => out.push(EntityKey::Face(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleHatching(i) => out.push(EntityKey::FillAreaStyleHatching(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileColouredRegion(i) => out.push(EntityKey::FillAreaStyleTileColouredRegion(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileCurveWithStyle(i) => out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTileSymbolWithStyle(i) => out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i)),
ItemIdentifiedRepresentationUsageSelectRef::FillAreaStyleTiles(i) => out.push(EntityKey::FillAreaStyleTiles(*i)),
ItemIdentifiedRepresentationUsageSelectRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::GeometricRepresentationItem(i) => out.push(EntityKey::GeometricRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
ItemIdentifiedRepresentationUsageSelectRef::IntegerRepresentationItem(i) => out.push(EntityKey::IntegerRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::LeaderDirectedCallout(i) => out.push(EntityKey::LeaderDirectedCallout(*i)),
ItemIdentifiedRepresentationUsageSelectRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Line(i) => out.push(EntityKey::Line(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Loop(i) => out.push(EntityKey::Loop(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
ItemIdentifiedRepresentationUsageSelectRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::MeasureRepresentationItem(i) => out.push(EntityKey::MeasureRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OneDirectionRepeatFactor(i) => out.push(EntityKey::OneDirectionRepeatFactor(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
ItemIdentifiedRepresentationUsageSelectRef::OverRidingStyledItem(i) => out.push(EntityKey::OverRidingStyledItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Path(i) => out.push(EntityKey::Path(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Placement(i) => out.push(EntityKey::Placement(*i)),
ItemIdentifiedRepresentationUsageSelectRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
ItemIdentifiedRepresentationUsageSelectRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Plane(i) => out.push(EntityKey::Plane(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Point(i) => out.push(EntityKey::Point(*i)),
ItemIdentifiedRepresentationUsageSelectRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
ItemIdentifiedRepresentationUsageSelectRef::QualifiedRepresentationItem(i) => out.push(EntityKey::QualifiedRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::QuasiUniformSurface(i) => out.push(EntityKey::QuasiUniformSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::RationalBSplineCurve(i) => out.push(EntityKey::RationalBSplineCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::RationalBSplineSurface(i) => out.push(EntityKey::RationalBSplineSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::RealRepresentationItem(i) => out.push(EntityKey::RealRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::RepositionedTessellatedItem(i) => out.push(EntityKey::RepositionedTessellatedItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::RepresentationItem(i) => out.push(EntityKey::RepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ShellBasedSurfaceModel(i) => out.push(EntityKey::ShellBasedSurfaceModel(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Surface(i) => out.push(EntityKey::Surface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceOfLinearExtrusion(i) => out.push(EntityKey::SurfaceOfLinearExtrusion(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SurfaceOfRevolution(i) => out.push(EntityKey::SurfaceOfRevolution(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedAnnotationOccurrence(i) => out.push(EntityKey::TessellatedAnnotationOccurrence(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedCurveSet(i) => out.push(EntityKey::TessellatedCurveSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedGeometricSet(i) => out.push(EntityKey::TessellatedGeometricSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedStructuredItem(i) => out.push(EntityKey::TessellatedStructuredItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TessellatedSurfaceSet(i) => out.push(EntityKey::TessellatedSurfaceSet(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TopologicalRepresentationItem(i) => out.push(EntityKey::TopologicalRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::TwoDirectionRepeatFactor(i) => out.push(EntityKey::TwoDirectionRepeatFactor(*i)),
ItemIdentifiedRepresentationUsageSelectRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
ItemIdentifiedRepresentationUsageSelectRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ValueRepresentationItem(i) => out.push(EntityKey::ValueRepresentationItem(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Vector(i) => out.push(EntityKey::Vector(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
ItemIdentifiedRepresentationUsageSelectRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
ItemIdentifiedRepresentationUsageSelectRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
ItemIdentifiedRepresentationUsageSelectRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
ItemIdentifiedRepresentationUsageSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
ItemIdentifiedRepresentationUsageSelectRef::ListRepresentationItem(vs) => { for e in vs { Self::deps_ref_representation_item(e, out); } },
ItemIdentifiedRepresentationUsageSelectRef::SetRepresentationItem(vs) => { for e in vs { Self::deps_ref_representation_item(e, out); } },
}
}
fn id_of_ref_layered_item(&self, r: &LayeredItemRef) -> u64 {
match r {
LayeredItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
LayeredItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BezierCurve(i) => self.bezier_curve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CameraImage(i) => self.camera_image_ids[i.0].expect("dep id assigned"),
LayeredItemRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CameraModel(i) => self.camera_model_ids[i.0].expect("dep id assigned"),
LayeredItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
LayeredItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
LayeredItemRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
LayeredItemRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
LayeredItemRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::FaceSurface(i) => self.face_surface_ids[i.0].expect("dep id assigned"),
LayeredItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
LayeredItemRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::MappedItem(i) => self.mapped_item_ids[i.0].expect("dep id assigned"),
LayeredItemRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
LayeredItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
LayeredItemRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
LayeredItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
LayeredItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
LayeredItemRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
LayeredItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SolidModel(i) => self.solid_model_ids[i.0].expect("dep id assigned"),
LayeredItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
LayeredItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TextLiteral(i) => self.text_literal_ids[i.0].expect("dep id assigned"),
LayeredItemRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
LayeredItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
LayeredItemRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
LayeredItemRef::VertexPoint(i) => self.vertex_point_ids[i.0].expect("dep id assigned"),
LayeredItemRef::VertexShell(i) => self.vertex_shell_ids[i.0].expect("dep id assigned"),
LayeredItemRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
LayeredItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_layered_item(r: &LayeredItemRef, out: &mut Vec<EntityKey>) {
match r {
LayeredItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
LayeredItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
LayeredItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
LayeredItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
LayeredItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
LayeredItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
LayeredItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
LayeredItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
LayeredItemRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
LayeredItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
LayeredItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
LayeredItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
LayeredItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
LayeredItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
LayeredItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
LayeredItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
LayeredItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
LayeredItemRef::AuxiliaryLeaderLine(i) => out.push(EntityKey::AuxiliaryLeaderLine(*i)),
LayeredItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
LayeredItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
LayeredItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
LayeredItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
LayeredItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
LayeredItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
LayeredItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
LayeredItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
LayeredItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
LayeredItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
LayeredItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
LayeredItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
LayeredItemRef::BoundedSurfaceCurve(i) => out.push(EntityKey::BoundedSurfaceCurve(*i)),
LayeredItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
LayeredItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
LayeredItemRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
LayeredItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
LayeredItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
LayeredItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
LayeredItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
LayeredItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
LayeredItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
LayeredItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
LayeredItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
LayeredItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
LayeredItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
LayeredItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
LayeredItemRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
LayeredItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
LayeredItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
LayeredItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
LayeredItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
LayeredItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
LayeredItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
LayeredItemRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
LayeredItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
LayeredItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
LayeredItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
LayeredItemRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
LayeredItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
LayeredItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
LayeredItemRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
LayeredItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
LayeredItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
LayeredItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
LayeredItemRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
LayeredItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
LayeredItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
LayeredItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
LayeredItemRef::Face(i) => out.push(EntityKey::Face(*i)),
LayeredItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
LayeredItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
LayeredItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
LayeredItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
LayeredItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
LayeredItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
LayeredItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
LayeredItemRef::FillAreaStyleTiles(i) => out.push(EntityKey::FillAreaStyleTiles(*i)),
LayeredItemRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
LayeredItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
LayeredItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
LayeredItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
LayeredItemRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
LayeredItemRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
LayeredItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
LayeredItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
LayeredItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
LayeredItemRef::Line(i) => out.push(EntityKey::Line(*i)),
LayeredItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
LayeredItemRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
LayeredItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
LayeredItemRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
LayeredItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
LayeredItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
LayeredItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
LayeredItemRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
LayeredItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
LayeredItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
LayeredItemRef::Path(i) => out.push(EntityKey::Path(*i)),
LayeredItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
LayeredItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
LayeredItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
LayeredItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
LayeredItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
LayeredItemRef::Point(i) => out.push(EntityKey::Point(*i)),
LayeredItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
LayeredItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
LayeredItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
LayeredItemRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
LayeredItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
LayeredItemRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
LayeredItemRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
LayeredItemRef::QuasiUniformSurface(i) => out.push(EntityKey::QuasiUniformSurface(*i)),
LayeredItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
LayeredItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
LayeredItemRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
LayeredItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
LayeredItemRef::RepresentationItem(i) => out.push(EntityKey::RepresentationItem(*i)),
LayeredItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
LayeredItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
LayeredItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
LayeredItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
LayeredItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
LayeredItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
LayeredItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
LayeredItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
LayeredItemRef::SurfaceOfRevolution(i) => out.push(EntityKey::SurfaceOfRevolution(*i)),
LayeredItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
LayeredItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
LayeredItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
LayeredItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
LayeredItemRef::TessellatedCurveSet(i) => out.push(EntityKey::TessellatedCurveSet(*i)),
LayeredItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
LayeredItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
LayeredItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
LayeredItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
LayeredItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
LayeredItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
LayeredItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
LayeredItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
LayeredItemRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
LayeredItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
LayeredItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
LayeredItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
LayeredItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
LayeredItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
LayeredItemRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
LayeredItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
LayeredItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
LayeredItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
LayeredItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
LayeredItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
LayeredItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
LayeredItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_length_measure_with_unit(&self, r: &LengthMeasureWithUnitRef) -> u64 {
match r {
LengthMeasureWithUnitRef::LengthMeasureWithUnit(i) => {
self.length_measure_with_unit_ids[i.0].expect("dep id assigned")
}
LengthMeasureWithUnitRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_length_measure_with_unit(r: &LengthMeasureWithUnitRef, out: &mut Vec<EntityKey>) {
match r {
LengthMeasureWithUnitRef::LengthMeasureWithUnit(i) => {
out.push(EntityKey::LengthMeasureWithUnit(*i))
}
LengthMeasureWithUnitRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_length_or_plane_angle_measure_with_unit_select(
&self,
r: &LengthOrPlaneAngleMeasureWithUnitSelectRef,
) -> u64 {
match r {
LengthOrPlaneAngleMeasureWithUnitSelectRef::LengthMeasureWithUnit(i) => {
self.length_measure_with_unit_ids[i.0].expect("dep id assigned")
}
LengthOrPlaneAngleMeasureWithUnitSelectRef::PlaneAngleMeasureWithUnit(i) => {
self.plane_angle_measure_with_unit_ids[i.0].expect("dep id assigned")
}
LengthOrPlaneAngleMeasureWithUnitSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_length_or_plane_angle_measure_with_unit_select(
r: &LengthOrPlaneAngleMeasureWithUnitSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
LengthOrPlaneAngleMeasureWithUnitSelectRef::LengthMeasureWithUnit(i) => {
out.push(EntityKey::LengthMeasureWithUnit(*i))
}
LengthOrPlaneAngleMeasureWithUnitSelectRef::PlaneAngleMeasureWithUnit(i) => {
out.push(EntityKey::PlaneAngleMeasureWithUnit(*i))
}
LengthOrPlaneAngleMeasureWithUnitSelectRef::Complex(i) => {
out.push(EntityKey::ComplexUnit(*i))
}
}
}
fn id_of_ref_local_time(&self, r: &LocalTimeRef) -> u64 {
match r {
LocalTimeRef::LocalTime(i) => self.local_time_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_local_time(r: &LocalTimeRef, out: &mut Vec<EntityKey>) {
match r {
LocalTimeRef::LocalTime(i) => out.push(EntityKey::LocalTime(*i)),
}
}
fn id_of_ref_loop(&self, r: &LoopRef) -> u64 {
match r {
LoopRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
LoopRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
LoopRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
LoopRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
LoopRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_loop(r: &LoopRef, out: &mut Vec<EntityKey>) {
match r {
LoopRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
LoopRef::Loop(i) => out.push(EntityKey::Loop(*i)),
LoopRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
LoopRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
LoopRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_manifold_solid_brep(&self, r: &ManifoldSolidBrepRef) -> u64 {
match r {
ManifoldSolidBrepRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
ManifoldSolidBrepRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
ManifoldSolidBrepRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_manifold_solid_brep(r: &ManifoldSolidBrepRef, out: &mut Vec<EntityKey>) {
match r {
ManifoldSolidBrepRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
ManifoldSolidBrepRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
ManifoldSolidBrepRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_marker_select(&self, r: &MarkerSelectRef) -> u64 {
match r {
MarkerSelectRef::PreDefinedMarker(i) => {
self.pre_defined_marker_ids[i.0].expect("dep id assigned")
}
MarkerSelectRef::PreDefinedPointMarkerSymbol(i) => {
self.pre_defined_point_marker_symbol_ids[i.0].expect("dep id assigned")
}
MarkerSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
MarkerSelectRef::MarkerType(_) => panic!("enum via single id_of"),
}
}
fn deps_ref_marker_select(r: &MarkerSelectRef, out: &mut Vec<EntityKey>) {
match r {
MarkerSelectRef::PreDefinedMarker(i) => out.push(EntityKey::PreDefinedMarker(*i)),
MarkerSelectRef::PreDefinedPointMarkerSymbol(i) => {
out.push(EntityKey::PreDefinedPointMarkerSymbol(*i))
}
MarkerSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
MarkerSelectRef::MarkerType(_) => {}
}
}
fn id_of_ref_measure_with_unit(&self, r: &MeasureWithUnitRef) -> u64 {
match r {
MeasureWithUnitRef::LengthMeasureWithUnit(i) => {
self.length_measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::MassMeasureWithUnit(i) => {
self.mass_measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::MeasureWithUnit(i) => {
self.measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::PlaneAngleMeasureWithUnit(i) => {
self.plane_angle_measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::RatioMeasureWithUnit(i) => {
self.ratio_measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::UncertaintyMeasureWithUnit(i) => {
self.uncertainty_measure_with_unit_ids[i.0].expect("dep id assigned")
}
MeasureWithUnitRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_measure_with_unit(r: &MeasureWithUnitRef, out: &mut Vec<EntityKey>) {
match r {
MeasureWithUnitRef::LengthMeasureWithUnit(i) => {
out.push(EntityKey::LengthMeasureWithUnit(*i))
}
MeasureWithUnitRef::MassMeasureWithUnit(i) => {
out.push(EntityKey::MassMeasureWithUnit(*i))
}
MeasureWithUnitRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
MeasureWithUnitRef::MeasureWithUnit(i) => out.push(EntityKey::MeasureWithUnit(*i)),
MeasureWithUnitRef::PlaneAngleMeasureWithUnit(i) => {
out.push(EntityKey::PlaneAngleMeasureWithUnit(*i))
}
MeasureWithUnitRef::RatioMeasureWithUnit(i) => {
out.push(EntityKey::RatioMeasureWithUnit(*i))
}
MeasureWithUnitRef::UncertaintyMeasureWithUnit(i) => {
out.push(EntityKey::UncertaintyMeasureWithUnit(*i))
}
MeasureWithUnitRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_mechanical_design_and_draughting_relationship_select(
&self,
r: &MechanicalDesignAndDraughtingRelationshipSelectRef,
) -> u64 {
match r {
MechanicalDesignAndDraughtingRelationshipSelectRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
MechanicalDesignAndDraughtingRelationshipSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_mechanical_design_and_draughting_relationship_select(
r: &MechanicalDesignAndDraughtingRelationshipSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
MechanicalDesignAndDraughtingRelationshipSelectRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
MechanicalDesignAndDraughtingRelationshipSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_name_attribute_select(&self, r: &NameAttributeSelectRef) -> u64 {
match r {
NameAttributeSelectRef::ActionRequestSolution(i) => {
self.action_request_solution_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::Address(i) => self.address_ids[i.0].expect("dep id assigned"),
NameAttributeSelectRef::AreaUnit(i) => {
self.area_unit_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ConfigurationDesign(i) => {
self.configuration_design_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ConfigurationEffectivity(i) => {
self.configuration_effectivity_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ContextDependentShapeRepresentation(i) => {
self.context_dependent_shape_representation_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::DerivedUnit(i) => {
self.derived_unit_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::Effectivity(i) => {
self.effectivity_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::OrganizationalAddress(i) => {
self.organizational_address_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::PersonAndOrganizationAddress(i) => {
self.person_and_organization_address_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::PersonalAddress(i) => {
self.personal_address_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ProductDefinitionEffectivity(i) => {
self.product_definition_effectivity_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ProductDefinitionSubstitute(i) => {
self.product_definition_substitute_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::PropertyDefinitionRepresentation(i) => {
self.property_definition_representation_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::ShapeDefinitionRepresentation(i) => {
self.shape_definition_representation_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::VolumeUnit(i) => {
self.volume_unit_ids[i.0].expect("dep id assigned")
}
NameAttributeSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_name_attribute_select(r: &NameAttributeSelectRef, out: &mut Vec<EntityKey>) {
match r {
NameAttributeSelectRef::ActionRequestSolution(i) => {
out.push(EntityKey::ActionRequestSolution(*i))
}
NameAttributeSelectRef::Address(i) => out.push(EntityKey::Address(*i)),
NameAttributeSelectRef::AreaUnit(i) => out.push(EntityKey::AreaUnit(*i)),
NameAttributeSelectRef::ConfigurationDesign(i) => {
out.push(EntityKey::ConfigurationDesign(*i))
}
NameAttributeSelectRef::ConfigurationEffectivity(i) => {
out.push(EntityKey::ConfigurationEffectivity(*i))
}
NameAttributeSelectRef::ContextDependentShapeRepresentation(i) => {
out.push(EntityKey::ContextDependentShapeRepresentation(*i))
}
NameAttributeSelectRef::DerivedUnit(i) => out.push(EntityKey::DerivedUnit(*i)),
NameAttributeSelectRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
NameAttributeSelectRef::OrganizationalAddress(i) => {
out.push(EntityKey::OrganizationalAddress(*i))
}
NameAttributeSelectRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
NameAttributeSelectRef::PersonAndOrganizationAddress(i) => {
out.push(EntityKey::PersonAndOrganizationAddress(*i))
}
NameAttributeSelectRef::PersonalAddress(i) => out.push(EntityKey::PersonalAddress(*i)),
NameAttributeSelectRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
NameAttributeSelectRef::ProductDefinitionEffectivity(i) => {
out.push(EntityKey::ProductDefinitionEffectivity(*i))
}
NameAttributeSelectRef::ProductDefinitionSubstitute(i) => {
out.push(EntityKey::ProductDefinitionSubstitute(*i))
}
NameAttributeSelectRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
NameAttributeSelectRef::PropertyDefinitionRepresentation(i) => {
out.push(EntityKey::PropertyDefinitionRepresentation(*i))
}
NameAttributeSelectRef::ShapeDefinitionRepresentation(i) => {
out.push(EntityKey::ShapeDefinitionRepresentation(*i))
}
NameAttributeSelectRef::VolumeUnit(i) => out.push(EntityKey::VolumeUnit(*i)),
NameAttributeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_named_unit(&self, r: &NamedUnitRef) -> u64 {
match r {
NamedUnitRef::ContextDependentUnit(i) => {
self.context_dependent_unit_ids[i.0].expect("dep id assigned")
}
NamedUnitRef::ConversionBasedUnit(i) => {
self.conversion_based_unit_ids[i.0].expect("dep id assigned")
}
NamedUnitRef::LengthUnit(i) => self.length_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::MassUnit(i) => self.mass_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::NamedUnit(i) => self.named_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::PlaneAngleUnit(i) => {
self.plane_angle_unit_ids[i.0].expect("dep id assigned")
}
NamedUnitRef::RatioUnit(i) => self.ratio_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::SiUnit(i) => self.si_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::SolidAngleUnit(i) => {
self.solid_angle_unit_ids[i.0].expect("dep id assigned")
}
NamedUnitRef::TimeUnit(i) => self.time_unit_ids[i.0].expect("dep id assigned"),
NamedUnitRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_named_unit(r: &NamedUnitRef, out: &mut Vec<EntityKey>) {
match r {
NamedUnitRef::ContextDependentUnit(i) => out.push(EntityKey::ContextDependentUnit(*i)),
NamedUnitRef::ConversionBasedUnit(i) => out.push(EntityKey::ConversionBasedUnit(*i)),
NamedUnitRef::LengthUnit(i) => out.push(EntityKey::LengthUnit(*i)),
NamedUnitRef::MassUnit(i) => out.push(EntityKey::MassUnit(*i)),
NamedUnitRef::NamedUnit(i) => out.push(EntityKey::NamedUnit(*i)),
NamedUnitRef::PlaneAngleUnit(i) => out.push(EntityKey::PlaneAngleUnit(*i)),
NamedUnitRef::RatioUnit(i) => out.push(EntityKey::RatioUnit(*i)),
NamedUnitRef::SiUnit(i) => out.push(EntityKey::SiUnit(*i)),
NamedUnitRef::SolidAngleUnit(i) => out.push(EntityKey::SolidAngleUnit(*i)),
NamedUnitRef::TimeUnit(i) => out.push(EntityKey::TimeUnit(*i)),
NamedUnitRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_object_role(&self, r: &ObjectRoleRef) -> u64 {
match r {
ObjectRoleRef::ObjectRole(i) => self.object_role_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_object_role(r: &ObjectRoleRef, out: &mut Vec<EntityKey>) {
match r {
ObjectRoleRef::ObjectRole(i) => out.push(EntityKey::ObjectRole(*i)),
}
}
fn id_of_ref_one_direction_repeat_factor(&self, r: &OneDirectionRepeatFactorRef) -> u64 {
match r {
OneDirectionRepeatFactorRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
OneDirectionRepeatFactorRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
OneDirectionRepeatFactorRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_one_direction_repeat_factor(
r: &OneDirectionRepeatFactorRef,
out: &mut Vec<EntityKey>,
) {
match r {
OneDirectionRepeatFactorRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
OneDirectionRepeatFactorRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
OneDirectionRepeatFactorRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_organization(&self, r: &OrganizationRef) -> u64 {
match r {
OrganizationRef::Organization(i) => {
self.organization_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_organization(r: &OrganizationRef, out: &mut Vec<EntityKey>) {
match r {
OrganizationRef::Organization(i) => out.push(EntityKey::Organization(*i)),
}
}
fn id_of_ref_organizational_project(&self, r: &OrganizationalProjectRef) -> u64 {
match r {
OrganizationalProjectRef::OrganizationalProject(i) => {
self.organizational_project_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_organizational_project(r: &OrganizationalProjectRef, out: &mut Vec<EntityKey>) {
match r {
OrganizationalProjectRef::OrganizationalProject(i) => {
out.push(EntityKey::OrganizationalProject(*i))
}
}
}
fn id_of_ref_oriented_closed_shell(&self, r: &OrientedClosedShellRef) -> u64 {
match r {
OrientedClosedShellRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
OrientedClosedShellRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_oriented_closed_shell(r: &OrientedClosedShellRef, out: &mut Vec<EntityKey>) {
match r {
OrientedClosedShellRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
OrientedClosedShellRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_oriented_edge(&self, r: &OrientedEdgeRef) -> u64 {
match r {
OrientedEdgeRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
OrientedEdgeRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_oriented_edge(r: &OrientedEdgeRef, out: &mut Vec<EntityKey>) {
match r {
OrientedEdgeRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
OrientedEdgeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_pcurve_or_surface(&self, r: &PcurveOrSurfaceRef) -> u64 {
match r {
PcurveOrSurfaceRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
PcurveOrSurfaceRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
PcurveOrSurfaceRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
PcurveOrSurfaceRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
PcurveOrSurfaceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_pcurve_or_surface(r: &PcurveOrSurfaceRef, out: &mut Vec<EntityKey>) {
match r {
PcurveOrSurfaceRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
PcurveOrSurfaceRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
PcurveOrSurfaceRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
PcurveOrSurfaceRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
PcurveOrSurfaceRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
PcurveOrSurfaceRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
PcurveOrSurfaceRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
PcurveOrSurfaceRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
PcurveOrSurfaceRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
PcurveOrSurfaceRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
PcurveOrSurfaceRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
PcurveOrSurfaceRef::Plane(i) => out.push(EntityKey::Plane(*i)),
PcurveOrSurfaceRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
PcurveOrSurfaceRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
PcurveOrSurfaceRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
PcurveOrSurfaceRef::Surface(i) => out.push(EntityKey::Surface(*i)),
PcurveOrSurfaceRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
PcurveOrSurfaceRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
PcurveOrSurfaceRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
PcurveOrSurfaceRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
PcurveOrSurfaceRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
PcurveOrSurfaceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_person_and_organization_item(&self, r: &PersonAndOrganizationItemRef) -> u64 {
match r {
PersonAndOrganizationItemRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ActionDirective(i) => self.action_directive_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ActionMethod(i) => self.action_method_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ActionProperty(i) => self.action_property_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ActionRelationship(i) => self.action_relationship_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ActionRequestSolution(i) => self.action_request_solution_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AppliedDateAndTimeAssignment(i) => self.applied_date_and_time_assignment_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AppliedDocumentReference(i) => self.applied_document_reference_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AppliedPersonAndOrganizationAssignment(i) => self.applied_person_and_organization_assignment_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Approval(i) => self.approval_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ApprovalStatus(i) => self.approval_status_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AscribableState(i) => self.ascribable_state_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::AssemblyComponentUsage(i) => self.assembly_component_usage_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::CcDesignDateAndTimeAssignment(i) => self.cc_design_date_and_time_assignment_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Certification(i) => self.certification_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ConfigurationDesign(i) => self.configuration_design_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ConfigurationEffectivity(i) => self.configuration_effectivity_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ConfigurationItem(i) => self.configuration_item_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Contract(i) => self.contract_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DateAndTimeAssignment(i) => self.date_and_time_assignment_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DesignContext(i) => self.design_context_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DocumentFile(i) => self.document_file_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DocumentType(i) => self.document_type_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Effectivity(i) => self.effectivity_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::GeneralProperty(i) => self.general_property_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::MakeFromUsageOption(i) => self.make_from_usage_option_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::NextAssemblyUsageOccurrence(i) => self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Organization(i) => self.organization_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::OrganizationRelationship(i) => self.organization_relationship_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::OrganizationalAddress(i) => self.organizational_address_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::OrganizationalProject(i) => self.organizational_project_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PersonAndOrganization(i) => self.person_and_organization_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PersonAndOrganizationAddress(i) => self.person_and_organization_address_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PresentationArea(i) => self.presentation_area_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PresentationRepresentation(i) => self.presentation_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PresentationView(i) => self.presentation_view_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductConcept(i) => self.product_concept_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductConceptFeature(i) => self.product_concept_feature_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductConceptFeatureCategory(i) => self.product_concept_feature_category_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinition(i) => self.product_definition_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionContext(i) => self.product_definition_context_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionEffectivity(i) => self.product_definition_effectivity_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionFormation(i) => self.product_definition_formation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self.product_definition_formation_with_specified_source_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionRelationship(i) => self.product_definition_relationship_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionShape(i) => self.product_definition_shape_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionSubstitute(i) => self.product_definition_substitute_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionUsage(i) => self.product_definition_usage_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ProductDefinitionWithAssociatedDocuments(i) => self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PropertyDefinition(i) => self.property_definition_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::PropertyDefinitionRepresentation(i) => self.property_definition_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Representation(i) => self.representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ResourceProperty(i) => self.resource_property_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::SecurityClassification(i) => self.security_classification_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::SecurityClassificationLevel(i) => self.security_classification_level_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ShapeDefinitionRepresentation(i) => self.shape_definition_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::StateObserved(i) => self.state_observed_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::StateType(i) => self.state_type_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::SymbolRepresentation(i) => self.symbol_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::VersionedActionRequest(i) => self.versioned_action_request_ids[i.0].expect("dep id assigned"),
PersonAndOrganizationItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_person_and_organization_item(
r: &PersonAndOrganizationItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
PersonAndOrganizationItemRef::Action(i) => out.push(EntityKey::Action(*i)),
PersonAndOrganizationItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
PersonAndOrganizationItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
PersonAndOrganizationItemRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
PersonAndOrganizationItemRef::ActionRelationship(i) => out.push(EntityKey::ActionRelationship(*i)),
PersonAndOrganizationItemRef::ActionRequestSolution(i) => out.push(EntityKey::ActionRequestSolution(*i)),
PersonAndOrganizationItemRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
PersonAndOrganizationItemRef::AppliedDateAndTimeAssignment(i) => out.push(EntityKey::AppliedDateAndTimeAssignment(*i)),
PersonAndOrganizationItemRef::AppliedDocumentReference(i) => out.push(EntityKey::AppliedDocumentReference(*i)),
PersonAndOrganizationItemRef::AppliedPersonAndOrganizationAssignment(i) => out.push(EntityKey::AppliedPersonAndOrganizationAssignment(*i)),
PersonAndOrganizationItemRef::Approval(i) => out.push(EntityKey::Approval(*i)),
PersonAndOrganizationItemRef::ApprovalStatus(i) => out.push(EntityKey::ApprovalStatus(*i)),
PersonAndOrganizationItemRef::AscribableState(i) => out.push(EntityKey::AscribableState(*i)),
PersonAndOrganizationItemRef::AssemblyComponentUsage(i) => out.push(EntityKey::AssemblyComponentUsage(*i)),
PersonAndOrganizationItemRef::CcDesignDateAndTimeAssignment(i) => out.push(EntityKey::CcDesignDateAndTimeAssignment(*i)),
PersonAndOrganizationItemRef::Certification(i) => out.push(EntityKey::Certification(*i)),
PersonAndOrganizationItemRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
PersonAndOrganizationItemRef::ConfigurationDesign(i) => out.push(EntityKey::ConfigurationDesign(*i)),
PersonAndOrganizationItemRef::ConfigurationEffectivity(i) => out.push(EntityKey::ConfigurationEffectivity(*i)),
PersonAndOrganizationItemRef::ConfigurationItem(i) => out.push(EntityKey::ConfigurationItem(*i)),
PersonAndOrganizationItemRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
PersonAndOrganizationItemRef::Contract(i) => out.push(EntityKey::Contract(*i)),
PersonAndOrganizationItemRef::DateAndTimeAssignment(i) => out.push(EntityKey::DateAndTimeAssignment(*i)),
PersonAndOrganizationItemRef::DefinitionalRepresentation(i) => out.push(EntityKey::DefinitionalRepresentation(*i)),
PersonAndOrganizationItemRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
PersonAndOrganizationItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
PersonAndOrganizationItemRef::DocumentType(i) => out.push(EntityKey::DocumentType(*i)),
PersonAndOrganizationItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
PersonAndOrganizationItemRef::Effectivity(i) => out.push(EntityKey::Effectivity(*i)),
PersonAndOrganizationItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
PersonAndOrganizationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
PersonAndOrganizationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
PersonAndOrganizationItemRef::MakeFromUsageOption(i) => out.push(EntityKey::MakeFromUsageOption(*i)),
PersonAndOrganizationItemRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
PersonAndOrganizationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
PersonAndOrganizationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
PersonAndOrganizationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
PersonAndOrganizationItemRef::NextAssemblyUsageOccurrence(i) => out.push(EntityKey::NextAssemblyUsageOccurrence(*i)),
PersonAndOrganizationItemRef::Organization(i) => out.push(EntityKey::Organization(*i)),
PersonAndOrganizationItemRef::OrganizationRelationship(i) => out.push(EntityKey::OrganizationRelationship(*i)),
PersonAndOrganizationItemRef::OrganizationalAddress(i) => out.push(EntityKey::OrganizationalAddress(*i)),
PersonAndOrganizationItemRef::OrganizationalProject(i) => out.push(EntityKey::OrganizationalProject(*i)),
PersonAndOrganizationItemRef::PersonAndOrganization(i) => out.push(EntityKey::PersonAndOrganization(*i)),
PersonAndOrganizationItemRef::PersonAndOrganizationAddress(i) => out.push(EntityKey::PersonAndOrganizationAddress(*i)),
PersonAndOrganizationItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
PersonAndOrganizationItemRef::PresentationRepresentation(i) => out.push(EntityKey::PresentationRepresentation(*i)),
PersonAndOrganizationItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
PersonAndOrganizationItemRef::Product(i) => out.push(EntityKey::Product(*i)),
PersonAndOrganizationItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
PersonAndOrganizationItemRef::ProductConceptFeature(i) => out.push(EntityKey::ProductConceptFeature(*i)),
PersonAndOrganizationItemRef::ProductConceptFeatureCategory(i) => out.push(EntityKey::ProductConceptFeatureCategory(*i)),
PersonAndOrganizationItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
PersonAndOrganizationItemRef::ProductDefinitionContext(i) => out.push(EntityKey::ProductDefinitionContext(*i)),
PersonAndOrganizationItemRef::ProductDefinitionEffectivity(i) => out.push(EntityKey::ProductDefinitionEffectivity(*i)),
PersonAndOrganizationItemRef::ProductDefinitionFormation(i) => out.push(EntityKey::ProductDefinitionFormation(*i)),
PersonAndOrganizationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i)),
PersonAndOrganizationItemRef::ProductDefinitionRelationship(i) => out.push(EntityKey::ProductDefinitionRelationship(*i)),
PersonAndOrganizationItemRef::ProductDefinitionShape(i) => out.push(EntityKey::ProductDefinitionShape(*i)),
PersonAndOrganizationItemRef::ProductDefinitionSubstitute(i) => out.push(EntityKey::ProductDefinitionSubstitute(*i)),
PersonAndOrganizationItemRef::ProductDefinitionUsage(i) => out.push(EntityKey::ProductDefinitionUsage(*i)),
PersonAndOrganizationItemRef::ProductDefinitionWithAssociatedDocuments(i) => out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i)),
PersonAndOrganizationItemRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
PersonAndOrganizationItemRef::PropertyDefinitionRepresentation(i) => out.push(EntityKey::PropertyDefinitionRepresentation(*i)),
PersonAndOrganizationItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
PersonAndOrganizationItemRef::ResourceProperty(i) => out.push(EntityKey::ResourceProperty(*i)),
PersonAndOrganizationItemRef::SecurityClassification(i) => out.push(EntityKey::SecurityClassification(*i)),
PersonAndOrganizationItemRef::SecurityClassificationLevel(i) => out.push(EntityKey::SecurityClassificationLevel(*i)),
PersonAndOrganizationItemRef::ShapeDefinitionRepresentation(i) => out.push(EntityKey::ShapeDefinitionRepresentation(*i)),
PersonAndOrganizationItemRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
PersonAndOrganizationItemRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
PersonAndOrganizationItemRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
PersonAndOrganizationItemRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
PersonAndOrganizationItemRef::StateType(i) => out.push(EntityKey::StateType(*i)),
PersonAndOrganizationItemRef::SymbolRepresentation(i) => out.push(EntityKey::SymbolRepresentation(*i)),
PersonAndOrganizationItemRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
PersonAndOrganizationItemRef::VersionedActionRequest(i) => out.push(EntityKey::VersionedActionRequest(*i)),
PersonAndOrganizationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_person_and_organization(&self, r: &PersonAndOrganizationRef) -> u64 {
match r {
PersonAndOrganizationRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_person_and_organization(r: &PersonAndOrganizationRef, out: &mut Vec<EntityKey>) {
match r {
PersonAndOrganizationRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
}
}
fn id_of_ref_person_and_organization_role(&self, r: &PersonAndOrganizationRoleRef) -> u64 {
match r {
PersonAndOrganizationRoleRef::PersonAndOrganizationRole(i) => {
self.person_and_organization_role_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_person_and_organization_role(
r: &PersonAndOrganizationRoleRef,
out: &mut Vec<EntityKey>,
) {
match r {
PersonAndOrganizationRoleRef::PersonAndOrganizationRole(i) => {
out.push(EntityKey::PersonAndOrganizationRole(*i))
}
}
}
fn id_of_ref_person_organization_select(&self, r: &PersonOrganizationSelectRef) -> u64 {
match r {
PersonOrganizationSelectRef::Organization(i) => {
self.organization_ids[i.0].expect("dep id assigned")
}
PersonOrganizationSelectRef::Person(i) => {
self.person_ids[i.0].expect("dep id assigned")
}
PersonOrganizationSelectRef::PersonAndOrganization(i) => {
self.person_and_organization_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_person_organization_select(
r: &PersonOrganizationSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
PersonOrganizationSelectRef::Organization(i) => out.push(EntityKey::Organization(*i)),
PersonOrganizationSelectRef::Person(i) => out.push(EntityKey::Person(*i)),
PersonOrganizationSelectRef::PersonAndOrganization(i) => {
out.push(EntityKey::PersonAndOrganization(*i))
}
}
}
fn id_of_ref_person(&self, r: &PersonRef) -> u64 {
match r {
PersonRef::Person(i) => self.person_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_person(r: &PersonRef, out: &mut Vec<EntityKey>) {
match r {
PersonRef::Person(i) => out.push(EntityKey::Person(*i)),
}
}
fn id_of_ref_planar_box(&self, r: &PlanarBoxRef) -> u64 {
match r {
PlanarBoxRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
PlanarBoxRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_planar_box(r: &PlanarBoxRef, out: &mut Vec<EntityKey>) {
match r {
PlanarBoxRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
PlanarBoxRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_plane_or_planar_box(&self, r: &PlaneOrPlanarBoxRef) -> u64 {
match r {
PlaneOrPlanarBoxRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
PlaneOrPlanarBoxRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
PlaneOrPlanarBoxRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_plane_or_planar_box(r: &PlaneOrPlanarBoxRef, out: &mut Vec<EntityKey>) {
match r {
PlaneOrPlanarBoxRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
PlaneOrPlanarBoxRef::Plane(i) => out.push(EntityKey::Plane(*i)),
PlaneOrPlanarBoxRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_point(&self, r: &PointRef) -> u64 {
match r {
PointRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
PointRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
PointRef::CartesianPoint(i) => self.cartesian_point_ids[i.0].expect("dep id assigned"),
PointRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
PointRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_point(r: &PointRef, out: &mut Vec<EntityKey>) {
match r {
PointRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
PointRef::ApllPointWithSurface(i) => out.push(EntityKey::ApllPointWithSurface(*i)),
PointRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
PointRef::Point(i) => out.push(EntityKey::Point(*i)),
PointRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_area(&self, r: &PresentationAreaRef) -> u64 {
match r {
PresentationAreaRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
PresentationAreaRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_presentation_area(r: &PresentationAreaRef, out: &mut Vec<EntityKey>) {
match r {
PresentationAreaRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
PresentationAreaRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_representation_select(
&self,
r: &PresentationRepresentationSelectRef,
) -> u64 {
match r {
PresentationRepresentationSelectRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
PresentationRepresentationSelectRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
PresentationRepresentationSelectRef::PresentationSet(i) => {
self.presentation_set_ids[i.0].expect("dep id assigned")
}
PresentationRepresentationSelectRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
PresentationRepresentationSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_presentation_representation_select(
r: &PresentationRepresentationSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
PresentationRepresentationSelectRef::PresentationArea(i) => {
out.push(EntityKey::PresentationArea(*i))
}
PresentationRepresentationSelectRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
PresentationRepresentationSelectRef::PresentationSet(i) => {
out.push(EntityKey::PresentationSet(*i))
}
PresentationRepresentationSelectRef::PresentationView(i) => {
out.push(EntityKey::PresentationView(*i))
}
PresentationRepresentationSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_set(&self, r: &PresentationSetRef) -> u64 {
match r {
PresentationSetRef::PresentationSet(i) => {
self.presentation_set_ids[i.0].expect("dep id assigned")
}
PresentationSetRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_presentation_set(r: &PresentationSetRef, out: &mut Vec<EntityKey>) {
match r {
PresentationSetRef::PresentationSet(i) => out.push(EntityKey::PresentationSet(*i)),
PresentationSetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_size_assignment_select(
&self,
r: &PresentationSizeAssignmentSelectRef,
) -> u64 {
match r {
PresentationSizeAssignmentSelectRef::AreaInSet(i) => {
self.area_in_set_ids[i.0].expect("dep id assigned")
}
PresentationSizeAssignmentSelectRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
PresentationSizeAssignmentSelectRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
PresentationSizeAssignmentSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_presentation_size_assignment_select(
r: &PresentationSizeAssignmentSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
PresentationSizeAssignmentSelectRef::AreaInSet(i) => out.push(EntityKey::AreaInSet(*i)),
PresentationSizeAssignmentSelectRef::PresentationArea(i) => {
out.push(EntityKey::PresentationArea(*i))
}
PresentationSizeAssignmentSelectRef::PresentationView(i) => {
out.push(EntityKey::PresentationView(*i))
}
PresentationSizeAssignmentSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_style_assignment(&self, r: &PresentationStyleAssignmentRef) -> u64 {
match r {
PresentationStyleAssignmentRef::PresentationStyleAssignment(i) => {
self.presentation_style_assignment_ids[i.0].expect("dep id assigned")
}
PresentationStyleAssignmentRef::PresentationStyleByContext(i) => {
self.presentation_style_by_context_ids[i.0].expect("dep id assigned")
}
PresentationStyleAssignmentRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_presentation_style_assignment(
r: &PresentationStyleAssignmentRef,
out: &mut Vec<EntityKey>,
) {
match r {
PresentationStyleAssignmentRef::PresentationStyleAssignment(i) => {
out.push(EntityKey::PresentationStyleAssignment(*i))
}
PresentationStyleAssignmentRef::PresentationStyleByContext(i) => {
out.push(EntityKey::PresentationStyleByContext(*i))
}
PresentationStyleAssignmentRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presentation_style_select(&self, r: &PresentationStyleSelectRef) -> u64 {
match r {
PresentationStyleSelectRef::ApproximationTolerance(i) => {
self.approximation_tolerance_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::CurveStyle(i) => {
self.curve_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::ExternallyDefinedStyle(i) => {
self.externally_defined_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::FillAreaStyle(i) => {
self.fill_area_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::PointStyle(i) => {
self.point_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::PreDefinedPresentationStyle(i) => {
self.pre_defined_presentation_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::SurfaceStyleUsage(i) => {
self.surface_style_usage_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::SymbolStyle(i) => {
self.symbol_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::TextStyle(i) => {
self.text_style_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::TextStyleWithBoxCharacteristics(i) => {
self.text_style_with_box_characteristics_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::TextureStyleTessellationSpecification(i) => {
self.texture_style_tessellation_specification_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
PresentationStyleSelectRef::NullStyle(_) => panic!("enum via single id_of"),
}
}
fn deps_ref_presentation_style_select(
r: &PresentationStyleSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
PresentationStyleSelectRef::ApproximationTolerance(i) => {
out.push(EntityKey::ApproximationTolerance(*i))
}
PresentationStyleSelectRef::CurveStyle(i) => out.push(EntityKey::CurveStyle(*i)),
PresentationStyleSelectRef::ExternallyDefinedStyle(i) => {
out.push(EntityKey::ExternallyDefinedStyle(*i))
}
PresentationStyleSelectRef::FillAreaStyle(i) => out.push(EntityKey::FillAreaStyle(*i)),
PresentationStyleSelectRef::PointStyle(i) => out.push(EntityKey::PointStyle(*i)),
PresentationStyleSelectRef::PreDefinedPresentationStyle(i) => {
out.push(EntityKey::PreDefinedPresentationStyle(*i))
}
PresentationStyleSelectRef::SurfaceStyleUsage(i) => {
out.push(EntityKey::SurfaceStyleUsage(*i))
}
PresentationStyleSelectRef::SymbolStyle(i) => out.push(EntityKey::SymbolStyle(*i)),
PresentationStyleSelectRef::TextStyle(i) => out.push(EntityKey::TextStyle(*i)),
PresentationStyleSelectRef::TextStyleWithBoxCharacteristics(i) => {
out.push(EntityKey::TextStyleWithBoxCharacteristics(*i))
}
PresentationStyleSelectRef::TextureStyleTessellationSpecification(i) => {
out.push(EntityKey::TextureStyleTessellationSpecification(*i))
}
PresentationStyleSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
PresentationStyleSelectRef::NullStyle(_) => {}
}
}
fn id_of_ref_presented_item(&self, r: &PresentedItemRef) -> u64 {
match r {
PresentedItemRef::AppliedPresentedItem(i) => {
self.applied_presented_item_ids[i.0].expect("dep id assigned")
}
PresentedItemRef::PresentedItem(i) => {
self.presented_item_ids[i.0].expect("dep id assigned")
}
PresentedItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_presented_item(r: &PresentedItemRef, out: &mut Vec<EntityKey>) {
match r {
PresentedItemRef::AppliedPresentedItem(i) => {
out.push(EntityKey::AppliedPresentedItem(*i))
}
PresentedItemRef::PresentedItem(i) => out.push(EntityKey::PresentedItem(*i)),
PresentedItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_presented_item_select(&self, r: &PresentedItemSelectRef) -> u64 {
match r {
PresentedItemSelectRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
PresentedItemSelectRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ActionRelationship(i) => {
self.action_relationship_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductConceptFeature(i) => {
self.product_concept_feature_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
PresentedItemSelectRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
PresentedItemSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_presented_item_select(r: &PresentedItemSelectRef, out: &mut Vec<EntityKey>) {
match r {
PresentedItemSelectRef::Action(i) => out.push(EntityKey::Action(*i)),
PresentedItemSelectRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
PresentedItemSelectRef::ActionRelationship(i) => {
out.push(EntityKey::ActionRelationship(*i))
}
PresentedItemSelectRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
PresentedItemSelectRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
PresentedItemSelectRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
PresentedItemSelectRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
PresentedItemSelectRef::ProductConceptFeature(i) => {
out.push(EntityKey::ProductConceptFeature(*i))
}
PresentedItemSelectRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
PresentedItemSelectRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
PresentedItemSelectRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
PresentedItemSelectRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
PresentedItemSelectRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
PresentedItemSelectRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
PresentedItemSelectRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
PresentedItemSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_category(&self, r: &ProductCategoryRef) -> u64 {
match r {
ProductCategoryRef::ProductCategory(i) => {
self.product_category_ids[i.0].expect("dep id assigned")
}
ProductCategoryRef::ProductRelatedProductCategory(i) => {
self.product_related_product_category_ids[i.0].expect("dep id assigned")
}
ProductCategoryRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_product_category(r: &ProductCategoryRef, out: &mut Vec<EntityKey>) {
match r {
ProductCategoryRef::ProductCategory(i) => out.push(EntityKey::ProductCategory(*i)),
ProductCategoryRef::ProductRelatedProductCategory(i) => {
out.push(EntityKey::ProductRelatedProductCategory(*i))
}
ProductCategoryRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_concept_context(&self, r: &ProductConceptContextRef) -> u64 {
match r {
ProductConceptContextRef::ProductConceptContext(i) => {
self.product_concept_context_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_concept_context(r: &ProductConceptContextRef, out: &mut Vec<EntityKey>) {
match r {
ProductConceptContextRef::ProductConceptContext(i) => {
out.push(EntityKey::ProductConceptContext(*i))
}
}
}
fn id_of_ref_product_concept(&self, r: &ProductConceptRef) -> u64 {
match r {
ProductConceptRef::ProductConcept(i) => {
self.product_concept_ids[i.0].expect("dep id assigned")
}
ProductConceptRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_product_concept(r: &ProductConceptRef, out: &mut Vec<EntityKey>) {
match r {
ProductConceptRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
ProductConceptRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_context(&self, r: &ProductContextRef) -> u64 {
match r {
ProductContextRef::MechanicalContext(i) => {
self.mechanical_context_ids[i.0].expect("dep id assigned")
}
ProductContextRef::ProductContext(i) => {
self.product_context_ids[i.0].expect("dep id assigned")
}
ProductContextRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_product_context(r: &ProductContextRef, out: &mut Vec<EntityKey>) {
match r {
ProductContextRef::MechanicalContext(i) => out.push(EntityKey::MechanicalContext(*i)),
ProductContextRef::ProductContext(i) => out.push(EntityKey::ProductContext(*i)),
ProductContextRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition_context(&self, r: &ProductDefinitionContextRef) -> u64 {
match r {
ProductDefinitionContextRef::DesignContext(i) => {
self.design_context_ids[i.0].expect("dep id assigned")
}
ProductDefinitionContextRef::ProductDefinitionContext(i) => {
self.product_definition_context_ids[i.0].expect("dep id assigned")
}
ProductDefinitionContextRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_context(
r: &ProductDefinitionContextRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductDefinitionContextRef::DesignContext(i) => out.push(EntityKey::DesignContext(*i)),
ProductDefinitionContextRef::ProductDefinitionContext(i) => {
out.push(EntityKey::ProductDefinitionContext(*i))
}
ProductDefinitionContextRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition_context_role(
&self,
r: &ProductDefinitionContextRoleRef,
) -> u64 {
match r {
ProductDefinitionContextRoleRef::ProductDefinitionContextRole(i) => {
self.product_definition_context_role_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_context_role(
r: &ProductDefinitionContextRoleRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductDefinitionContextRoleRef::ProductDefinitionContextRole(i) => {
out.push(EntityKey::ProductDefinitionContextRole(*i))
}
}
}
fn id_of_ref_product_definition_formation(&self, r: &ProductDefinitionFormationRef) -> u64 {
match r {
ProductDefinitionFormationRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ProductDefinitionFormationRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
ProductDefinitionFormationRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_formation(
r: &ProductDefinitionFormationRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductDefinitionFormationRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ProductDefinitionFormationRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ProductDefinitionFormationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition_or_reference(
&self,
r: &ProductDefinitionOrReferenceRef,
) -> u64 {
match r {
ProductDefinitionOrReferenceRef::GenericProductDefinitionReference(i) => {
self.generic_product_definition_reference_ids[i.0].expect("dep id assigned")
}
ProductDefinitionOrReferenceRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ProductDefinitionOrReferenceRef::ProductDefinitionOccurrence(i) => {
self.product_definition_occurrence_ids[i.0].expect("dep id assigned")
}
ProductDefinitionOrReferenceRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ProductDefinitionOrReferenceRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_or_reference(
r: &ProductDefinitionOrReferenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductDefinitionOrReferenceRef::GenericProductDefinitionReference(i) => {
out.push(EntityKey::GenericProductDefinitionReference(*i))
}
ProductDefinitionOrReferenceRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
ProductDefinitionOrReferenceRef::ProductDefinitionOccurrence(i) => {
out.push(EntityKey::ProductDefinitionOccurrence(*i))
}
ProductDefinitionOrReferenceRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ProductDefinitionOrReferenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition(&self, r: &ProductDefinitionRef) -> u64 {
match r {
ProductDefinitionRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_product_definition(r: &ProductDefinitionRef, out: &mut Vec<EntityKey>) {
match r {
ProductDefinitionRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
ProductDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ProductDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition_relationship(
&self,
r: &ProductDefinitionRelationshipRef,
) -> u64 {
match r {
ProductDefinitionRelationshipRef::AssemblyComponentUsage(i) => {
self.assembly_component_usage_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRelationshipRef::MakeFromUsageOption(i) => {
self.make_from_usage_option_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRelationshipRef::NextAssemblyUsageOccurrence(i) => {
self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRelationshipRef::ProductDefinitionRelationship(i) => {
self.product_definition_relationship_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRelationshipRef::ProductDefinitionUsage(i) => {
self.product_definition_usage_ids[i.0].expect("dep id assigned")
}
ProductDefinitionRelationshipRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_relationship(
r: &ProductDefinitionRelationshipRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductDefinitionRelationshipRef::AssemblyComponentUsage(i) => {
out.push(EntityKey::AssemblyComponentUsage(*i))
}
ProductDefinitionRelationshipRef::MakeFromUsageOption(i) => {
out.push(EntityKey::MakeFromUsageOption(*i))
}
ProductDefinitionRelationshipRef::NextAssemblyUsageOccurrence(i) => {
out.push(EntityKey::NextAssemblyUsageOccurrence(*i))
}
ProductDefinitionRelationshipRef::ProductDefinitionRelationship(i) => {
out.push(EntityKey::ProductDefinitionRelationship(*i))
}
ProductDefinitionRelationshipRef::ProductDefinitionUsage(i) => {
out.push(EntityKey::ProductDefinitionUsage(*i))
}
ProductDefinitionRelationshipRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_definition_shape(&self, r: &ProductDefinitionShapeRef) -> u64 {
match r {
ProductDefinitionShapeRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
ProductDefinitionShapeRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_definition_shape(r: &ProductDefinitionShapeRef, out: &mut Vec<EntityKey>) {
match r {
ProductDefinitionShapeRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
ProductDefinitionShapeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product_or_formation_or_definition(
&self,
r: &ProductOrFormationOrDefinitionRef,
) -> u64 {
match r {
ProductOrFormationOrDefinitionRef::Product(i) => {
self.product_ids[i.0].expect("dep id assigned")
}
ProductOrFormationOrDefinitionRef::ProductDefinition(i) => {
self.product_definition_ids[i.0].expect("dep id assigned")
}
ProductOrFormationOrDefinitionRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
ProductOrFormationOrDefinitionRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
self.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned")
}
ProductOrFormationOrDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned")
}
ProductOrFormationOrDefinitionRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_product_or_formation_or_definition(
r: &ProductOrFormationOrDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
ProductOrFormationOrDefinitionRef::Product(i) => out.push(EntityKey::Product(*i)),
ProductOrFormationOrDefinitionRef::ProductDefinition(i) => {
out.push(EntityKey::ProductDefinition(*i))
}
ProductOrFormationOrDefinitionRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
ProductOrFormationOrDefinitionRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
ProductOrFormationOrDefinitionRef::ProductDefinitionWithAssociatedDocuments(i) => {
out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i))
}
ProductOrFormationOrDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_product(&self, r: &ProductRef) -> u64 {
match r {
ProductRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
ProductRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_product(r: &ProductRef, out: &mut Vec<EntityKey>) {
match r {
ProductRef::Product(i) => out.push(EntityKey::Product(*i)),
ProductRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_property_definition(&self, r: &PropertyDefinitionRef) -> u64 {
match r {
PropertyDefinitionRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
PropertyDefinitionRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
PropertyDefinitionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_property_definition(r: &PropertyDefinitionRef, out: &mut Vec<EntityKey>) {
match r {
PropertyDefinitionRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
PropertyDefinitionRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
PropertyDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_rendering_properties_select(&self, r: &RenderingPropertiesSelectRef) -> u64 {
match r {
RenderingPropertiesSelectRef::SurfaceStyleReflectanceAmbient(i) => {
self.surface_style_reflectance_ambient_ids[i.0].expect("dep id assigned")
}
RenderingPropertiesSelectRef::SurfaceStyleTransparent(i) => {
self.surface_style_transparent_ids[i.0].expect("dep id assigned")
}
RenderingPropertiesSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_rendering_properties_select(
r: &RenderingPropertiesSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
RenderingPropertiesSelectRef::SurfaceStyleReflectanceAmbient(i) => {
out.push(EntityKey::SurfaceStyleReflectanceAmbient(*i))
}
RenderingPropertiesSelectRef::SurfaceStyleTransparent(i) => {
out.push(EntityKey::SurfaceStyleTransparent(*i))
}
RenderingPropertiesSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_representation_context(&self, r: &RepresentationContextRef) -> u64 {
match r {
RepresentationContextRef::GeometricRepresentationContext(i) => {
self.geometric_representation_context_ids[i.0].expect("dep id assigned")
}
RepresentationContextRef::GlobalUncertaintyAssignedContext(i) => {
self.global_uncertainty_assigned_context_ids[i.0].expect("dep id assigned")
}
RepresentationContextRef::GlobalUnitAssignedContext(i) => {
self.global_unit_assigned_context_ids[i.0].expect("dep id assigned")
}
RepresentationContextRef::ParametricRepresentationContext(i) => {
self.parametric_representation_context_ids[i.0].expect("dep id assigned")
}
RepresentationContextRef::RepresentationContext(i) => {
self.representation_context_ids[i.0].expect("dep id assigned")
}
RepresentationContextRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_representation_context(r: &RepresentationContextRef, out: &mut Vec<EntityKey>) {
match r {
RepresentationContextRef::GeometricRepresentationContext(i) => {
out.push(EntityKey::GeometricRepresentationContext(*i))
}
RepresentationContextRef::GlobalUncertaintyAssignedContext(i) => {
out.push(EntityKey::GlobalUncertaintyAssignedContext(*i))
}
RepresentationContextRef::GlobalUnitAssignedContext(i) => {
out.push(EntityKey::GlobalUnitAssignedContext(*i))
}
RepresentationContextRef::ParametricRepresentationContext(i) => {
out.push(EntityKey::ParametricRepresentationContext(*i))
}
RepresentationContextRef::RepresentationContext(i) => {
out.push(EntityKey::RepresentationContext(*i))
}
RepresentationContextRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_representation_context_reference(
&self,
r: &RepresentationContextReferenceRef,
) -> u64 {
match r {
RepresentationContextReferenceRef::RepresentationContextReference(i) => {
self.representation_context_reference_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_representation_context_reference(
r: &RepresentationContextReferenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
RepresentationContextReferenceRef::RepresentationContextReference(i) => {
out.push(EntityKey::RepresentationContextReference(*i))
}
}
}
fn id_of_ref_representation_item(&self, r: &RepresentationItemRef) -> u64 {
match r {
RepresentationItemRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
RepresentationItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Direction(i) => {
self.direction_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::FaceBound(i) => {
self.face_bound_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::MappedItem(i) => {
self.mapped_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::StyledItem(i) => {
self.styled_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
RepresentationItemRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::WireShell(i) => {
self.wire_shell_ids[i.0].expect("dep id assigned")
}
RepresentationItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_representation_item(r: &RepresentationItemRef, out: &mut Vec<EntityKey>) {
match r {
RepresentationItemRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
RepresentationItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
RepresentationItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
RepresentationItemRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
RepresentationItemRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
RepresentationItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
RepresentationItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
RepresentationItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
RepresentationItemRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
RepresentationItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
RepresentationItemRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
RepresentationItemRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
RepresentationItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
RepresentationItemRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
RepresentationItemRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
RepresentationItemRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
RepresentationItemRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
RepresentationItemRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
RepresentationItemRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
RepresentationItemRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
RepresentationItemRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
RepresentationItemRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
RepresentationItemRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
RepresentationItemRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
RepresentationItemRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
RepresentationItemRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
RepresentationItemRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
RepresentationItemRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
RepresentationItemRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
RepresentationItemRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
RepresentationItemRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
RepresentationItemRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
RepresentationItemRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
RepresentationItemRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
RepresentationItemRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
RepresentationItemRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
RepresentationItemRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
RepresentationItemRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
RepresentationItemRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
RepresentationItemRef::Circle(i) => out.push(EntityKey::Circle(*i)),
RepresentationItemRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
RepresentationItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
RepresentationItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
RepresentationItemRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
RepresentationItemRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
RepresentationItemRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
RepresentationItemRef::Conic(i) => out.push(EntityKey::Conic(*i)),
RepresentationItemRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
RepresentationItemRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
RepresentationItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
RepresentationItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
RepresentationItemRef::Curve(i) => out.push(EntityKey::Curve(*i)),
RepresentationItemRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
RepresentationItemRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
RepresentationItemRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
RepresentationItemRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
RepresentationItemRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
RepresentationItemRef::Direction(i) => out.push(EntityKey::Direction(*i)),
RepresentationItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
RepresentationItemRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
RepresentationItemRef::Edge(i) => out.push(EntityKey::Edge(*i)),
RepresentationItemRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
RepresentationItemRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
RepresentationItemRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
RepresentationItemRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
RepresentationItemRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
RepresentationItemRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
RepresentationItemRef::Face(i) => out.push(EntityKey::Face(*i)),
RepresentationItemRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
RepresentationItemRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
RepresentationItemRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
RepresentationItemRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
RepresentationItemRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
RepresentationItemRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
RepresentationItemRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
RepresentationItemRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
RepresentationItemRef::GeometricCurveSet(i) => {
out.push(EntityKey::GeometricCurveSet(*i))
}
RepresentationItemRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
RepresentationItemRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
RepresentationItemRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
RepresentationItemRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
RepresentationItemRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
RepresentationItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
RepresentationItemRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
RepresentationItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
RepresentationItemRef::Line(i) => out.push(EntityKey::Line(*i)),
RepresentationItemRef::Loop(i) => out.push(EntityKey::Loop(*i)),
RepresentationItemRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
RepresentationItemRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
RepresentationItemRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
RepresentationItemRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
RepresentationItemRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
RepresentationItemRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
RepresentationItemRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
RepresentationItemRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
RepresentationItemRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
RepresentationItemRef::Path(i) => out.push(EntityKey::Path(*i)),
RepresentationItemRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
RepresentationItemRef::Placement(i) => out.push(EntityKey::Placement(*i)),
RepresentationItemRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
RepresentationItemRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
RepresentationItemRef::Plane(i) => out.push(EntityKey::Plane(*i)),
RepresentationItemRef::Point(i) => out.push(EntityKey::Point(*i)),
RepresentationItemRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
RepresentationItemRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
RepresentationItemRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
RepresentationItemRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
RepresentationItemRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
RepresentationItemRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
RepresentationItemRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
RepresentationItemRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
RepresentationItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
RepresentationItemRef::RepresentationItem(i) => {
out.push(EntityKey::RepresentationItem(*i))
}
RepresentationItemRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
RepresentationItemRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
RepresentationItemRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
RepresentationItemRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
RepresentationItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
RepresentationItemRef::Surface(i) => out.push(EntityKey::Surface(*i)),
RepresentationItemRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
RepresentationItemRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
RepresentationItemRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
RepresentationItemRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
RepresentationItemRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
RepresentationItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
RepresentationItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
RepresentationItemRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
RepresentationItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
RepresentationItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
RepresentationItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
RepresentationItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
RepresentationItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
RepresentationItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
RepresentationItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
RepresentationItemRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
RepresentationItemRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
RepresentationItemRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
RepresentationItemRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
RepresentationItemRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
RepresentationItemRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
RepresentationItemRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
RepresentationItemRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
RepresentationItemRef::Vector(i) => out.push(EntityKey::Vector(*i)),
RepresentationItemRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
RepresentationItemRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
RepresentationItemRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
RepresentationItemRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
RepresentationItemRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
RepresentationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_representation_map(&self, r: &RepresentationMapRef) -> u64 {
match r {
RepresentationMapRef::CameraUsage(i) => {
self.camera_usage_ids[i.0].expect("dep id assigned")
}
RepresentationMapRef::RepresentationMap(i) => {
self.representation_map_ids[i.0].expect("dep id assigned")
}
RepresentationMapRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_representation_map(r: &RepresentationMapRef, out: &mut Vec<EntityKey>) {
match r {
RepresentationMapRef::CameraUsage(i) => out.push(EntityKey::CameraUsage(*i)),
RepresentationMapRef::RepresentationMap(i) => {
out.push(EntityKey::RepresentationMap(*i))
}
RepresentationMapRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_representation_or_representation_reference(
&self,
r: &RepresentationOrRepresentationReferenceRef,
) -> u64 {
match r {
RepresentationOrRepresentationReferenceRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::PresentationArea(i) => self.presentation_area_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::PresentationRepresentation(i) => self.presentation_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::PresentationView(i) => self.presentation_view_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::Representation(i) => self.representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::RepresentationReference(i) => self.representation_reference_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::SymbolRepresentation(i) => self.symbol_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
RepresentationOrRepresentationReferenceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_representation_or_representation_reference(
r: &RepresentationOrRepresentationReferenceRef,
out: &mut Vec<EntityKey>,
) {
match r {
RepresentationOrRepresentationReferenceRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::DefinitionalRepresentation(i) => out.push(EntityKey::DefinitionalRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
RepresentationOrRepresentationReferenceRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
RepresentationOrRepresentationReferenceRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
RepresentationOrRepresentationReferenceRef::PresentationRepresentation(i) => out.push(EntityKey::PresentationRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
RepresentationOrRepresentationReferenceRef::Representation(i) => out.push(EntityKey::Representation(*i)),
RepresentationOrRepresentationReferenceRef::RepresentationReference(i) => out.push(EntityKey::RepresentationReference(*i)),
RepresentationOrRepresentationReferenceRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
RepresentationOrRepresentationReferenceRef::SymbolRepresentation(i) => out.push(EntityKey::SymbolRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
RepresentationOrRepresentationReferenceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_representation(&self, r: &RepresentationRef) -> u64 {
match r {
RepresentationRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
RepresentationRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
RepresentationRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
RepresentationRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
RepresentationRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self
.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned"),
RepresentationRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
RepresentationRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
RepresentationRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
RepresentationRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
RepresentationRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
RepresentationRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_representation(r: &RepresentationRef, out: &mut Vec<EntityKey>) {
match r {
RepresentationRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
RepresentationRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
RepresentationRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
RepresentationRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
RepresentationRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
RepresentationRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
RepresentationRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
RepresentationRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
RepresentationRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
RepresentationRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
RepresentationRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
RepresentationRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
RepresentationRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
RepresentationRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
RepresentationRef::Representation(i) => out.push(EntityKey::Representation(*i)),
RepresentationRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
RepresentationRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
RepresentationRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
RepresentationRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
RepresentationRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
RepresentationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_represented_definition(&self, r: &RepresentedDefinitionRef) -> u64 {
match r {
RepresentedDefinitionRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::CommonDatum(i) => {
self.common_datum_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
RepresentedDefinitionRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DatumSystem(i) => {
self.datum_system_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DatumTarget(i) => {
self.datum_target_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::FeatureForDatumTargetRelationship(i) => {
self.feature_for_datum_target_relationship_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::GeneralProperty(i) => {
self.general_property_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ProductDefinitionShape(i) => {
self.product_definition_shape_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::PropertyDefinition(i) => {
self.property_definition_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::PropertyDefinitionRelationship(i) => {
self.property_definition_relationship_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ShapeAspect(i) => {
self.shape_aspect_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ShapeAspectAssociativity(i) => {
self.shape_aspect_associativity_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ShapeAspectDerivingRelationship(i) => {
self.shape_aspect_deriving_relationship_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ShapeAspectRelationship(i) => {
self.shape_aspect_relationship_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
RepresentedDefinitionRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_represented_definition(r: &RepresentedDefinitionRef, out: &mut Vec<EntityKey>) {
match r {
RepresentedDefinitionRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
RepresentedDefinitionRef::AngularLocation(i) => {
out.push(EntityKey::AngularLocation(*i))
}
RepresentedDefinitionRef::CentreOfSymmetry(i) => {
out.push(EntityKey::CentreOfSymmetry(*i))
}
RepresentedDefinitionRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
RepresentedDefinitionRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
RepresentedDefinitionRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
RepresentedDefinitionRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
RepresentedDefinitionRef::Datum(i) => out.push(EntityKey::Datum(*i)),
RepresentedDefinitionRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
RepresentedDefinitionRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
RepresentedDefinitionRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
RepresentedDefinitionRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
RepresentedDefinitionRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
RepresentedDefinitionRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
RepresentedDefinitionRef::DerivedShapeAspect(i) => {
out.push(EntityKey::DerivedShapeAspect(*i))
}
RepresentedDefinitionRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
RepresentedDefinitionRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
RepresentedDefinitionRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
RepresentedDefinitionRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
RepresentedDefinitionRef::FeatureForDatumTargetRelationship(i) => {
out.push(EntityKey::FeatureForDatumTargetRelationship(*i))
}
RepresentedDefinitionRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
RepresentedDefinitionRef::GeneralProperty(i) => {
out.push(EntityKey::GeneralProperty(*i))
}
RepresentedDefinitionRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
RepresentedDefinitionRef::ProductDefinitionShape(i) => {
out.push(EntityKey::ProductDefinitionShape(*i))
}
RepresentedDefinitionRef::PropertyDefinition(i) => {
out.push(EntityKey::PropertyDefinition(*i))
}
RepresentedDefinitionRef::PropertyDefinitionRelationship(i) => {
out.push(EntityKey::PropertyDefinitionRelationship(*i))
}
RepresentedDefinitionRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
RepresentedDefinitionRef::ShapeAspectAssociativity(i) => {
out.push(EntityKey::ShapeAspectAssociativity(*i))
}
RepresentedDefinitionRef::ShapeAspectDerivingRelationship(i) => {
out.push(EntityKey::ShapeAspectDerivingRelationship(*i))
}
RepresentedDefinitionRef::ShapeAspectRelationship(i) => {
out.push(EntityKey::ShapeAspectRelationship(*i))
}
RepresentedDefinitionRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
RepresentedDefinitionRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
RepresentedDefinitionRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_resource_requirement_type(&self, r: &ResourceRequirementTypeRef) -> u64 {
match r {
ResourceRequirementTypeRef::ResourceRequirementType(i) => {
self.resource_requirement_type_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_resource_requirement_type(
r: &ResourceRequirementTypeRef,
out: &mut Vec<EntityKey>,
) {
match r {
ResourceRequirementTypeRef::ResourceRequirementType(i) => {
out.push(EntityKey::ResourceRequirementType(*i))
}
}
}
fn id_of_ref_role_select(&self, r: &RoleSelectRef) -> u64 {
match r {
RoleSelectRef::ActionAssignment(i) => {
self.action_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::ActionRequestAssignment(i) => {
self.action_request_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::AppliedApprovalAssignment(i) => {
self.applied_approval_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::AppliedDocumentReference(i) => {
self.applied_document_reference_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::AppliedGroupAssignment(i) => {
self.applied_group_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::AppliedSecurityClassificationAssignment(i) => {
self.applied_security_classification_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::ApprovalAssignment(i) => {
self.approval_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::ApprovalDateTime(i) => {
self.approval_date_time_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::CcDesignApproval(i) => {
self.cc_design_approval_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::CcDesignSecurityClassification(i) => {
self.cc_design_security_classification_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::Change(i) => self.change_ids[i.0].expect("dep id assigned"),
RoleSelectRef::ChangeRequest(i) => {
self.change_request_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::DocumentReference(i) => {
self.document_reference_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::GroupAssignment(i) => {
self.group_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::SecurityClassificationAssignment(i) => {
self.security_classification_assignment_ids[i.0].expect("dep id assigned")
}
RoleSelectRef::StartRequest(i) => self.start_request_ids[i.0].expect("dep id assigned"),
RoleSelectRef::StartWork(i) => self.start_work_ids[i.0].expect("dep id assigned"),
RoleSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_role_select(r: &RoleSelectRef, out: &mut Vec<EntityKey>) {
match r {
RoleSelectRef::ActionAssignment(i) => out.push(EntityKey::ActionAssignment(*i)),
RoleSelectRef::ActionRequestAssignment(i) => {
out.push(EntityKey::ActionRequestAssignment(*i))
}
RoleSelectRef::AppliedApprovalAssignment(i) => {
out.push(EntityKey::AppliedApprovalAssignment(*i))
}
RoleSelectRef::AppliedDocumentReference(i) => {
out.push(EntityKey::AppliedDocumentReference(*i))
}
RoleSelectRef::AppliedGroupAssignment(i) => {
out.push(EntityKey::AppliedGroupAssignment(*i))
}
RoleSelectRef::AppliedSecurityClassificationAssignment(i) => {
out.push(EntityKey::AppliedSecurityClassificationAssignment(*i))
}
RoleSelectRef::ApprovalAssignment(i) => out.push(EntityKey::ApprovalAssignment(*i)),
RoleSelectRef::ApprovalDateTime(i) => out.push(EntityKey::ApprovalDateTime(*i)),
RoleSelectRef::CcDesignApproval(i) => out.push(EntityKey::CcDesignApproval(*i)),
RoleSelectRef::CcDesignSecurityClassification(i) => {
out.push(EntityKey::CcDesignSecurityClassification(*i))
}
RoleSelectRef::Change(i) => out.push(EntityKey::Change(*i)),
RoleSelectRef::ChangeRequest(i) => out.push(EntityKey::ChangeRequest(*i)),
RoleSelectRef::DocumentReference(i) => out.push(EntityKey::DocumentReference(*i)),
RoleSelectRef::GroupAssignment(i) => out.push(EntityKey::GroupAssignment(*i)),
RoleSelectRef::SecurityClassificationAssignment(i) => {
out.push(EntityKey::SecurityClassificationAssignment(*i))
}
RoleSelectRef::StartRequest(i) => out.push(EntityKey::StartRequest(*i)),
RoleSelectRef::StartWork(i) => out.push(EntityKey::StartWork(*i)),
RoleSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_security_classification_item(&self, r: &SecurityClassificationItemRef) -> u64 {
match r {
SecurityClassificationItemRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ActionDirective(i) => self.action_directive_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ActionMethod(i) => self.action_method_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ActionMethodRelationship(i) => self.action_method_relationship_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ActionProperty(i) => self.action_property_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::AdvancedBrepShapeRepresentation(i) => self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::AppliedDocumentReference(i) => self.applied_document_reference_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::AppliedExternalIdentificationAssignment(i) => self.applied_external_identification_assignment_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::AssemblyComponentUsage(i) => self.assembly_component_usage_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::CharacterizedRepresentation(i) => self.characterized_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ConfigurationDesign(i) => self.configuration_design_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ConfigurationEffectivity(i) => self.configuration_effectivity_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ConstructiveGeometryRepresentation(i) => self.constructive_geometry_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::DefinitionalRepresentation(i) => self.definitional_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::Document(i) => self.document_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::DocumentFile(i) => self.document_file_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::DraughtingModel(i) => self.draughting_model_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::GeneralProperty(i) => self.general_property_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self.geometrically_bounded_surface_shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self.geometrically_bounded_wireframe_shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::MakeFromUsageOption(i) => self.make_from_usage_option_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ManifoldSurfaceShapeRepresentation(i) => self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => self.mechanical_design_geometric_presentation_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => self.mechanical_design_presentation_representation_with_draughting_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => self.mechanical_design_shaded_presentation_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::NextAssemblyUsageOccurrence(i) => self.next_assembly_usage_occurrence_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::OrganizationalProject(i) => self.organizational_project_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::PresentationArea(i) => self.presentation_area_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::PresentationRepresentation(i) => self.presentation_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::PresentationView(i) => self.presentation_view_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::Product(i) => self.product_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductConcept(i) => self.product_concept_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductConceptFeature(i) => self.product_concept_feature_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductConceptFeatureCategory(i) => self.product_concept_feature_category_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinition(i) => self.product_definition_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionFormation(i) => self.product_definition_formation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self.product_definition_formation_with_specified_source_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionRelationship(i) => self.product_definition_relationship_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionShape(i) => self.product_definition_shape_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionUsage(i) => self.product_definition_usage_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ProductDefinitionWithAssociatedDocuments(i) => self.product_definition_with_associated_documents_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::PropertyDefinition(i) => self.property_definition_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::PropertyDefinitionRepresentation(i) => self.property_definition_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::Representation(i) => self.representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ResourceProperty(i) => self.resource_property_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ShapeDefinitionRepresentation(i) => self.shape_definition_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ShapeDimensionRepresentation(i) => self.shape_dimension_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ShapeRepresentation(i) => self.shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::ShapeRepresentationWithParameters(i) => self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::SymbolRepresentation(i) => self.symbol_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::TessellatedShapeRepresentation(i) => self.tessellated_shape_representation_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::VersionedActionRequest(i) => self.versioned_action_request_ids[i.0].expect("dep id assigned"),
SecurityClassificationItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_security_classification_item(
r: &SecurityClassificationItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
SecurityClassificationItemRef::Action(i) => out.push(EntityKey::Action(*i)),
SecurityClassificationItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
SecurityClassificationItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
SecurityClassificationItemRef::ActionMethodRelationship(i) => out.push(EntityKey::ActionMethodRelationship(*i)),
SecurityClassificationItemRef::ActionProperty(i) => out.push(EntityKey::ActionProperty(*i)),
SecurityClassificationItemRef::AdvancedBrepShapeRepresentation(i) => out.push(EntityKey::AdvancedBrepShapeRepresentation(*i)),
SecurityClassificationItemRef::AppliedDocumentReference(i) => out.push(EntityKey::AppliedDocumentReference(*i)),
SecurityClassificationItemRef::AppliedExternalIdentificationAssignment(i) => out.push(EntityKey::AppliedExternalIdentificationAssignment(*i)),
SecurityClassificationItemRef::AssemblyComponentUsage(i) => out.push(EntityKey::AssemblyComponentUsage(*i)),
SecurityClassificationItemRef::CharacterizedRepresentation(i) => out.push(EntityKey::CharacterizedRepresentation(*i)),
SecurityClassificationItemRef::ConfigurationDesign(i) => out.push(EntityKey::ConfigurationDesign(*i)),
SecurityClassificationItemRef::ConfigurationEffectivity(i) => out.push(EntityKey::ConfigurationEffectivity(*i)),
SecurityClassificationItemRef::ConstructiveGeometryRepresentation(i) => out.push(EntityKey::ConstructiveGeometryRepresentation(*i)),
SecurityClassificationItemRef::DefinitionalRepresentation(i) => out.push(EntityKey::DefinitionalRepresentation(*i)),
SecurityClassificationItemRef::Document(i) => out.push(EntityKey::Document(*i)),
SecurityClassificationItemRef::DocumentFile(i) => out.push(EntityKey::DocumentFile(*i)),
SecurityClassificationItemRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
SecurityClassificationItemRef::GeneralProperty(i) => out.push(EntityKey::GeneralProperty(*i)),
SecurityClassificationItemRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i)),
SecurityClassificationItemRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i)),
SecurityClassificationItemRef::Group(i) => out.push(EntityKey::Group(*i)),
SecurityClassificationItemRef::MakeFromUsageOption(i) => out.push(EntityKey::MakeFromUsageOption(*i)),
SecurityClassificationItemRef::ManifoldSurfaceShapeRepresentation(i) => out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i)),
SecurityClassificationItemRef::MechanicalDesignGeometricPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i)),
SecurityClassificationItemRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i)),
SecurityClassificationItemRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(*i)),
SecurityClassificationItemRef::NextAssemblyUsageOccurrence(i) => out.push(EntityKey::NextAssemblyUsageOccurrence(*i)),
SecurityClassificationItemRef::OrganizationalProject(i) => out.push(EntityKey::OrganizationalProject(*i)),
SecurityClassificationItemRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
SecurityClassificationItemRef::PresentationRepresentation(i) => out.push(EntityKey::PresentationRepresentation(*i)),
SecurityClassificationItemRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
SecurityClassificationItemRef::Product(i) => out.push(EntityKey::Product(*i)),
SecurityClassificationItemRef::ProductConcept(i) => out.push(EntityKey::ProductConcept(*i)),
SecurityClassificationItemRef::ProductConceptFeature(i) => out.push(EntityKey::ProductConceptFeature(*i)),
SecurityClassificationItemRef::ProductConceptFeatureCategory(i) => out.push(EntityKey::ProductConceptFeatureCategory(*i)),
SecurityClassificationItemRef::ProductDefinition(i) => out.push(EntityKey::ProductDefinition(*i)),
SecurityClassificationItemRef::ProductDefinitionFormation(i) => out.push(EntityKey::ProductDefinitionFormation(*i)),
SecurityClassificationItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i)),
SecurityClassificationItemRef::ProductDefinitionRelationship(i) => out.push(EntityKey::ProductDefinitionRelationship(*i)),
SecurityClassificationItemRef::ProductDefinitionShape(i) => out.push(EntityKey::ProductDefinitionShape(*i)),
SecurityClassificationItemRef::ProductDefinitionUsage(i) => out.push(EntityKey::ProductDefinitionUsage(*i)),
SecurityClassificationItemRef::ProductDefinitionWithAssociatedDocuments(i) => out.push(EntityKey::ProductDefinitionWithAssociatedDocuments(*i)),
SecurityClassificationItemRef::PropertyDefinition(i) => out.push(EntityKey::PropertyDefinition(*i)),
SecurityClassificationItemRef::PropertyDefinitionRepresentation(i) => out.push(EntityKey::PropertyDefinitionRepresentation(*i)),
SecurityClassificationItemRef::Representation(i) => out.push(EntityKey::Representation(*i)),
SecurityClassificationItemRef::ResourceProperty(i) => out.push(EntityKey::ResourceProperty(*i)),
SecurityClassificationItemRef::ShapeDefinitionRepresentation(i) => out.push(EntityKey::ShapeDefinitionRepresentation(*i)),
SecurityClassificationItemRef::ShapeDimensionRepresentation(i) => out.push(EntityKey::ShapeDimensionRepresentation(*i)),
SecurityClassificationItemRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
SecurityClassificationItemRef::ShapeRepresentationWithParameters(i) => out.push(EntityKey::ShapeRepresentationWithParameters(*i)),
SecurityClassificationItemRef::SymbolRepresentation(i) => out.push(EntityKey::SymbolRepresentation(*i)),
SecurityClassificationItemRef::TessellatedShapeRepresentation(i) => out.push(EntityKey::TessellatedShapeRepresentation(*i)),
SecurityClassificationItemRef::VersionedActionRequest(i) => out.push(EntityKey::VersionedActionRequest(*i)),
SecurityClassificationItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_security_classification_level(&self, r: &SecurityClassificationLevelRef) -> u64 {
match r {
SecurityClassificationLevelRef::SecurityClassificationLevel(i) => {
self.security_classification_level_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_security_classification_level(
r: &SecurityClassificationLevelRef,
out: &mut Vec<EntityKey>,
) {
match r {
SecurityClassificationLevelRef::SecurityClassificationLevel(i) => {
out.push(EntityKey::SecurityClassificationLevel(*i))
}
}
}
fn id_of_ref_security_classification(&self, r: &SecurityClassificationRef) -> u64 {
match r {
SecurityClassificationRef::SecurityClassification(i) => {
self.security_classification_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_security_classification(r: &SecurityClassificationRef, out: &mut Vec<EntityKey>) {
match r {
SecurityClassificationRef::SecurityClassification(i) => {
out.push(EntityKey::SecurityClassification(*i))
}
}
}
fn id_of_ref_shape_aspect(&self, r: &ShapeAspectRef) -> u64 {
match r {
ShapeAspectRef::AllAroundShapeAspect(i) => {
self.all_around_shape_aspect_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::CentreOfSymmetry(i) => {
self.centre_of_symmetry_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::CommonDatum(i) => self.common_datum_ids[i.0].expect("dep id assigned"),
ShapeAspectRef::CompositeGroupShapeAspect(i) => {
self.composite_group_shape_aspect_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::CompositeShapeAspect(i) => {
self.composite_shape_aspect_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::ContinuousShapeAspect(i) => {
self.continuous_shape_aspect_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::Datum(i) => self.datum_ids[i.0].expect("dep id assigned"),
ShapeAspectRef::DatumFeature(i) => {
self.datum_feature_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::DatumSystem(i) => self.datum_system_ids[i.0].expect("dep id assigned"),
ShapeAspectRef::DatumTarget(i) => self.datum_target_ids[i.0].expect("dep id assigned"),
ShapeAspectRef::DefaultModelGeometricView(i) => {
self.default_model_geometric_view_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::DerivedShapeAspect(i) => {
self.derived_shape_aspect_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::PlacedDatumTargetFeature(i) => {
self.placed_datum_target_feature_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::ShapeAspect(i) => self.shape_aspect_ids[i.0].expect("dep id assigned"),
ShapeAspectRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
ShapeAspectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_shape_aspect(r: &ShapeAspectRef, out: &mut Vec<EntityKey>) {
match r {
ShapeAspectRef::AllAroundShapeAspect(i) => {
out.push(EntityKey::AllAroundShapeAspect(*i))
}
ShapeAspectRef::CentreOfSymmetry(i) => out.push(EntityKey::CentreOfSymmetry(*i)),
ShapeAspectRef::CommonDatum(i) => out.push(EntityKey::CommonDatum(*i)),
ShapeAspectRef::CompositeGroupShapeAspect(i) => {
out.push(EntityKey::CompositeGroupShapeAspect(*i))
}
ShapeAspectRef::CompositeShapeAspect(i) => {
out.push(EntityKey::CompositeShapeAspect(*i))
}
ShapeAspectRef::ContinuousShapeAspect(i) => {
out.push(EntityKey::ContinuousShapeAspect(*i))
}
ShapeAspectRef::Datum(i) => out.push(EntityKey::Datum(*i)),
ShapeAspectRef::DatumFeature(i) => out.push(EntityKey::DatumFeature(*i)),
ShapeAspectRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
ShapeAspectRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
ShapeAspectRef::DatumSystem(i) => out.push(EntityKey::DatumSystem(*i)),
ShapeAspectRef::DatumTarget(i) => out.push(EntityKey::DatumTarget(*i)),
ShapeAspectRef::DefaultModelGeometricView(i) => {
out.push(EntityKey::DefaultModelGeometricView(*i))
}
ShapeAspectRef::DerivedShapeAspect(i) => out.push(EntityKey::DerivedShapeAspect(*i)),
ShapeAspectRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
ShapeAspectRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
ShapeAspectRef::PlacedDatumTargetFeature(i) => {
out.push(EntityKey::PlacedDatumTargetFeature(*i))
}
ShapeAspectRef::ShapeAspect(i) => out.push(EntityKey::ShapeAspect(*i)),
ShapeAspectRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
ShapeAspectRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
ShapeAspectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_shape_dimension_representation(&self, r: &ShapeDimensionRepresentationRef) -> u64 {
match r {
ShapeDimensionRepresentationRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
ShapeDimensionRepresentationRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_shape_dimension_representation(
r: &ShapeDimensionRepresentationRef,
out: &mut Vec<EntityKey>,
) {
match r {
ShapeDimensionRepresentationRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
ShapeDimensionRepresentationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_shape_model(&self, r: &ShapeModelRef) -> u64 {
match r {
ShapeModelRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
ShapeModelRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
ShapeModelRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
ShapeModelRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_shape_model(r: &ShapeModelRef, out: &mut Vec<EntityKey>) {
match r {
ShapeModelRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
ShapeModelRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
ShapeModelRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
ShapeModelRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
ShapeModelRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
ShapeModelRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
ShapeModelRef::ShapeRepresentation(i) => out.push(EntityKey::ShapeRepresentation(*i)),
ShapeModelRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
ShapeModelRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
ShapeModelRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_shape_representation_relationship(
&self,
r: &ShapeRepresentationRelationshipRef,
) -> u64 {
match r {
ShapeRepresentationRelationshipRef::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0].expect("dep id assigned")
}
ShapeRepresentationRelationshipRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_shape_representation_relationship(
r: &ShapeRepresentationRelationshipRef,
out: &mut Vec<EntityKey>,
) {
match r {
ShapeRepresentationRelationshipRef::ShapeRepresentationRelationship(i) => {
out.push(EntityKey::ShapeRepresentationRelationship(*i))
}
ShapeRepresentationRelationshipRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_shell(&self, r: &ShellRef) -> u64 {
match r {
ShellRef::ClosedShell(i) => self.closed_shell_ids[i.0].expect("dep id assigned"),
ShellRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
ShellRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
ShellRef::VertexShell(i) => self.vertex_shell_ids[i.0].expect("dep id assigned"),
ShellRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
ShellRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_shell(r: &ShellRef, out: &mut Vec<EntityKey>) {
match r {
ShellRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
ShellRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
ShellRef::OrientedClosedShell(i) => out.push(EntityKey::OrientedClosedShell(*i)),
ShellRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
ShellRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
ShellRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_size_select(&self, r: &SizeSelectRef) -> u64 {
match r {
SizeSelectRef::LengthMeasureWithUnit(i) => {
self.length_measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::MassMeasureWithUnit(i) => {
self.mass_measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::MeasureWithUnit(i) => {
self.measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::PlaneAngleMeasureWithUnit(i) => {
self.plane_angle_measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::RatioMeasureWithUnit(i) => {
self.ratio_measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::UncertaintyMeasureWithUnit(i) => {
self.uncertainty_measure_with_unit_ids[i.0].expect("dep id assigned")
}
SizeSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
SizeSelectRef::DescriptiveMeasure(_) => panic!("scalar via single id_of"),
SizeSelectRef::PositiveLengthMeasure(_) => panic!("scalar via single id_of"),
}
}
fn deps_ref_size_select(r: &SizeSelectRef, out: &mut Vec<EntityKey>) {
match r {
SizeSelectRef::LengthMeasureWithUnit(i) => {
out.push(EntityKey::LengthMeasureWithUnit(*i))
}
SizeSelectRef::MassMeasureWithUnit(i) => out.push(EntityKey::MassMeasureWithUnit(*i)),
SizeSelectRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
SizeSelectRef::MeasureWithUnit(i) => out.push(EntityKey::MeasureWithUnit(*i)),
SizeSelectRef::PlaneAngleMeasureWithUnit(i) => {
out.push(EntityKey::PlaneAngleMeasureWithUnit(*i))
}
SizeSelectRef::RatioMeasureWithUnit(i) => out.push(EntityKey::RatioMeasureWithUnit(*i)),
SizeSelectRef::UncertaintyMeasureWithUnit(i) => {
out.push(EntityKey::UncertaintyMeasureWithUnit(*i))
}
SizeSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
SizeSelectRef::DescriptiveMeasure(_) => {}
SizeSelectRef::PositiveLengthMeasure(_) => {}
}
}
fn id_of_ref_start_request_item(&self, r: &StartRequestItemRef) -> u64 {
match r {
StartRequestItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
StartRequestItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
StartRequestItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_start_request_item(r: &StartRequestItemRef, out: &mut Vec<EntityKey>) {
match r {
StartRequestItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
StartRequestItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
StartRequestItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_state_observed(&self, r: &StateObservedRef) -> u64 {
match r {
StateObservedRef::StateObserved(i) => {
self.state_observed_ids[i.0].expect("dep id assigned")
}
StateObservedRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_state_observed(r: &StateObservedRef, out: &mut Vec<EntityKey>) {
match r {
StateObservedRef::StateObserved(i) => out.push(EntityKey::StateObserved(*i)),
StateObservedRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_state_type(&self, r: &StateTypeRef) -> u64 {
match r {
StateTypeRef::StateType(i) => self.state_type_ids[i.0].expect("dep id assigned"),
StateTypeRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_state_type(r: &StateTypeRef, out: &mut Vec<EntityKey>) {
match r {
StateTypeRef::StateType(i) => out.push(EntityKey::StateType(*i)),
StateTypeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_style_context_select(&self, r: &StyleContextSelectRef) -> u64 {
match r {
StyleContextSelectRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ApllPoint(i) => {
self.apll_point_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CompoundRepresentationItem(i) => {
self.compound_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ConstructiveGeometryRepresentationRelationship(i) => self
.constructive_geometry_representation_relationship_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ContextDependentShapeRepresentation(i) => {
self.context_dependent_shape_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DefinitionalRepresentationRelationship(i) => {
self.definitional_representation_relationship_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DefinitionalRepresentationRelationshipWithSameContext(i) => self
.definitional_representation_relationship_with_same_context_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DescriptiveRepresentationItem(i) => {
self.descriptive_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Direction(i) => {
self.direction_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::EdgeCurve(i) => {
self.edge_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::FaceBound(i) => {
self.face_bound_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::Group(i) => self.group_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Hyperbola(i) => {
self.hyperbola_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::IntegerRepresentationItem(i) => {
self.integer_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::LeaderCurve(i) => {
self.leader_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::MappedItem(i) => {
self.mapped_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::MeasureRepresentationItem(i) => {
self.measure_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::MechanicalDesignAndDraughtingRelationship(i) => self
.mechanical_design_and_draughting_relationship_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
self.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned")
}
StyleContextSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::OpenShell(i) => {
self.open_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Placement(i) => {
self.placement_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PlanarBox(i) => {
self.planar_box_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PresentationLayerAssignment(i) => {
self.presentation_layer_assignment_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PresentationSet(i) => {
self.presentation_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ProductConceptFeatureCategory(i) => {
self.product_concept_feature_category_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::QualifiedRepresentationItem(i) => {
self.qualified_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RealRepresentationItem(i) => {
self.real_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RepresentationItem(i) => {
self.representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RepresentationRelationship(i) => {
self.representation_relationship_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::RepresentationRelationshipWithTransformation(i) => self
.representation_relationship_with_transformation_ids[i.0]
.expect("dep id assigned"),
StyleContextSelectRef::SeamCurve(i) => {
self.seam_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ShapeRepresentationRelationship(i) => {
self.shape_representation_relationship_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::StyledItem(i) => {
self.styled_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::ValueRepresentationItem(i) => {
self.value_representation_item_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
StyleContextSelectRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::WireShell(i) => {
self.wire_shell_ids[i.0].expect("dep id assigned")
}
StyleContextSelectRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_style_context_select(r: &StyleContextSelectRef, out: &mut Vec<EntityKey>) {
match r {
StyleContextSelectRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
StyleContextSelectRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
StyleContextSelectRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
StyleContextSelectRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
StyleContextSelectRef::AnnotationOccurrence(i) => {
out.push(EntityKey::AnnotationOccurrence(*i))
}
StyleContextSelectRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
StyleContextSelectRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
StyleContextSelectRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
StyleContextSelectRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
StyleContextSelectRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
StyleContextSelectRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
StyleContextSelectRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
StyleContextSelectRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
StyleContextSelectRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
StyleContextSelectRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
StyleContextSelectRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
StyleContextSelectRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
StyleContextSelectRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
StyleContextSelectRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
StyleContextSelectRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
StyleContextSelectRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
StyleContextSelectRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
StyleContextSelectRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
StyleContextSelectRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
StyleContextSelectRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
StyleContextSelectRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
StyleContextSelectRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
StyleContextSelectRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
StyleContextSelectRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
StyleContextSelectRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
StyleContextSelectRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
StyleContextSelectRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
StyleContextSelectRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
StyleContextSelectRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
StyleContextSelectRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
StyleContextSelectRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
StyleContextSelectRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
StyleContextSelectRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
StyleContextSelectRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
StyleContextSelectRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
StyleContextSelectRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
StyleContextSelectRef::Circle(i) => out.push(EntityKey::Circle(*i)),
StyleContextSelectRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
StyleContextSelectRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
StyleContextSelectRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
StyleContextSelectRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
StyleContextSelectRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
StyleContextSelectRef::CompoundRepresentationItem(i) => {
out.push(EntityKey::CompoundRepresentationItem(*i))
}
StyleContextSelectRef::Conic(i) => out.push(EntityKey::Conic(*i)),
StyleContextSelectRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
StyleContextSelectRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
StyleContextSelectRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
StyleContextSelectRef::ConstructiveGeometryRepresentationRelationship(i) => out.push(
EntityKey::ConstructiveGeometryRepresentationRelationship(*i),
),
StyleContextSelectRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
StyleContextSelectRef::ContextDependentShapeRepresentation(i) => {
out.push(EntityKey::ContextDependentShapeRepresentation(*i))
}
StyleContextSelectRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
StyleContextSelectRef::Curve(i) => out.push(EntityKey::Curve(*i)),
StyleContextSelectRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
StyleContextSelectRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
StyleContextSelectRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
StyleContextSelectRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
StyleContextSelectRef::DefinitionalRepresentationRelationship(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationship(*i))
}
StyleContextSelectRef::DefinitionalRepresentationRelationshipWithSameContext(i) => {
out.push(EntityKey::DefinitionalRepresentationRelationshipWithSameContext(*i))
}
StyleContextSelectRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
StyleContextSelectRef::DescriptiveRepresentationItem(i) => {
out.push(EntityKey::DescriptiveRepresentationItem(*i))
}
StyleContextSelectRef::Direction(i) => out.push(EntityKey::Direction(*i)),
StyleContextSelectRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
StyleContextSelectRef::DraughtingCallout(i) => {
out.push(EntityKey::DraughtingCallout(*i))
}
StyleContextSelectRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
StyleContextSelectRef::Edge(i) => out.push(EntityKey::Edge(*i)),
StyleContextSelectRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
StyleContextSelectRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
StyleContextSelectRef::ElementarySurface(i) => {
out.push(EntityKey::ElementarySurface(*i))
}
StyleContextSelectRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
StyleContextSelectRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
StyleContextSelectRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
StyleContextSelectRef::Face(i) => out.push(EntityKey::Face(*i)),
StyleContextSelectRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
StyleContextSelectRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
StyleContextSelectRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
StyleContextSelectRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
StyleContextSelectRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
StyleContextSelectRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
StyleContextSelectRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
StyleContextSelectRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
StyleContextSelectRef::GeometricCurveSet(i) => {
out.push(EntityKey::GeometricCurveSet(*i))
}
StyleContextSelectRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
StyleContextSelectRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
StyleContextSelectRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
StyleContextSelectRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
StyleContextSelectRef::Group(i) => out.push(EntityKey::Group(*i)),
StyleContextSelectRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
StyleContextSelectRef::IntegerRepresentationItem(i) => {
out.push(EntityKey::IntegerRepresentationItem(*i))
}
StyleContextSelectRef::IntersectionCurve(i) => {
out.push(EntityKey::IntersectionCurve(*i))
}
StyleContextSelectRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
StyleContextSelectRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
StyleContextSelectRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
StyleContextSelectRef::Line(i) => out.push(EntityKey::Line(*i)),
StyleContextSelectRef::Loop(i) => out.push(EntityKey::Loop(*i)),
StyleContextSelectRef::ManifoldSolidBrep(i) => {
out.push(EntityKey::ManifoldSolidBrep(*i))
}
StyleContextSelectRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
StyleContextSelectRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
StyleContextSelectRef::MeasureRepresentationItem(i) => {
out.push(EntityKey::MeasureRepresentationItem(*i))
}
StyleContextSelectRef::MechanicalDesignAndDraughtingRelationship(i) => {
out.push(EntityKey::MechanicalDesignAndDraughtingRelationship(*i))
}
StyleContextSelectRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
StyleContextSelectRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
StyleContextSelectRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
StyleContextSelectRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
StyleContextSelectRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
StyleContextSelectRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
StyleContextSelectRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
StyleContextSelectRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
StyleContextSelectRef::OverRidingStyledItem(i) => {
out.push(EntityKey::OverRidingStyledItem(*i))
}
StyleContextSelectRef::Path(i) => out.push(EntityKey::Path(*i)),
StyleContextSelectRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
StyleContextSelectRef::Placement(i) => out.push(EntityKey::Placement(*i)),
StyleContextSelectRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
StyleContextSelectRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
StyleContextSelectRef::Plane(i) => out.push(EntityKey::Plane(*i)),
StyleContextSelectRef::Point(i) => out.push(EntityKey::Point(*i)),
StyleContextSelectRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
StyleContextSelectRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
StyleContextSelectRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
StyleContextSelectRef::PresentationLayerAssignment(i) => {
out.push(EntityKey::PresentationLayerAssignment(*i))
}
StyleContextSelectRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
StyleContextSelectRef::PresentationSet(i) => out.push(EntityKey::PresentationSet(*i)),
StyleContextSelectRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
StyleContextSelectRef::ProductConceptFeatureCategory(i) => {
out.push(EntityKey::ProductConceptFeatureCategory(*i))
}
StyleContextSelectRef::QualifiedRepresentationItem(i) => {
out.push(EntityKey::QualifiedRepresentationItem(*i))
}
StyleContextSelectRef::QuasiUniformCurve(i) => {
out.push(EntityKey::QuasiUniformCurve(*i))
}
StyleContextSelectRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
StyleContextSelectRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
StyleContextSelectRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
StyleContextSelectRef::RealRepresentationItem(i) => {
out.push(EntityKey::RealRepresentationItem(*i))
}
StyleContextSelectRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
StyleContextSelectRef::Representation(i) => out.push(EntityKey::Representation(*i)),
StyleContextSelectRef::RepresentationItem(i) => {
out.push(EntityKey::RepresentationItem(*i))
}
StyleContextSelectRef::RepresentationRelationship(i) => {
out.push(EntityKey::RepresentationRelationship(*i))
}
StyleContextSelectRef::RepresentationRelationshipWithTransformation(i) => {
out.push(EntityKey::RepresentationRelationshipWithTransformation(*i))
}
StyleContextSelectRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
StyleContextSelectRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
StyleContextSelectRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
StyleContextSelectRef::ShapeRepresentationRelationship(i) => {
out.push(EntityKey::ShapeRepresentationRelationship(*i))
}
StyleContextSelectRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
StyleContextSelectRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
StyleContextSelectRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
StyleContextSelectRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
StyleContextSelectRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
StyleContextSelectRef::Surface(i) => out.push(EntityKey::Surface(*i)),
StyleContextSelectRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
StyleContextSelectRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
StyleContextSelectRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
StyleContextSelectRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
StyleContextSelectRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
StyleContextSelectRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
StyleContextSelectRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
StyleContextSelectRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
StyleContextSelectRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
StyleContextSelectRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
StyleContextSelectRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
StyleContextSelectRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
StyleContextSelectRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
StyleContextSelectRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
StyleContextSelectRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
StyleContextSelectRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
StyleContextSelectRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
StyleContextSelectRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
StyleContextSelectRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
StyleContextSelectRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
StyleContextSelectRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
StyleContextSelectRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
StyleContextSelectRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
StyleContextSelectRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
StyleContextSelectRef::ValueRepresentationItem(i) => {
out.push(EntityKey::ValueRepresentationItem(*i))
}
StyleContextSelectRef::Vector(i) => out.push(EntityKey::Vector(*i)),
StyleContextSelectRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
StyleContextSelectRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
StyleContextSelectRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
StyleContextSelectRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
StyleContextSelectRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
StyleContextSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_styled_item(&self, r: &StyledItemRef) -> u64 {
match r {
StyledItemRef::AnnotationCurveOccurrence(i) => {
self.annotation_curve_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationFillAreaOccurrence(i) => {
self.annotation_fill_area_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationOccurrence(i) => {
self.annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
StyledItemRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationSymbolOccurrence(i) => {
self.annotation_symbol_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::AnnotationTextOccurrence(i) => {
self.annotation_text_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::ContextDependentOverRidingStyledItem(i) => {
self.context_dependent_over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
StyledItemRef::DraughtingAnnotationOccurrence(i) => {
self.draughting_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::LeaderCurve(i) => self.leader_curve_ids[i.0].expect("dep id assigned"),
StyledItemRef::LeaderTerminator(i) => {
self.leader_terminator_ids[i.0].expect("dep id assigned")
}
StyledItemRef::OverRidingStyledItem(i) => {
self.over_riding_styled_item_ids[i.0].expect("dep id assigned")
}
StyledItemRef::StyledItem(i) => self.styled_item_ids[i.0].expect("dep id assigned"),
StyledItemRef::TerminatorSymbol(i) => {
self.terminator_symbol_ids[i.0].expect("dep id assigned")
}
StyledItemRef::TessellatedAnnotationOccurrence(i) => {
self.tessellated_annotation_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_styled_item(r: &StyledItemRef, out: &mut Vec<EntityKey>) {
match r {
StyledItemRef::AnnotationCurveOccurrence(i) => {
out.push(EntityKey::AnnotationCurveOccurrence(*i))
}
StyledItemRef::AnnotationFillAreaOccurrence(i) => {
out.push(EntityKey::AnnotationFillAreaOccurrence(*i))
}
StyledItemRef::AnnotationOccurrence(i) => out.push(EntityKey::AnnotationOccurrence(*i)),
StyledItemRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
StyledItemRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
StyledItemRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
StyledItemRef::AnnotationSymbolOccurrence(i) => {
out.push(EntityKey::AnnotationSymbolOccurrence(*i))
}
StyledItemRef::AnnotationTextOccurrence(i) => {
out.push(EntityKey::AnnotationTextOccurrence(*i))
}
StyledItemRef::ContextDependentOverRidingStyledItem(i) => {
out.push(EntityKey::ContextDependentOverRidingStyledItem(*i))
}
StyledItemRef::DraughtingAnnotationOccurrence(i) => {
out.push(EntityKey::DraughtingAnnotationOccurrence(*i))
}
StyledItemRef::LeaderCurve(i) => out.push(EntityKey::LeaderCurve(*i)),
StyledItemRef::LeaderTerminator(i) => out.push(EntityKey::LeaderTerminator(*i)),
StyledItemRef::OverRidingStyledItem(i) => out.push(EntityKey::OverRidingStyledItem(*i)),
StyledItemRef::StyledItem(i) => out.push(EntityKey::StyledItem(*i)),
StyledItemRef::TerminatorSymbol(i) => out.push(EntityKey::TerminatorSymbol(*i)),
StyledItemRef::TessellatedAnnotationOccurrence(i) => {
out.push(EntityKey::TessellatedAnnotationOccurrence(*i))
}
StyledItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_styled_item_target(&self, r: &StyledItemTargetRef) -> u64 {
match r {
StyledItemTargetRef::AdvancedBrepShapeRepresentation(i) => {
self.advanced_brep_shape_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AdvancedFace(i) => {
self.advanced_face_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationPlaceholderLeaderLine(i) => {
self.annotation_placeholder_leader_line_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationPlaceholderOccurrence(i) => {
self.annotation_placeholder_occurrence_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => self
.annotation_placeholder_occurrence_with_leader_line_ids[i.0]
.expect("dep id assigned"),
StyledItemTargetRef::AnnotationPlane(i) => {
self.annotation_plane_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationSymbol(i) => {
self.annotation_symbol_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationToAnnotationLeaderLine(i) => {
self.annotation_to_annotation_leader_line_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AnnotationToModelLeaderLine(i) => {
self.annotation_to_model_leader_line_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::AuxiliaryLeaderLine(i) => {
self.auxiliary_leader_line_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Axis1Placement(i) => {
self.axis1_placement_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Axis2Placement2d(i) => {
self.axis2_placement2d_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Axis2Placement3d(i) => {
self.axis2_placement3d_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BSplineCurve(i) => {
self.b_spline_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BSplineCurveWithKnots(i) => {
self.b_spline_curve_with_knots_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BezierCurve(i) => {
self.bezier_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BezierSurface(i) => {
self.bezier_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BoundedCurve(i) => {
self.bounded_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BoundedPcurve(i) => {
self.bounded_pcurve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BoundedSurfaceCurve(i) => {
self.bounded_surface_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::BrepWithVoids(i) => {
self.brep_with_voids_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraImage(i) => {
self.camera_image_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraImage3dWithScale(i) => {
self.camera_image3d_with_scale_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraModel(i) => {
self.camera_model_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraModelD3(i) => {
self.camera_model_d3_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraModelD3MultiClipping(i) => {
self.camera_model_d3_multi_clipping_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CameraModelD3WithHlhsr(i) => {
self.camera_model_d3_with_hlhsr_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CharacterizedRepresentation(i) => {
self.characterized_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Circle(i) => self.circle_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ClosedShell(i) => {
self.closed_shell_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CompositeCurve(i) => {
self.composite_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Conic(i) => self.conic_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ConnectedFaceSet(i) => {
self.connected_face_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ConstructiveGeometryRepresentation(i) => {
self.constructive_geometry_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Curve(i) => self.curve_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::DefinedSymbol(i) => {
self.defined_symbol_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::DefinitionalRepresentation(i) => {
self.definitional_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Direction(i) => self.direction_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::DraughtingCallout(i) => {
self.draughting_callout_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::DraughtingModel(i) => {
self.draughting_model_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Edge(i) => self.edge_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::EdgeCurve(i) => self.edge_curve_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::EdgeLoop(i) => self.edge_loop_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Ellipse(i) => self.ellipse_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ExternallyDefinedHatchStyle(i) => {
self.externally_defined_hatch_style_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ExternallyDefinedTileStyle(i) => {
self.externally_defined_tile_style_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Face(i) => self.face_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::FaceBound(i) => self.face_bound_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::FaceOuterBound(i) => {
self.face_outer_bound_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FaceSurface(i) => {
self.face_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FillAreaStyleHatching(i) => {
self.fill_area_style_hatching_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FillAreaStyleTileColouredRegion(i) => {
self.fill_area_style_tile_coloured_region_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FillAreaStyleTileCurveWithStyle(i) => {
self.fill_area_style_tile_curve_with_style_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FillAreaStyleTileSymbolWithStyle(i) => {
self.fill_area_style_tile_symbol_with_style_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::FillAreaStyleTiles(i) => {
self.fill_area_style_tiles_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::GeometricCurveSet(i) => {
self.geometric_curve_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::GeometricRepresentationItem(i) => {
self.geometric_representation_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::GeometricSet(i) => {
self.geometric_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => self
.geometrically_bounded_surface_shape_representation_ids[i.0]
.expect("dep id assigned"),
StyledItemTargetRef::GeometricallyBoundedWireframeShapeRepresentation(i) => self
.geometrically_bounded_wireframe_shape_representation_ids[i.0]
.expect("dep id assigned"),
StyledItemTargetRef::Hyperbola(i) => self.hyperbola_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::IntersectionCurve(i) => {
self.intersection_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::LeaderDirectedCallout(i) => {
self.leader_directed_callout_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Line(i) => self.line_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Loop(i) => self.loop_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ManifoldSolidBrep(i) => {
self.manifold_solid_brep_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ManifoldSurfaceShapeRepresentation(i) => {
self.manifold_surface_shape_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::MappedItem(i) => {
self.mapped_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::MechanicalDesignGeometricPresentationRepresentation(i) => self
.mechanical_design_geometric_presentation_representation_ids[i.0]
.expect("dep id assigned"),
StyledItemTargetRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
self.mechanical_design_presentation_representation_with_draughting_ids[i.0]
.expect("dep id assigned")
}
StyledItemTargetRef::MechanicalDesignShadedPresentationRepresentation(i) => self
.mechanical_design_shaded_presentation_representation_ids[i.0]
.expect("dep id assigned"),
StyledItemTargetRef::OffsetSurface(i) => {
self.offset_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::OneDirectionRepeatFactor(i) => {
self.one_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::OpenShell(i) => self.open_shell_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::OrientedClosedShell(i) => {
self.oriented_closed_shell_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::OrientedEdge(i) => {
self.oriented_edge_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Path(i) => self.path_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Pcurve(i) => self.pcurve_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Placement(i) => self.placement_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::PlanarBox(i) => self.planar_box_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::PlanarExtent(i) => {
self.planar_extent_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Point(i) => self.point_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::PolyLoop(i) => self.poly_loop_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Polyline(i) => self.polyline_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::PresentationArea(i) => {
self.presentation_area_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::PresentationRepresentation(i) => {
self.presentation_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::PresentationView(i) => {
self.presentation_view_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::QuasiUniformCurve(i) => {
self.quasi_uniform_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::RationalBSplineCurve(i) => {
self.rational_b_spline_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Representation(i) => {
self.representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::RepresentationReference(i) => {
self.representation_reference_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SeamCurve(i) => self.seam_curve_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::ShapeDimensionRepresentation(i) => {
self.shape_dimension_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ShapeRepresentation(i) => {
self.shape_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ShapeRepresentationWithParameters(i) => {
self.shape_representation_with_parameters_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ShellBasedSurfaceModel(i) => {
self.shell_based_surface_model_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SolidModel(i) => {
self.solid_model_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::SurfaceCurve(i) => {
self.surface_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SweptSurface(i) => {
self.swept_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SymbolRepresentation(i) => {
self.symbol_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedShapeRepresentation(i) => {
self.tessellated_shape_representation_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TopologicalRepresentationItem(i) => {
self.topological_representation_item_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TrimmedCurve(i) => {
self.trimmed_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::UniformCurve(i) => {
self.uniform_curve_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::VertexLoop(i) => {
self.vertex_loop_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::VertexPoint(i) => {
self.vertex_point_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::VertexShell(i) => {
self.vertex_shell_ids[i.0].expect("dep id assigned")
}
StyledItemTargetRef::WireShell(i) => self.wire_shell_ids[i.0].expect("dep id assigned"),
StyledItemTargetRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_styled_item_target(r: &StyledItemTargetRef, out: &mut Vec<EntityKey>) {
match r {
StyledItemTargetRef::AdvancedBrepShapeRepresentation(i) => {
out.push(EntityKey::AdvancedBrepShapeRepresentation(*i))
}
StyledItemTargetRef::AdvancedFace(i) => out.push(EntityKey::AdvancedFace(*i)),
StyledItemTargetRef::AnnotationPlaceholderLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderLeaderLine(*i))
}
StyledItemTargetRef::AnnotationPlaceholderOccurrence(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrence(*i))
}
StyledItemTargetRef::AnnotationPlaceholderOccurrenceWithLeaderLine(i) => {
out.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(*i))
}
StyledItemTargetRef::AnnotationPlane(i) => out.push(EntityKey::AnnotationPlane(*i)),
StyledItemTargetRef::AnnotationSymbol(i) => out.push(EntityKey::AnnotationSymbol(*i)),
StyledItemTargetRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
StyledItemTargetRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
StyledItemTargetRef::AnnotationToAnnotationLeaderLine(i) => {
out.push(EntityKey::AnnotationToAnnotationLeaderLine(*i))
}
StyledItemTargetRef::AnnotationToModelLeaderLine(i) => {
out.push(EntityKey::AnnotationToModelLeaderLine(*i))
}
StyledItemTargetRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
StyledItemTargetRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
StyledItemTargetRef::AuxiliaryLeaderLine(i) => {
out.push(EntityKey::AuxiliaryLeaderLine(*i))
}
StyledItemTargetRef::Axis1Placement(i) => out.push(EntityKey::Axis1Placement(*i)),
StyledItemTargetRef::Axis2Placement2d(i) => out.push(EntityKey::Axis2Placement2d(*i)),
StyledItemTargetRef::Axis2Placement3d(i) => out.push(EntityKey::Axis2Placement3d(*i)),
StyledItemTargetRef::BSplineCurve(i) => out.push(EntityKey::BSplineCurve(*i)),
StyledItemTargetRef::BSplineCurveWithKnots(i) => {
out.push(EntityKey::BSplineCurveWithKnots(*i))
}
StyledItemTargetRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
StyledItemTargetRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
StyledItemTargetRef::BezierCurve(i) => out.push(EntityKey::BezierCurve(*i)),
StyledItemTargetRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
StyledItemTargetRef::BoundedCurve(i) => out.push(EntityKey::BoundedCurve(*i)),
StyledItemTargetRef::BoundedPcurve(i) => out.push(EntityKey::BoundedPcurve(*i)),
StyledItemTargetRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
StyledItemTargetRef::BoundedSurfaceCurve(i) => {
out.push(EntityKey::BoundedSurfaceCurve(*i))
}
StyledItemTargetRef::BrepWithVoids(i) => out.push(EntityKey::BrepWithVoids(*i)),
StyledItemTargetRef::CameraImage(i) => out.push(EntityKey::CameraImage(*i)),
StyledItemTargetRef::CameraImage3dWithScale(i) => {
out.push(EntityKey::CameraImage3dWithScale(*i))
}
StyledItemTargetRef::CameraModel(i) => out.push(EntityKey::CameraModel(*i)),
StyledItemTargetRef::CameraModelD3(i) => out.push(EntityKey::CameraModelD3(*i)),
StyledItemTargetRef::CameraModelD3MultiClipping(i) => {
out.push(EntityKey::CameraModelD3MultiClipping(*i))
}
StyledItemTargetRef::CameraModelD3WithHlhsr(i) => {
out.push(EntityKey::CameraModelD3WithHlhsr(*i))
}
StyledItemTargetRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
StyledItemTargetRef::CharacterizedRepresentation(i) => {
out.push(EntityKey::CharacterizedRepresentation(*i))
}
StyledItemTargetRef::Circle(i) => out.push(EntityKey::Circle(*i)),
StyledItemTargetRef::ClosedShell(i) => out.push(EntityKey::ClosedShell(*i)),
StyledItemTargetRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
StyledItemTargetRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
StyledItemTargetRef::CompositeCurve(i) => out.push(EntityKey::CompositeCurve(*i)),
StyledItemTargetRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
StyledItemTargetRef::Conic(i) => out.push(EntityKey::Conic(*i)),
StyledItemTargetRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
StyledItemTargetRef::ConnectedFaceSet(i) => out.push(EntityKey::ConnectedFaceSet(*i)),
StyledItemTargetRef::ConstructiveGeometryRepresentation(i) => {
out.push(EntityKey::ConstructiveGeometryRepresentation(*i))
}
StyledItemTargetRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
StyledItemTargetRef::Curve(i) => out.push(EntityKey::Curve(*i)),
StyledItemTargetRef::CylindricalSurface(i) => {
out.push(EntityKey::CylindricalSurface(*i))
}
StyledItemTargetRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
StyledItemTargetRef::DefinedSymbol(i) => out.push(EntityKey::DefinedSymbol(*i)),
StyledItemTargetRef::DefinitionalRepresentation(i) => {
out.push(EntityKey::DefinitionalRepresentation(*i))
}
StyledItemTargetRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
StyledItemTargetRef::Direction(i) => out.push(EntityKey::Direction(*i)),
StyledItemTargetRef::DraughtingCallout(i) => out.push(EntityKey::DraughtingCallout(*i)),
StyledItemTargetRef::DraughtingModel(i) => out.push(EntityKey::DraughtingModel(*i)),
StyledItemTargetRef::Edge(i) => out.push(EntityKey::Edge(*i)),
StyledItemTargetRef::EdgeCurve(i) => out.push(EntityKey::EdgeCurve(*i)),
StyledItemTargetRef::EdgeLoop(i) => out.push(EntityKey::EdgeLoop(*i)),
StyledItemTargetRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
StyledItemTargetRef::Ellipse(i) => out.push(EntityKey::Ellipse(*i)),
StyledItemTargetRef::ExternallyDefinedHatchStyle(i) => {
out.push(EntityKey::ExternallyDefinedHatchStyle(*i))
}
StyledItemTargetRef::ExternallyDefinedTileStyle(i) => {
out.push(EntityKey::ExternallyDefinedTileStyle(*i))
}
StyledItemTargetRef::Face(i) => out.push(EntityKey::Face(*i)),
StyledItemTargetRef::FaceBound(i) => out.push(EntityKey::FaceBound(*i)),
StyledItemTargetRef::FaceOuterBound(i) => out.push(EntityKey::FaceOuterBound(*i)),
StyledItemTargetRef::FaceSurface(i) => out.push(EntityKey::FaceSurface(*i)),
StyledItemTargetRef::FillAreaStyleHatching(i) => {
out.push(EntityKey::FillAreaStyleHatching(*i))
}
StyledItemTargetRef::FillAreaStyleTileColouredRegion(i) => {
out.push(EntityKey::FillAreaStyleTileColouredRegion(*i))
}
StyledItemTargetRef::FillAreaStyleTileCurveWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileCurveWithStyle(*i))
}
StyledItemTargetRef::FillAreaStyleTileSymbolWithStyle(i) => {
out.push(EntityKey::FillAreaStyleTileSymbolWithStyle(*i))
}
StyledItemTargetRef::FillAreaStyleTiles(i) => {
out.push(EntityKey::FillAreaStyleTiles(*i))
}
StyledItemTargetRef::GeometricCurveSet(i) => out.push(EntityKey::GeometricCurveSet(*i)),
StyledItemTargetRef::GeometricRepresentationItem(i) => {
out.push(EntityKey::GeometricRepresentationItem(*i))
}
StyledItemTargetRef::GeometricSet(i) => out.push(EntityKey::GeometricSet(*i)),
StyledItemTargetRef::GeometricallyBoundedSurfaceShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(*i),
),
StyledItemTargetRef::GeometricallyBoundedWireframeShapeRepresentation(i) => out.push(
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(*i),
),
StyledItemTargetRef::Hyperbola(i) => out.push(EntityKey::Hyperbola(*i)),
StyledItemTargetRef::IntersectionCurve(i) => out.push(EntityKey::IntersectionCurve(*i)),
StyledItemTargetRef::LeaderDirectedCallout(i) => {
out.push(EntityKey::LeaderDirectedCallout(*i))
}
StyledItemTargetRef::Line(i) => out.push(EntityKey::Line(*i)),
StyledItemTargetRef::Loop(i) => out.push(EntityKey::Loop(*i)),
StyledItemTargetRef::ManifoldSolidBrep(i) => out.push(EntityKey::ManifoldSolidBrep(*i)),
StyledItemTargetRef::ManifoldSurfaceShapeRepresentation(i) => {
out.push(EntityKey::ManifoldSurfaceShapeRepresentation(*i))
}
StyledItemTargetRef::MappedItem(i) => out.push(EntityKey::MappedItem(*i)),
StyledItemTargetRef::MechanicalDesignGeometricPresentationRepresentation(i) => {
out.push(EntityKey::MechanicalDesignGeometricPresentationRepresentation(*i))
}
StyledItemTargetRef::MechanicalDesignPresentationRepresentationWithDraughting(i) => {
out.push(EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(*i))
}
StyledItemTargetRef::MechanicalDesignShadedPresentationRepresentation(i) => out.push(
EntityKey::MechanicalDesignShadedPresentationRepresentation(*i),
),
StyledItemTargetRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
StyledItemTargetRef::OneDirectionRepeatFactor(i) => {
out.push(EntityKey::OneDirectionRepeatFactor(*i))
}
StyledItemTargetRef::OpenShell(i) => out.push(EntityKey::OpenShell(*i)),
StyledItemTargetRef::OrientedClosedShell(i) => {
out.push(EntityKey::OrientedClosedShell(*i))
}
StyledItemTargetRef::OrientedEdge(i) => out.push(EntityKey::OrientedEdge(*i)),
StyledItemTargetRef::Path(i) => out.push(EntityKey::Path(*i)),
StyledItemTargetRef::Pcurve(i) => out.push(EntityKey::Pcurve(*i)),
StyledItemTargetRef::Placement(i) => out.push(EntityKey::Placement(*i)),
StyledItemTargetRef::PlanarBox(i) => out.push(EntityKey::PlanarBox(*i)),
StyledItemTargetRef::PlanarExtent(i) => out.push(EntityKey::PlanarExtent(*i)),
StyledItemTargetRef::Plane(i) => out.push(EntityKey::Plane(*i)),
StyledItemTargetRef::Point(i) => out.push(EntityKey::Point(*i)),
StyledItemTargetRef::PolyLoop(i) => out.push(EntityKey::PolyLoop(*i)),
StyledItemTargetRef::Polyline(i) => out.push(EntityKey::Polyline(*i)),
StyledItemTargetRef::PresentationArea(i) => out.push(EntityKey::PresentationArea(*i)),
StyledItemTargetRef::PresentationRepresentation(i) => {
out.push(EntityKey::PresentationRepresentation(*i))
}
StyledItemTargetRef::PresentationView(i) => out.push(EntityKey::PresentationView(*i)),
StyledItemTargetRef::QuasiUniformCurve(i) => out.push(EntityKey::QuasiUniformCurve(*i)),
StyledItemTargetRef::QuasiUniformSurface(i) => {
out.push(EntityKey::QuasiUniformSurface(*i))
}
StyledItemTargetRef::RationalBSplineCurve(i) => {
out.push(EntityKey::RationalBSplineCurve(*i))
}
StyledItemTargetRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
StyledItemTargetRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
StyledItemTargetRef::Representation(i) => out.push(EntityKey::Representation(*i)),
StyledItemTargetRef::RepresentationReference(i) => {
out.push(EntityKey::RepresentationReference(*i))
}
StyledItemTargetRef::SeamCurve(i) => out.push(EntityKey::SeamCurve(*i)),
StyledItemTargetRef::ShapeDimensionRepresentation(i) => {
out.push(EntityKey::ShapeDimensionRepresentation(*i))
}
StyledItemTargetRef::ShapeRepresentation(i) => {
out.push(EntityKey::ShapeRepresentation(*i))
}
StyledItemTargetRef::ShapeRepresentationWithParameters(i) => {
out.push(EntityKey::ShapeRepresentationWithParameters(*i))
}
StyledItemTargetRef::ShellBasedSurfaceModel(i) => {
out.push(EntityKey::ShellBasedSurfaceModel(*i))
}
StyledItemTargetRef::SolidModel(i) => out.push(EntityKey::SolidModel(*i)),
StyledItemTargetRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
StyledItemTargetRef::Surface(i) => out.push(EntityKey::Surface(*i)),
StyledItemTargetRef::SurfaceCurve(i) => out.push(EntityKey::SurfaceCurve(*i)),
StyledItemTargetRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
StyledItemTargetRef::SurfaceOfRevolution(i) => {
out.push(EntityKey::SurfaceOfRevolution(*i))
}
StyledItemTargetRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
StyledItemTargetRef::SymbolRepresentation(i) => {
out.push(EntityKey::SymbolRepresentation(*i))
}
StyledItemTargetRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
StyledItemTargetRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
StyledItemTargetRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
StyledItemTargetRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
StyledItemTargetRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
StyledItemTargetRef::TessellatedShapeRepresentation(i) => {
out.push(EntityKey::TessellatedShapeRepresentation(*i))
}
StyledItemTargetRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
StyledItemTargetRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
StyledItemTargetRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
StyledItemTargetRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
StyledItemTargetRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
StyledItemTargetRef::TopologicalRepresentationItem(i) => {
out.push(EntityKey::TopologicalRepresentationItem(*i))
}
StyledItemTargetRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
StyledItemTargetRef::TrimmedCurve(i) => out.push(EntityKey::TrimmedCurve(*i)),
StyledItemTargetRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
StyledItemTargetRef::UniformCurve(i) => out.push(EntityKey::UniformCurve(*i)),
StyledItemTargetRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
StyledItemTargetRef::Vector(i) => out.push(EntityKey::Vector(*i)),
StyledItemTargetRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
StyledItemTargetRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
StyledItemTargetRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
StyledItemTargetRef::VertexShell(i) => out.push(EntityKey::VertexShell(*i)),
StyledItemTargetRef::WireShell(i) => out.push(EntityKey::WireShell(*i)),
StyledItemTargetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_supported_item(&self, r: &SupportedItemRef) -> u64 {
match r {
SupportedItemRef::Action(i) => self.action_ids[i.0].expect("dep id assigned"),
SupportedItemRef::ActionDirective(i) => {
self.action_directive_ids[i.0].expect("dep id assigned")
}
SupportedItemRef::ActionMethod(i) => {
self.action_method_ids[i.0].expect("dep id assigned")
}
SupportedItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_supported_item(r: &SupportedItemRef, out: &mut Vec<EntityKey>) {
match r {
SupportedItemRef::Action(i) => out.push(EntityKey::Action(*i)),
SupportedItemRef::ActionDirective(i) => out.push(EntityKey::ActionDirective(*i)),
SupportedItemRef::ActionMethod(i) => out.push(EntityKey::ActionMethod(*i)),
SupportedItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_surface(&self, r: &SurfaceRef) -> u64 {
match r {
SurfaceRef::BSplineSurface(i) => {
self.b_spline_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::BSplineSurfaceWithKnots(i) => {
self.b_spline_surface_with_knots_ids[i.0].expect("dep id assigned")
}
SurfaceRef::BezierSurface(i) => self.bezier_surface_ids[i.0].expect("dep id assigned"),
SurfaceRef::BoundedSurface(i) => {
self.bounded_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::ConicalSurface(i) => {
self.conical_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::CylindricalSurface(i) => {
self.cylindrical_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::DegenerateToroidalSurface(i) => {
self.degenerate_toroidal_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::ElementarySurface(i) => {
self.elementary_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::OffsetSurface(i) => self.offset_surface_ids[i.0].expect("dep id assigned"),
SurfaceRef::Plane(i) => self.plane_ids[i.0].expect("dep id assigned"),
SurfaceRef::QuasiUniformSurface(i) => {
self.quasi_uniform_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::RationalBSplineSurface(i) => {
self.rational_b_spline_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::SphericalSurface(i) => {
self.spherical_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::Surface(i) => self.surface_ids[i.0].expect("dep id assigned"),
SurfaceRef::SurfaceOfLinearExtrusion(i) => {
self.surface_of_linear_extrusion_ids[i.0].expect("dep id assigned")
}
SurfaceRef::SurfaceOfRevolution(i) => {
self.surface_of_revolution_ids[i.0].expect("dep id assigned")
}
SurfaceRef::SweptSurface(i) => self.swept_surface_ids[i.0].expect("dep id assigned"),
SurfaceRef::ToroidalSurface(i) => {
self.toroidal_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::UniformSurface(i) => {
self.uniform_surface_ids[i.0].expect("dep id assigned")
}
SurfaceRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_surface(r: &SurfaceRef, out: &mut Vec<EntityKey>) {
match r {
SurfaceRef::BSplineSurface(i) => out.push(EntityKey::BSplineSurface(*i)),
SurfaceRef::BSplineSurfaceWithKnots(i) => {
out.push(EntityKey::BSplineSurfaceWithKnots(*i))
}
SurfaceRef::BezierSurface(i) => out.push(EntityKey::BezierSurface(*i)),
SurfaceRef::BoundedSurface(i) => out.push(EntityKey::BoundedSurface(*i)),
SurfaceRef::ConicalSurface(i) => out.push(EntityKey::ConicalSurface(*i)),
SurfaceRef::CylindricalSurface(i) => out.push(EntityKey::CylindricalSurface(*i)),
SurfaceRef::DegenerateToroidalSurface(i) => {
out.push(EntityKey::DegenerateToroidalSurface(*i))
}
SurfaceRef::ElementarySurface(i) => out.push(EntityKey::ElementarySurface(*i)),
SurfaceRef::OffsetSurface(i) => out.push(EntityKey::OffsetSurface(*i)),
SurfaceRef::Plane(i) => out.push(EntityKey::Plane(*i)),
SurfaceRef::QuasiUniformSurface(i) => out.push(EntityKey::QuasiUniformSurface(*i)),
SurfaceRef::RationalBSplineSurface(i) => {
out.push(EntityKey::RationalBSplineSurface(*i))
}
SurfaceRef::SphericalSurface(i) => out.push(EntityKey::SphericalSurface(*i)),
SurfaceRef::Surface(i) => out.push(EntityKey::Surface(*i)),
SurfaceRef::SurfaceOfLinearExtrusion(i) => {
out.push(EntityKey::SurfaceOfLinearExtrusion(*i))
}
SurfaceRef::SurfaceOfRevolution(i) => out.push(EntityKey::SurfaceOfRevolution(*i)),
SurfaceRef::SweptSurface(i) => out.push(EntityKey::SweptSurface(*i)),
SurfaceRef::ToroidalSurface(i) => out.push(EntityKey::ToroidalSurface(*i)),
SurfaceRef::UniformSurface(i) => out.push(EntityKey::UniformSurface(*i)),
SurfaceRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_surface_rendering_properties(&self, r: &SurfaceRenderingPropertiesRef) -> u64 {
match r {
SurfaceRenderingPropertiesRef::SurfaceRenderingProperties(i) => {
self.surface_rendering_properties_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_surface_rendering_properties(
r: &SurfaceRenderingPropertiesRef,
out: &mut Vec<EntityKey>,
) {
match r {
SurfaceRenderingPropertiesRef::SurfaceRenderingProperties(i) => {
out.push(EntityKey::SurfaceRenderingProperties(*i))
}
}
}
fn id_of_ref_surface_side_style_select(&self, r: &SurfaceSideStyleSelectRef) -> u64 {
match r {
SurfaceSideStyleSelectRef::PreDefinedSurfaceSideStyle(i) => {
self.pre_defined_surface_side_style_ids[i.0].expect("dep id assigned")
}
SurfaceSideStyleSelectRef::SurfaceSideStyle(i) => {
self.surface_side_style_ids[i.0].expect("dep id assigned")
}
SurfaceSideStyleSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_surface_side_style_select(r: &SurfaceSideStyleSelectRef, out: &mut Vec<EntityKey>) {
match r {
SurfaceSideStyleSelectRef::PreDefinedSurfaceSideStyle(i) => {
out.push(EntityKey::PreDefinedSurfaceSideStyle(*i))
}
SurfaceSideStyleSelectRef::SurfaceSideStyle(i) => {
out.push(EntityKey::SurfaceSideStyle(*i))
}
SurfaceSideStyleSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_surface_style_element_select(&self, r: &SurfaceStyleElementSelectRef) -> u64 {
match r {
SurfaceStyleElementSelectRef::SurfaceStyleBoundary(i) => {
self.surface_style_boundary_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleControlGrid(i) => {
self.surface_style_control_grid_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleFillArea(i) => {
self.surface_style_fill_area_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleParameterLine(i) => {
self.surface_style_parameter_line_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleRendering(i) => {
self.surface_style_rendering_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleRenderingWithProperties(i) => {
self.surface_style_rendering_with_properties_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleSegmentationCurve(i) => {
self.surface_style_segmentation_curve_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::SurfaceStyleSilhouette(i) => {
self.surface_style_silhouette_ids[i.0].expect("dep id assigned")
}
SurfaceStyleElementSelectRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_surface_style_element_select(
r: &SurfaceStyleElementSelectRef,
out: &mut Vec<EntityKey>,
) {
match r {
SurfaceStyleElementSelectRef::SurfaceStyleBoundary(i) => {
out.push(EntityKey::SurfaceStyleBoundary(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleControlGrid(i) => {
out.push(EntityKey::SurfaceStyleControlGrid(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleFillArea(i) => {
out.push(EntityKey::SurfaceStyleFillArea(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleParameterLine(i) => {
out.push(EntityKey::SurfaceStyleParameterLine(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleRendering(i) => {
out.push(EntityKey::SurfaceStyleRendering(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleRenderingWithProperties(i) => {
out.push(EntityKey::SurfaceStyleRenderingWithProperties(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleSegmentationCurve(i) => {
out.push(EntityKey::SurfaceStyleSegmentationCurve(*i))
}
SurfaceStyleElementSelectRef::SurfaceStyleSilhouette(i) => {
out.push(EntityKey::SurfaceStyleSilhouette(*i))
}
SurfaceStyleElementSelectRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_symbol_style_select(&self, r: &SymbolStyleSelectRef) -> u64 {
match r {
SymbolStyleSelectRef::SymbolColour(i) => {
self.symbol_colour_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_symbol_style_select(r: &SymbolStyleSelectRef, out: &mut Vec<EntityKey>) {
match r {
SymbolStyleSelectRef::SymbolColour(i) => out.push(EntityKey::SymbolColour(*i)),
}
}
fn id_of_ref_symbol_target(&self, r: &SymbolTargetRef) -> u64 {
match r {
SymbolTargetRef::SymbolTarget(i) => {
self.symbol_target_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_symbol_target(r: &SymbolTargetRef, out: &mut Vec<EntityKey>) {
match r {
SymbolTargetRef::SymbolTarget(i) => out.push(EntityKey::SymbolTarget(*i)),
}
}
fn id_of_ref_tessellated_item(&self, r: &TessellatedItemRef) -> u64 {
match r {
TessellatedItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::ComplexTriangulatedSurfaceSet(i) => {
self.complex_triangulated_surface_set_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::CoordinatesList(i) => {
self.coordinates_list_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::RepositionedTessellatedItem(i) => {
self.repositioned_tessellated_item_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedCurveSet(i) => {
self.tessellated_curve_set_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedGeometricSet(i) => {
self.tessellated_geometric_set_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedItem(i) => {
self.tessellated_item_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedShell(i) => {
self.tessellated_shell_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedSolid(i) => {
self.tessellated_solid_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::TessellatedSurfaceSet(i) => {
self.tessellated_surface_set_ids[i.0].expect("dep id assigned")
}
TessellatedItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_tessellated_item(r: &TessellatedItemRef, out: &mut Vec<EntityKey>) {
match r {
TessellatedItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
TessellatedItemRef::ComplexTriangulatedSurfaceSet(i) => {
out.push(EntityKey::ComplexTriangulatedSurfaceSet(*i))
}
TessellatedItemRef::CoordinatesList(i) => out.push(EntityKey::CoordinatesList(*i)),
TessellatedItemRef::RepositionedTessellatedItem(i) => {
out.push(EntityKey::RepositionedTessellatedItem(*i))
}
TessellatedItemRef::TessellatedCurveSet(i) => {
out.push(EntityKey::TessellatedCurveSet(*i))
}
TessellatedItemRef::TessellatedFace(i) => out.push(EntityKey::TessellatedFace(*i)),
TessellatedItemRef::TessellatedGeometricSet(i) => {
out.push(EntityKey::TessellatedGeometricSet(*i))
}
TessellatedItemRef::TessellatedItem(i) => out.push(EntityKey::TessellatedItem(*i)),
TessellatedItemRef::TessellatedShell(i) => out.push(EntityKey::TessellatedShell(*i)),
TessellatedItemRef::TessellatedSolid(i) => out.push(EntityKey::TessellatedSolid(*i)),
TessellatedItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
TessellatedItemRef::TessellatedSurfaceSet(i) => {
out.push(EntityKey::TessellatedSurfaceSet(*i))
}
TessellatedItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_tessellated_structured_item(&self, r: &TessellatedStructuredItemRef) -> u64 {
match r {
TessellatedStructuredItemRef::ComplexTriangulatedFace(i) => {
self.complex_triangulated_face_ids[i.0].expect("dep id assigned")
}
TessellatedStructuredItemRef::TessellatedFace(i) => {
self.tessellated_face_ids[i.0].expect("dep id assigned")
}
TessellatedStructuredItemRef::TessellatedStructuredItem(i) => {
self.tessellated_structured_item_ids[i.0].expect("dep id assigned")
}
TessellatedStructuredItemRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_tessellated_structured_item(
r: &TessellatedStructuredItemRef,
out: &mut Vec<EntityKey>,
) {
match r {
TessellatedStructuredItemRef::ComplexTriangulatedFace(i) => {
out.push(EntityKey::ComplexTriangulatedFace(*i))
}
TessellatedStructuredItemRef::TessellatedFace(i) => {
out.push(EntityKey::TessellatedFace(*i))
}
TessellatedStructuredItemRef::TessellatedStructuredItem(i) => {
out.push(EntityKey::TessellatedStructuredItem(*i))
}
TessellatedStructuredItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_text_or_character(&self, r: &TextOrCharacterRef) -> u64 {
match r {
TextOrCharacterRef::AnnotationText(i) => {
self.annotation_text_ids[i.0].expect("dep id assigned")
}
TextOrCharacterRef::AnnotationTextCharacter(i) => {
self.annotation_text_character_ids[i.0].expect("dep id assigned")
}
TextOrCharacterRef::CompositeText(i) => {
self.composite_text_ids[i.0].expect("dep id assigned")
}
TextOrCharacterRef::DefinedCharacterGlyph(i) => {
self.defined_character_glyph_ids[i.0].expect("dep id assigned")
}
TextOrCharacterRef::TextLiteral(i) => {
self.text_literal_ids[i.0].expect("dep id assigned")
}
TextOrCharacterRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_text_or_character(r: &TextOrCharacterRef, out: &mut Vec<EntityKey>) {
match r {
TextOrCharacterRef::AnnotationText(i) => out.push(EntityKey::AnnotationText(*i)),
TextOrCharacterRef::AnnotationTextCharacter(i) => {
out.push(EntityKey::AnnotationTextCharacter(*i))
}
TextOrCharacterRef::CompositeText(i) => out.push(EntityKey::CompositeText(*i)),
TextOrCharacterRef::DefinedCharacterGlyph(i) => {
out.push(EntityKey::DefinedCharacterGlyph(*i))
}
TextOrCharacterRef::TextLiteral(i) => out.push(EntityKey::TextLiteral(*i)),
TextOrCharacterRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_tolerance_method_definition(&self, r: &ToleranceMethodDefinitionRef) -> u64 {
match r {
ToleranceMethodDefinitionRef::LimitsAndFits(i) => {
self.limits_and_fits_ids[i.0].expect("dep id assigned")
}
ToleranceMethodDefinitionRef::ToleranceValue(i) => {
self.tolerance_value_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_tolerance_method_definition(
r: &ToleranceMethodDefinitionRef,
out: &mut Vec<EntityKey>,
) {
match r {
ToleranceMethodDefinitionRef::LimitsAndFits(i) => {
out.push(EntityKey::LimitsAndFits(*i))
}
ToleranceMethodDefinitionRef::ToleranceValue(i) => {
out.push(EntityKey::ToleranceValue(*i))
}
}
}
fn id_of_ref_tolerance_select(&self, r: &ToleranceSelectRef) -> u64 {
match r {
ToleranceSelectRef::ApproximationToleranceDeviation(i) => {
self.approximation_tolerance_deviation_ids[i.0].expect("dep id assigned")
}
ToleranceSelectRef::ApproximationToleranceParameter(i) => {
self.approximation_tolerance_parameter_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_tolerance_select(r: &ToleranceSelectRef, out: &mut Vec<EntityKey>) {
match r {
ToleranceSelectRef::ApproximationToleranceDeviation(i) => {
out.push(EntityKey::ApproximationToleranceDeviation(*i))
}
ToleranceSelectRef::ApproximationToleranceParameter(i) => {
out.push(EntityKey::ApproximationToleranceParameter(*i))
}
}
}
fn id_of_ref_tolerance_zone_form(&self, r: &ToleranceZoneFormRef) -> u64 {
match r {
ToleranceZoneFormRef::ToleranceZoneForm(i) => {
self.tolerance_zone_form_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_tolerance_zone_form(r: &ToleranceZoneFormRef, out: &mut Vec<EntityKey>) {
match r {
ToleranceZoneFormRef::ToleranceZoneForm(i) => {
out.push(EntityKey::ToleranceZoneForm(*i))
}
}
}
fn id_of_ref_tolerance_zone(&self, r: &ToleranceZoneRef) -> u64 {
match r {
ToleranceZoneRef::ToleranceZone(i) => {
self.tolerance_zone_ids[i.0].expect("dep id assigned")
}
ToleranceZoneRef::ToleranceZoneWithDatum(i) => {
self.tolerance_zone_with_datum_ids[i.0].expect("dep id assigned")
}
ToleranceZoneRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_tolerance_zone(r: &ToleranceZoneRef, out: &mut Vec<EntityKey>) {
match r {
ToleranceZoneRef::ToleranceZone(i) => out.push(EntityKey::ToleranceZone(*i)),
ToleranceZoneRef::ToleranceZoneWithDatum(i) => {
out.push(EntityKey::ToleranceZoneWithDatum(*i))
}
ToleranceZoneRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_tolerance_zone_target(&self, r: &ToleranceZoneTargetRef) -> u64 {
match r {
ToleranceZoneTargetRef::AngularLocation(i) => {
self.angular_location_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::AngularSize(i) => {
self.angular_size_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::AngularityTolerance(i) => {
self.angularity_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::CircularRunoutTolerance(i) => {
self.circular_runout_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::CoaxialityTolerance(i) => {
self.coaxiality_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::ConcentricityTolerance(i) => {
self.concentricity_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::CylindricityTolerance(i) => {
self.cylindricity_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DatumReferenceCompartment(i) => {
self.datum_reference_compartment_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DatumReferenceElement(i) => {
self.datum_reference_element_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DimensionalLocation(i) => {
self.dimensional_location_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DimensionalLocationWithPath(i) => {
self.dimensional_location_with_path_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DimensionalSize(i) => {
self.dimensional_size_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DimensionalSizeWithDatumFeature(i) => {
self.dimensional_size_with_datum_feature_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DimensionalSizeWithPath(i) => {
self.dimensional_size_with_path_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::DirectedDimensionalLocation(i) => {
self.directed_dimensional_location_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::FlatnessTolerance(i) => {
self.flatness_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeneralDatumReference(i) => {
self.general_datum_reference_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricTolerance(i) => {
self.geometric_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricToleranceWithDatumReference(i) => {
self.geometric_tolerance_with_datum_reference_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricToleranceWithDefinedAreaUnit(i) => {
self.geometric_tolerance_with_defined_area_unit_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricToleranceWithDefinedUnit(i) => {
self.geometric_tolerance_with_defined_unit_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricToleranceWithMaximumTolerance(i) => {
self.geometric_tolerance_with_maximum_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::GeometricToleranceWithModifiers(i) => {
self.geometric_tolerance_with_modifiers_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::LineProfileTolerance(i) => {
self.line_profile_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::ModifiedGeometricTolerance(i) => {
self.modified_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::ParallelismTolerance(i) => {
self.parallelism_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::PerpendicularityTolerance(i) => {
self.perpendicularity_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::PositionTolerance(i) => {
self.position_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::RoundnessTolerance(i) => {
self.roundness_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::StraightnessTolerance(i) => {
self.straightness_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::SurfaceProfileTolerance(i) => {
self.surface_profile_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::SymmetryTolerance(i) => {
self.symmetry_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::TotalRunoutTolerance(i) => {
self.total_runout_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::UnequallyDisposedGeometricTolerance(i) => {
self.unequally_disposed_geometric_tolerance_ids[i.0].expect("dep id assigned")
}
ToleranceZoneTargetRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_tolerance_zone_target(r: &ToleranceZoneTargetRef, out: &mut Vec<EntityKey>) {
match r {
ToleranceZoneTargetRef::AngularLocation(i) => out.push(EntityKey::AngularLocation(*i)),
ToleranceZoneTargetRef::AngularSize(i) => out.push(EntityKey::AngularSize(*i)),
ToleranceZoneTargetRef::AngularityTolerance(i) => {
out.push(EntityKey::AngularityTolerance(*i))
}
ToleranceZoneTargetRef::CircularRunoutTolerance(i) => {
out.push(EntityKey::CircularRunoutTolerance(*i))
}
ToleranceZoneTargetRef::CoaxialityTolerance(i) => {
out.push(EntityKey::CoaxialityTolerance(*i))
}
ToleranceZoneTargetRef::ConcentricityTolerance(i) => {
out.push(EntityKey::ConcentricityTolerance(*i))
}
ToleranceZoneTargetRef::CylindricityTolerance(i) => {
out.push(EntityKey::CylindricityTolerance(*i))
}
ToleranceZoneTargetRef::DatumReferenceCompartment(i) => {
out.push(EntityKey::DatumReferenceCompartment(*i))
}
ToleranceZoneTargetRef::DatumReferenceElement(i) => {
out.push(EntityKey::DatumReferenceElement(*i))
}
ToleranceZoneTargetRef::DimensionalLocation(i) => {
out.push(EntityKey::DimensionalLocation(*i))
}
ToleranceZoneTargetRef::DimensionalLocationWithPath(i) => {
out.push(EntityKey::DimensionalLocationWithPath(*i))
}
ToleranceZoneTargetRef::DimensionalSize(i) => out.push(EntityKey::DimensionalSize(*i)),
ToleranceZoneTargetRef::DimensionalSizeWithDatumFeature(i) => {
out.push(EntityKey::DimensionalSizeWithDatumFeature(*i))
}
ToleranceZoneTargetRef::DimensionalSizeWithPath(i) => {
out.push(EntityKey::DimensionalSizeWithPath(*i))
}
ToleranceZoneTargetRef::DirectedDimensionalLocation(i) => {
out.push(EntityKey::DirectedDimensionalLocation(*i))
}
ToleranceZoneTargetRef::FlatnessTolerance(i) => {
out.push(EntityKey::FlatnessTolerance(*i))
}
ToleranceZoneTargetRef::GeneralDatumReference(i) => {
out.push(EntityKey::GeneralDatumReference(*i))
}
ToleranceZoneTargetRef::GeometricTolerance(i) => {
out.push(EntityKey::GeometricTolerance(*i))
}
ToleranceZoneTargetRef::GeometricToleranceWithDatumReference(i) => {
out.push(EntityKey::GeometricToleranceWithDatumReference(*i))
}
ToleranceZoneTargetRef::GeometricToleranceWithDefinedAreaUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(*i))
}
ToleranceZoneTargetRef::GeometricToleranceWithDefinedUnit(i) => {
out.push(EntityKey::GeometricToleranceWithDefinedUnit(*i))
}
ToleranceZoneTargetRef::GeometricToleranceWithMaximumTolerance(i) => {
out.push(EntityKey::GeometricToleranceWithMaximumTolerance(*i))
}
ToleranceZoneTargetRef::GeometricToleranceWithModifiers(i) => {
out.push(EntityKey::GeometricToleranceWithModifiers(*i))
}
ToleranceZoneTargetRef::LineProfileTolerance(i) => {
out.push(EntityKey::LineProfileTolerance(*i))
}
ToleranceZoneTargetRef::ModifiedGeometricTolerance(i) => {
out.push(EntityKey::ModifiedGeometricTolerance(*i))
}
ToleranceZoneTargetRef::ParallelismTolerance(i) => {
out.push(EntityKey::ParallelismTolerance(*i))
}
ToleranceZoneTargetRef::PerpendicularityTolerance(i) => {
out.push(EntityKey::PerpendicularityTolerance(*i))
}
ToleranceZoneTargetRef::PositionTolerance(i) => {
out.push(EntityKey::PositionTolerance(*i))
}
ToleranceZoneTargetRef::RoundnessTolerance(i) => {
out.push(EntityKey::RoundnessTolerance(*i))
}
ToleranceZoneTargetRef::StraightnessTolerance(i) => {
out.push(EntityKey::StraightnessTolerance(*i))
}
ToleranceZoneTargetRef::SurfaceProfileTolerance(i) => {
out.push(EntityKey::SurfaceProfileTolerance(*i))
}
ToleranceZoneTargetRef::SymmetryTolerance(i) => {
out.push(EntityKey::SymmetryTolerance(*i))
}
ToleranceZoneTargetRef::TotalRunoutTolerance(i) => {
out.push(EntityKey::TotalRunoutTolerance(*i))
}
ToleranceZoneTargetRef::UnequallyDisposedGeometricTolerance(i) => {
out.push(EntityKey::UnequallyDisposedGeometricTolerance(*i))
}
ToleranceZoneTargetRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_transformation(&self, r: &TransformationRef) -> u64 {
match r {
TransformationRef::FunctionallyDefinedTransformation(i) => {
self.functionally_defined_transformation_ids[i.0].expect("dep id assigned")
}
TransformationRef::ItemDefinedTransformation(i) => {
self.item_defined_transformation_ids[i.0].expect("dep id assigned")
}
TransformationRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
TransformationRef::ListItemDefinedTransformation(_) => {
panic!("aggregate via single id_of")
}
TransformationRef::SetItemDefinedTransformation(_) => {
panic!("aggregate via single id_of")
}
}
}
fn deps_ref_transformation(r: &TransformationRef, out: &mut Vec<EntityKey>) {
match r {
TransformationRef::FunctionallyDefinedTransformation(i) => {
out.push(EntityKey::FunctionallyDefinedTransformation(*i))
}
TransformationRef::ItemDefinedTransformation(i) => {
out.push(EntityKey::ItemDefinedTransformation(*i))
}
TransformationRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
TransformationRef::ListItemDefinedTransformation(vs) => {
for e in vs {
Self::deps_ref_item_defined_transformation(e, out);
}
}
TransformationRef::SetItemDefinedTransformation(vs) => {
for e in vs {
Self::deps_ref_item_defined_transformation(e, out);
}
}
}
}
fn id_of_ref_trimming_select(&self, r: &TrimmingSelectRef) -> u64 {
match r {
TrimmingSelectRef::ApllPoint(i) => self.apll_point_ids[i.0].expect("dep id assigned"),
TrimmingSelectRef::ApllPointWithSurface(i) => {
self.apll_point_with_surface_ids[i.0].expect("dep id assigned")
}
TrimmingSelectRef::CartesianPoint(i) => {
self.cartesian_point_ids[i.0].expect("dep id assigned")
}
TrimmingSelectRef::ParameterValue(_) => panic!("scalar via single id_of"),
}
}
fn deps_ref_trimming_select(r: &TrimmingSelectRef, out: &mut Vec<EntityKey>) {
match r {
TrimmingSelectRef::ApllPoint(i) => out.push(EntityKey::ApllPoint(*i)),
TrimmingSelectRef::ApllPointWithSurface(i) => {
out.push(EntityKey::ApllPointWithSurface(*i))
}
TrimmingSelectRef::CartesianPoint(i) => out.push(EntityKey::CartesianPoint(*i)),
TrimmingSelectRef::ParameterValue(_) => {}
}
}
fn id_of_ref_two_direction_repeat_factor(&self, r: &TwoDirectionRepeatFactorRef) -> u64 {
match r {
TwoDirectionRepeatFactorRef::TwoDirectionRepeatFactor(i) => {
self.two_direction_repeat_factor_ids[i.0].expect("dep id assigned")
}
TwoDirectionRepeatFactorRef::Complex(i) => {
self.complex_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_two_direction_repeat_factor(
r: &TwoDirectionRepeatFactorRef,
out: &mut Vec<EntityKey>,
) {
match r {
TwoDirectionRepeatFactorRef::TwoDirectionRepeatFactor(i) => {
out.push(EntityKey::TwoDirectionRepeatFactor(*i))
}
TwoDirectionRepeatFactorRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_uncertainty_measure_with_unit(&self, r: &UncertaintyMeasureWithUnitRef) -> u64 {
match r {
UncertaintyMeasureWithUnitRef::UncertaintyMeasureWithUnit(i) => {
self.uncertainty_measure_with_unit_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_uncertainty_measure_with_unit(
r: &UncertaintyMeasureWithUnitRef,
out: &mut Vec<EntityKey>,
) {
match r {
UncertaintyMeasureWithUnitRef::UncertaintyMeasureWithUnit(i) => {
out.push(EntityKey::UncertaintyMeasureWithUnit(*i))
}
}
}
fn id_of_ref_unit(&self, r: &UnitRef) -> u64 {
match r {
UnitRef::AreaUnit(i) => self.area_unit_ids[i.0].expect("dep id assigned"),
UnitRef::ContextDependentUnit(i) => {
self.context_dependent_unit_ids[i.0].expect("dep id assigned")
}
UnitRef::ConversionBasedUnit(i) => {
self.conversion_based_unit_ids[i.0].expect("dep id assigned")
}
UnitRef::DerivedUnit(i) => self.derived_unit_ids[i.0].expect("dep id assigned"),
UnitRef::LengthUnit(i) => self.length_unit_ids[i.0].expect("dep id assigned"),
UnitRef::MassUnit(i) => self.mass_unit_ids[i.0].expect("dep id assigned"),
UnitRef::NamedUnit(i) => self.named_unit_ids[i.0].expect("dep id assigned"),
UnitRef::PlaneAngleUnit(i) => self.plane_angle_unit_ids[i.0].expect("dep id assigned"),
UnitRef::RatioUnit(i) => self.ratio_unit_ids[i.0].expect("dep id assigned"),
UnitRef::SiUnit(i) => self.si_unit_ids[i.0].expect("dep id assigned"),
UnitRef::SolidAngleUnit(i) => self.solid_angle_unit_ids[i.0].expect("dep id assigned"),
UnitRef::TimeUnit(i) => self.time_unit_ids[i.0].expect("dep id assigned"),
UnitRef::VolumeUnit(i) => self.volume_unit_ids[i.0].expect("dep id assigned"),
UnitRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_unit(r: &UnitRef, out: &mut Vec<EntityKey>) {
match r {
UnitRef::AreaUnit(i) => out.push(EntityKey::AreaUnit(*i)),
UnitRef::ContextDependentUnit(i) => out.push(EntityKey::ContextDependentUnit(*i)),
UnitRef::ConversionBasedUnit(i) => out.push(EntityKey::ConversionBasedUnit(*i)),
UnitRef::DerivedUnit(i) => out.push(EntityKey::DerivedUnit(*i)),
UnitRef::LengthUnit(i) => out.push(EntityKey::LengthUnit(*i)),
UnitRef::MassUnit(i) => out.push(EntityKey::MassUnit(*i)),
UnitRef::NamedUnit(i) => out.push(EntityKey::NamedUnit(*i)),
UnitRef::PlaneAngleUnit(i) => out.push(EntityKey::PlaneAngleUnit(*i)),
UnitRef::RatioUnit(i) => out.push(EntityKey::RatioUnit(*i)),
UnitRef::SiUnit(i) => out.push(EntityKey::SiUnit(*i)),
UnitRef::SolidAngleUnit(i) => out.push(EntityKey::SolidAngleUnit(*i)),
UnitRef::TimeUnit(i) => out.push(EntityKey::TimeUnit(*i)),
UnitRef::VolumeUnit(i) => out.push(EntityKey::VolumeUnit(*i)),
UnitRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_value_qualifier(&self, r: &ValueQualifierRef) -> u64 {
match r {
ValueQualifierRef::PrecisionQualifier(i) => {
self.precision_qualifier_ids[i.0].expect("dep id assigned")
}
ValueQualifierRef::TypeQualifier(i) => {
self.type_qualifier_ids[i.0].expect("dep id assigned")
}
ValueQualifierRef::UncertaintyQualifier(i) => {
self.uncertainty_qualifier_ids[i.0].expect("dep id assigned")
}
ValueQualifierRef::ValueFormatTypeQualifier(i) => {
self.value_format_type_qualifier_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_value_qualifier(r: &ValueQualifierRef, out: &mut Vec<EntityKey>) {
match r {
ValueQualifierRef::PrecisionQualifier(i) => out.push(EntityKey::PrecisionQualifier(*i)),
ValueQualifierRef::TypeQualifier(i) => out.push(EntityKey::TypeQualifier(*i)),
ValueQualifierRef::UncertaintyQualifier(i) => {
out.push(EntityKey::UncertaintyQualifier(*i))
}
ValueQualifierRef::ValueFormatTypeQualifier(i) => {
out.push(EntityKey::ValueFormatTypeQualifier(*i))
}
}
}
fn id_of_ref_vector(&self, r: &VectorRef) -> u64 {
match r {
VectorRef::Vector(i) => self.vector_ids[i.0].expect("dep id assigned"),
VectorRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_vector(r: &VectorRef, out: &mut Vec<EntityKey>) {
match r {
VectorRef::Vector(i) => out.push(EntityKey::Vector(*i)),
VectorRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_versioned_action_request(&self, r: &VersionedActionRequestRef) -> u64 {
match r {
VersionedActionRequestRef::VersionedActionRequest(i) => {
self.versioned_action_request_ids[i.0].expect("dep id assigned")
}
}
}
fn deps_ref_versioned_action_request(r: &VersionedActionRequestRef, out: &mut Vec<EntityKey>) {
match r {
VersionedActionRequestRef::VersionedActionRequest(i) => {
out.push(EntityKey::VersionedActionRequest(*i))
}
}
}
fn id_of_ref_vertex_loop(&self, r: &VertexLoopRef) -> u64 {
match r {
VertexLoopRef::VertexLoop(i) => self.vertex_loop_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_vertex_loop(r: &VertexLoopRef, out: &mut Vec<EntityKey>) {
match r {
VertexLoopRef::VertexLoop(i) => out.push(EntityKey::VertexLoop(*i)),
}
}
fn id_of_ref_vertex(&self, r: &VertexRef) -> u64 {
match r {
VertexRef::Vertex(i) => self.vertex_ids[i.0].expect("dep id assigned"),
VertexRef::VertexPoint(i) => self.vertex_point_ids[i.0].expect("dep id assigned"),
VertexRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_vertex(r: &VertexRef, out: &mut Vec<EntityKey>) {
match r {
VertexRef::Vertex(i) => out.push(EntityKey::Vertex(*i)),
VertexRef::VertexPoint(i) => out.push(EntityKey::VertexPoint(*i)),
VertexRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_view_volume(&self, r: &ViewVolumeRef) -> u64 {
match r {
ViewVolumeRef::ViewVolume(i) => self.view_volume_ids[i.0].expect("dep id assigned"),
ViewVolumeRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_view_volume(r: &ViewVolumeRef, out: &mut Vec<EntityKey>) {
match r {
ViewVolumeRef::ViewVolume(i) => out.push(EntityKey::ViewVolume(*i)),
ViewVolumeRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
fn id_of_ref_work_item(&self, r: &WorkItemRef) -> u64 {
match r {
WorkItemRef::ProductDefinitionFormation(i) => {
self.product_definition_formation_ids[i.0].expect("dep id assigned")
}
WorkItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => self
.product_definition_formation_with_specified_source_ids[i.0]
.expect("dep id assigned"),
WorkItemRef::Complex(i) => self.complex_ids[i.0].expect("dep id assigned"),
}
}
fn deps_ref_work_item(r: &WorkItemRef, out: &mut Vec<EntityKey>) {
match r {
WorkItemRef::ProductDefinitionFormation(i) => {
out.push(EntityKey::ProductDefinitionFormation(*i))
}
WorkItemRef::ProductDefinitionFormationWithSpecifiedSource(i) => {
out.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(*i))
}
WorkItemRef::Complex(i) => out.push(EntityKey::ComplexUnit(*i)),
}
}
pub(crate) fn deps_of(&self, any: EntityKey, out: &mut Vec<EntityKey>) {
match any {
EntityKey::Action(id) => {
let it = self.model.action_arena.get(id.0);
Self::deps_ref_action_method(&it.chosen_method, out);
}
EntityKey::ActionAssignment(id) => {
let it = self.model.action_assignment_arena.get(id.0);
Self::deps_ref_action(&it.assigned_action, out);
}
EntityKey::ActionDirective(id) => {
let it = self.model.action_directive_arena.get(id.0);
for e in &it.requests {
Self::deps_ref_versioned_action_request(e, out);
}
}
EntityKey::ActionMethod(_) => {}
EntityKey::ActionMethodRelationship(id) => {
let it = self.model.action_method_relationship_arena.get(id.0);
Self::deps_ref_action_method(&it.relating_method, out);
Self::deps_ref_action_method(&it.related_method, out);
}
EntityKey::ActionProperty(id) => {
let it = self.model.action_property_arena.get(id.0);
Self::deps_ref_characterized_action_definition(&it.definition, out);
}
EntityKey::ActionRelationship(id) => {
let it = self.model.action_relationship_arena.get(id.0);
Self::deps_ref_action(&it.relating_action, out);
Self::deps_ref_action(&it.related_action, out);
}
EntityKey::ActionRequestAssignment(id) => {
let it = self.model.action_request_assignment_arena.get(id.0);
Self::deps_ref_versioned_action_request(&it.assigned_action_request, out);
}
EntityKey::ActionRequestSolution(id) => {
let it = self.model.action_request_solution_arena.get(id.0);
Self::deps_ref_action_method(&it.method, out);
Self::deps_ref_versioned_action_request(&it.request, out);
}
EntityKey::ActionResource(id) => {
let it = self.model.action_resource_arena.get(id.0);
for e in &it.usage {
Self::deps_ref_supported_item(e, out);
}
Self::deps_ref_action_resource_type(&it.kind, out);
}
EntityKey::ActionResourceRelationship(id) => {
let it = self.model.action_resource_relationship_arena.get(id.0);
Self::deps_ref_action_resource(&it.relating_resource, out);
Self::deps_ref_action_resource(&it.related_resource, out);
}
EntityKey::ActionResourceRequirement(id) => {
let it = self.model.action_resource_requirement_arena.get(id.0);
Self::deps_ref_resource_requirement_type(&it.kind, out);
for e in &it.operations {
Self::deps_ref_characterized_action_definition(e, out);
}
}
EntityKey::ActionResourceType(_) => {}
EntityKey::Address(_) => {}
EntityKey::AdvancedBrepShapeRepresentation(id) => {
let it = self
.model
.advanced_brep_shape_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::AdvancedFace(id) => {
let it = self.model.advanced_face_arena.get(id.0);
for e in &it.bounds {
Self::deps_ref_face_bound(e, out);
}
Self::deps_ref_surface(&it.face_geometry, out);
}
EntityKey::AllAroundShapeAspect(id) => {
let it = self.model.all_around_shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::AngularLocation(id) => {
let it = self.model.angular_location_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::AngularSize(id) => {
let it = self.model.angular_size_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.applies_to, out);
}
EntityKey::AngularityTolerance(id) => {
let it = self.model.angularity_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::AnnotationCurveOccurrence(id) => {
let it = self.model.annotation_curve_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_curve_or_curve_set(&it.item, out);
}
EntityKey::AnnotationFillAreaOccurrence(id) => {
let it = self.model.annotation_fill_area_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
Self::deps_ref_point(&it.fill_style_target, out);
}
EntityKey::AnnotationOccurrence(id) => {
let it = self.model.annotation_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
}
EntityKey::AnnotationOccurrenceAssociativity(id) => {
let it = self
.model
.annotation_occurrence_associativity_arena
.get(id.0);
Self::deps_ref_annotation_occurrence(&it.relating_annotation_occurrence, out);
Self::deps_ref_annotation_occurrence(&it.related_annotation_occurrence, out);
}
EntityKey::AnnotationOccurrenceRelationship(id) => {
let it = self
.model
.annotation_occurrence_relationship_arena
.get(id.0);
Self::deps_ref_annotation_occurrence(&it.relating_annotation_occurrence, out);
Self::deps_ref_annotation_occurrence(&it.related_annotation_occurrence, out);
}
EntityKey::AnnotationPlaceholderLeaderLine(id) => {
let it = self
.model
.annotation_placeholder_leader_line_arena
.get(id.0);
for e in &it.geometric_elements {
Self::deps_ref_des_apll_point_select(e, out);
}
}
EntityKey::AnnotationPlaceholderOccurrence(id) => {
let it = self.model.annotation_placeholder_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
}
EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(id) => {
let it = self
.model
.annotation_placeholder_occurrence_with_leader_line_arena
.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
for e in &it.leader_line {
Self::deps_ref_annotation_placeholder_leader_line(e, out);
}
}
EntityKey::AnnotationPlane(id) => {
let it = self.model.annotation_plane_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_plane_or_planar_box(&it.item, out);
if let Some(v) = &it.elements {
for e in v {
Self::deps_ref_annotation_plane_element(e, out);
}
}
}
EntityKey::AnnotationSymbol(id) => {
let it = self.model.annotation_symbol_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_representation_item(&it.mapping_target, out);
}
EntityKey::AnnotationSymbolOccurrence(id) => {
let it = self.model.annotation_symbol_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_annotation_symbol_occurrence_item(&it.item, out);
}
EntityKey::AnnotationText(id) => {
let it = self.model.annotation_text_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_axis2_placement(&it.mapping_target, out);
}
EntityKey::AnnotationTextCharacter(id) => {
let it = self.model.annotation_text_character_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_axis2_placement(&it.mapping_target, out);
}
EntityKey::AnnotationTextOccurrence(id) => {
let it = self.model.annotation_text_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_annotation_text_occurrence_item(&it.item, out);
}
EntityKey::AnnotationToAnnotationLeaderLine(id) => {
let it = self
.model
.annotation_to_annotation_leader_line_arena
.get(id.0);
for e in &it.geometric_elements {
Self::deps_ref_des_apll_point_select(e, out);
}
}
EntityKey::AnnotationToModelLeaderLine(id) => {
let it = self.model.annotation_to_model_leader_line_arena.get(id.0);
for e in &it.geometric_elements {
Self::deps_ref_des_apll_point_select(e, out);
}
}
EntityKey::ApllPoint(_) => {}
EntityKey::ApllPointWithSurface(id) => {
let it = self.model.apll_point_with_surface_arena.get(id.0);
Self::deps_ref_face_surface(&it.associated_surface, out);
}
EntityKey::ApplicationContext(_) => {}
EntityKey::ApplicationContextElement(id) => {
let it = self.model.application_context_element_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::ApplicationProtocolDefinition(id) => {
let it = self.model.application_protocol_definition_arena.get(id.0);
Self::deps_ref_application_context(&it.application, out);
}
EntityKey::AppliedApprovalAssignment(id) => {
let it = self.model.applied_approval_assignment_arena.get(id.0);
Self::deps_ref_approval(&it.assigned_approval, out);
for e in &it.items {
Self::deps_ref_approval_item(e, out);
}
}
EntityKey::AppliedDateAndTimeAssignment(id) => {
let it = self.model.applied_date_and_time_assignment_arena.get(id.0);
Self::deps_ref_date_and_time(&it.assigned_date_and_time, out);
Self::deps_ref_date_time_role(&it.role, out);
for e in &it.items {
Self::deps_ref_date_and_time_item(e, out);
}
}
EntityKey::AppliedDocumentReference(id) => {
let it = self.model.applied_document_reference_arena.get(id.0);
Self::deps_ref_document(&it.assigned_document, out);
for e in &it.items {
Self::deps_ref_document_reference_item(e, out);
}
}
EntityKey::AppliedExternalIdentificationAssignment(id) => {
let it = self
.model
.applied_external_identification_assignment_arena
.get(id.0);
Self::deps_ref_identification_role(&it.role, out);
Self::deps_ref_external_source(&it.source, out);
for e in &it.items {
Self::deps_ref_external_identification_item(e, out);
}
}
EntityKey::AppliedGroupAssignment(id) => {
let it = self.model.applied_group_assignment_arena.get(id.0);
Self::deps_ref_group(&it.assigned_group, out);
for e in &it.items {
Self::deps_ref_groupable_item(e, out);
}
}
EntityKey::AppliedPersonAndOrganizationAssignment(id) => {
let it = self
.model
.applied_person_and_organization_assignment_arena
.get(id.0);
Self::deps_ref_person_and_organization(&it.assigned_person_and_organization, out);
Self::deps_ref_person_and_organization_role(&it.role, out);
for e in &it.items {
Self::deps_ref_person_and_organization_item(e, out);
}
}
EntityKey::AppliedPresentedItem(id) => {
let it = self.model.applied_presented_item_arena.get(id.0);
for e in &it.items {
Self::deps_ref_presented_item_select(e, out);
}
}
EntityKey::AppliedSecurityClassificationAssignment(id) => {
let it = self
.model
.applied_security_classification_assignment_arena
.get(id.0);
Self::deps_ref_security_classification(&it.assigned_security_classification, out);
for e in &it.items {
Self::deps_ref_security_classification_item(e, out);
}
}
EntityKey::Approval(id) => {
let it = self.model.approval_arena.get(id.0);
Self::deps_ref_approval_status(&it.status, out);
}
EntityKey::ApprovalAssignment(id) => {
let it = self.model.approval_assignment_arena.get(id.0);
Self::deps_ref_approval(&it.assigned_approval, out);
}
EntityKey::ApprovalDateTime(id) => {
let it = self.model.approval_date_time_arena.get(id.0);
Self::deps_ref_date_time_select(&it.date_time, out);
Self::deps_ref_approval(&it.dated_approval, out);
}
EntityKey::ApprovalPersonOrganization(id) => {
let it = self.model.approval_person_organization_arena.get(id.0);
Self::deps_ref_person_organization_select(&it.person_organization, out);
Self::deps_ref_approval(&it.authorized_approval, out);
Self::deps_ref_approval_role(&it.role, out);
}
EntityKey::ApprovalRole(_) => {}
EntityKey::ApprovalStatus(_) => {}
EntityKey::ApproximationTolerance(id) => {
let it = self.model.approximation_tolerance_arena.get(id.0);
Self::deps_ref_tolerance_select(&it.tolerance, out);
}
EntityKey::ApproximationToleranceDeviation(_) => {}
EntityKey::ApproximationToleranceParameter(_) => {}
EntityKey::AreaInSet(id) => {
let it = self.model.area_in_set_arena.get(id.0);
Self::deps_ref_presentation_area(&it.area, out);
Self::deps_ref_presentation_set(&it.in_set, out);
}
EntityKey::AreaUnit(id) => {
let it = self.model.area_unit_arena.get(id.0);
for e in &it.elements {
Self::deps_ref_derived_unit_element(e, out);
}
}
EntityKey::AscribableState(id) => {
let it = self.model.ascribable_state_arena.get(id.0);
Self::deps_ref_state_type(&it.pertaining_state_type, out);
Self::deps_ref_state_observed(&it.ascribed_state_observed, out);
}
EntityKey::AscribableStateRelationship(id) => {
let it = self.model.ascribable_state_relationship_arena.get(id.0);
Self::deps_ref_ascribable_state(&it.relating_ascribable_state, out);
Self::deps_ref_ascribable_state(&it.related_ascribable_state, out);
}
EntityKey::AssemblyComponentUsage(id) => {
let it = self.model.assembly_component_usage_arena.get(id.0);
Self::deps_ref_product_definition_or_reference(
&it.relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(&it.related_product_definition, out);
}
EntityKey::AuxiliaryLeaderLine(id) => {
let it = self.model.auxiliary_leader_line_arena.get(id.0);
for e in &it.geometric_elements {
Self::deps_ref_des_apll_point_select(e, out);
}
Self::deps_ref_annotation_to_model_leader_line(&it.controlling_leader_line, out);
}
EntityKey::Axis1Placement(id) => {
let it = self.model.axis1_placement_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.location, out);
if let Some(r) = &it.axis {
Self::deps_ref_direction(r, out);
}
}
EntityKey::Axis2Placement2d(id) => {
let it = self.model.axis2_placement2d_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.location, out);
if let Some(r) = &it.ref_direction {
Self::deps_ref_direction(r, out);
}
}
EntityKey::Axis2Placement3d(id) => {
let it = self.model.axis2_placement3d_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.location, out);
if let Some(r) = &it.axis {
Self::deps_ref_direction(r, out);
}
if let Some(r) = &it.ref_direction {
Self::deps_ref_direction(r, out);
}
}
EntityKey::BSplineCurve(id) => {
let it = self.model.b_spline_curve_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::BSplineCurveWithKnots(id) => {
let it = self.model.b_spline_curve_with_knots_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::BSplineSurface(id) => {
let it = self.model.b_spline_surface_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::BSplineSurfaceWithKnots(id) => {
let it = self.model.b_spline_surface_with_knots_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::BezierCurve(id) => {
let it = self.model.bezier_curve_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::BezierSurface(id) => {
let it = self.model.bezier_surface_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::BoundedCurve(_) => {}
EntityKey::BoundedPcurve(id) => {
let it = self.model.bounded_pcurve_arena.get(id.0);
Self::deps_ref_surface(&it.basis_surface, out);
Self::deps_ref_definitional_representation(&it.reference_to_curve, out);
}
EntityKey::BoundedSurface(_) => {}
EntityKey::BoundedSurfaceCurve(id) => {
let it = self.model.bounded_surface_curve_arena.get(id.0);
Self::deps_ref_curve(&it.curve_3d, out);
for e in &it.associated_geometry {
Self::deps_ref_pcurve_or_surface(e, out);
}
}
EntityKey::BrepWithVoids(id) => {
let it = self.model.brep_with_voids_arena.get(id.0);
Self::deps_ref_closed_shell(&it.outer, out);
for e in &it.voids {
Self::deps_ref_oriented_closed_shell(e, out);
}
}
EntityKey::CalendarDate(_) => {}
EntityKey::CameraImage(id) => {
let it = self.model.camera_image_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_representation_item(&it.mapping_target, out);
}
EntityKey::CameraImage3dWithScale(id) => {
let it = self.model.camera_image3d_with_scale_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_representation_item(&it.mapping_target, out);
}
EntityKey::CameraModel(_) => {}
EntityKey::CameraModelD3(id) => {
let it = self.model.camera_model_d3_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.view_reference_system, out);
Self::deps_ref_view_volume(&it.perspective_of_volume, out);
}
EntityKey::CameraModelD3MultiClipping(id) => {
let it = self.model.camera_model_d3_multi_clipping_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.view_reference_system, out);
Self::deps_ref_view_volume(&it.perspective_of_volume, out);
for e in &it.shape_clipping {
Self::deps_ref_camera_model_d3_multi_clipping_intersection_select(e, out);
}
}
EntityKey::CameraModelD3WithHlhsr(id) => {
let it = self.model.camera_model_d3_with_hlhsr_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.view_reference_system, out);
Self::deps_ref_view_volume(&it.perspective_of_volume, out);
}
EntityKey::CameraUsage(id) => {
let it = self.model.camera_usage_arena.get(id.0);
Self::deps_ref_representation_item(&it.mapping_origin, out);
Self::deps_ref_representation(&it.mapped_representation, out);
}
EntityKey::CartesianPoint(_) => {}
EntityKey::CcDesignApproval(id) => {
let it = self.model.cc_design_approval_arena.get(id.0);
Self::deps_ref_approval(&it.assigned_approval, out);
for e in &it.items {
Self::deps_ref_approved_item(e, out);
}
}
EntityKey::CcDesignDateAndTimeAssignment(id) => {
let it = self
.model
.cc_design_date_and_time_assignment_arena
.get(id.0);
Self::deps_ref_date_and_time(&it.assigned_date_and_time, out);
Self::deps_ref_date_time_role(&it.role, out);
for e in &it.items {
Self::deps_ref_date_time_item(e, out);
}
}
EntityKey::CcDesignPersonAndOrganizationAssignment(id) => {
let it = self
.model
.cc_design_person_and_organization_assignment_arena
.get(id.0);
Self::deps_ref_person_and_organization(&it.assigned_person_and_organization, out);
Self::deps_ref_person_and_organization_role(&it.role, out);
for e in &it.items {
Self::deps_ref_cc_person_organization_item(e, out);
}
}
EntityKey::CcDesignSecurityClassification(id) => {
let it = self.model.cc_design_security_classification_arena.get(id.0);
Self::deps_ref_security_classification(&it.assigned_security_classification, out);
for e in &it.items {
Self::deps_ref_cc_classified_item(e, out);
}
}
EntityKey::CentreOfSymmetry(id) => {
let it = self.model.centre_of_symmetry_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::Certification(id) => {
let it = self.model.certification_arena.get(id.0);
Self::deps_ref_certification_type(&it.kind, out);
}
EntityKey::CertificationType(_) => {}
EntityKey::Change(id) => {
let it = self.model.change_arena.get(id.0);
Self::deps_ref_action(&it.assigned_action, out);
for e in &it.items {
Self::deps_ref_work_item(e, out);
}
}
EntityKey::ChangeRequest(id) => {
let it = self.model.change_request_arena.get(id.0);
Self::deps_ref_versioned_action_request(&it.assigned_action_request, out);
for e in &it.items {
Self::deps_ref_change_request_item(e, out);
}
}
EntityKey::CharacterGlyphStyleOutline(id) => {
let it = self.model.character_glyph_style_outline_arena.get(id.0);
Self::deps_ref_curve_style(&it.outline_style, out);
}
EntityKey::CharacterGlyphStyleStroke(id) => {
let it = self.model.character_glyph_style_stroke_arena.get(id.0);
Self::deps_ref_curve_style(&it.stroke_style, out);
}
EntityKey::CharacterizedItemWithinRepresentation(id) => {
let it = self
.model
.characterized_item_within_representation_arena
.get(id.0);
Self::deps_ref_representation_item(&it.item, out);
Self::deps_ref_representation(&it.rep, out);
}
EntityKey::CharacterizedObject(_) => {}
EntityKey::CharacterizedRepresentation(id) => {
let it = self.model.characterized_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::Circle(id) => {
let it = self.model.circle_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.position, out);
}
EntityKey::CircularRunoutTolerance(id) => {
let it = self.model.circular_runout_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::ClosedShell(id) => {
let it = self.model.closed_shell_arena.get(id.0);
for e in &it.cfs_faces {
Self::deps_ref_face(e, out);
}
}
EntityKey::CoaxialityTolerance(id) => {
let it = self.model.coaxiality_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::Colour(_) => {}
EntityKey::ColourRgb(_) => {}
EntityKey::ColourSpecification(_) => {}
EntityKey::CommonDatum(id) => {
let it = self.model.common_datum_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::ComplexTriangulatedFace(id) => {
let it = self.model.complex_triangulated_face_arena.get(id.0);
Self::deps_ref_coordinates_list(&it.coordinates, out);
if let Some(r) = &it.geometric_link {
Self::deps_ref_face_or_surface(r, out);
}
}
EntityKey::ComplexTriangulatedSurfaceSet(id) => {
let it = self.model.complex_triangulated_surface_set_arena.get(id.0);
Self::deps_ref_coordinates_list(&it.coordinates, out);
}
EntityKey::CompositeCurve(id) => {
let it = self.model.composite_curve_arena.get(id.0);
for e in &it.segments {
Self::deps_ref_composite_curve_segment(e, out);
}
}
EntityKey::CompositeCurveSegment(id) => {
let it = self.model.composite_curve_segment_arena.get(id.0);
Self::deps_ref_curve(&it.parent_curve, out);
}
EntityKey::CompositeGroupShapeAspect(id) => {
let it = self.model.composite_group_shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::CompositeShapeAspect(id) => {
let it = self.model.composite_shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::CompositeText(id) => {
let it = self.model.composite_text_arena.get(id.0);
for e in &it.collected_text {
Self::deps_ref_text_or_character(e, out);
}
}
EntityKey::CompoundRepresentationItem(id) => {
let it = self.model.compound_representation_item_arena.get(id.0);
Self::deps_ref_compound_item_definition(&it.item_element, out);
}
EntityKey::ConcentricityTolerance(id) => {
let it = self.model.concentricity_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::ConfigurationDesign(id) => {
let it = self.model.configuration_design_arena.get(id.0);
Self::deps_ref_configuration_item(&it.configuration, out);
Self::deps_ref_configuration_design_item(&it.design, out);
}
EntityKey::ConfigurationEffectivity(id) => {
let it = self.model.configuration_effectivity_arena.get(id.0);
Self::deps_ref_product_definition_relationship(&it.usage, out);
Self::deps_ref_configuration_design(&it.configuration, out);
}
EntityKey::ConfigurationItem(id) => {
let it = self.model.configuration_item_arena.get(id.0);
Self::deps_ref_product_concept(&it.item_concept, out);
}
EntityKey::Conic(id) => {
let it = self.model.conic_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.position, out);
}
EntityKey::ConicalSurface(id) => {
let it = self.model.conical_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::ConnectedFaceSet(id) => {
let it = self.model.connected_face_set_arena.get(id.0);
if let Some(v) = &it.cfs_faces {
for e in v {
Self::deps_ref_face(e, out);
}
}
}
EntityKey::ConstructiveGeometryRepresentation(id) => {
let it = self
.model
.constructive_geometry_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::ConstructiveGeometryRepresentationRelationship(id) => {
let it = self
.model
.constructive_geometry_representation_relationship_arena
.get(id.0);
Self::deps_ref_constructive_geometry_representation_or_shape_representation(
&it.rep_1, out,
);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
}
EntityKey::ContextDependentOverRidingStyledItem(id) => {
let it = self
.model
.context_dependent_over_riding_styled_item_arena
.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
Self::deps_ref_styled_item(&it.over_ridden_style, out);
for e in &it.style_context {
Self::deps_ref_style_context_select(e, out);
}
}
EntityKey::ContextDependentShapeRepresentation(id) => {
let it = self
.model
.context_dependent_shape_representation_arena
.get(id.0);
Self::deps_ref_shape_representation_relationship(&it.representation_relation, out);
Self::deps_ref_product_definition_shape(&it.represented_product_relation, out);
}
EntityKey::ContextDependentUnit(id) => {
let it = self.model.context_dependent_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::ContinuousShapeAspect(id) => {
let it = self.model.continuous_shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::Contract(id) => {
let it = self.model.contract_arena.get(id.0);
Self::deps_ref_contract_type(&it.kind, out);
}
EntityKey::ContractType(_) => {}
EntityKey::ConversionBasedUnit(id) => {
let it = self.model.conversion_based_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
Self::deps_ref_measure_with_unit(&it.conversion_factor, out);
}
EntityKey::CoordinatedUniversalTimeOffset(_) => {}
EntityKey::CoordinatesList(_) => {}
EntityKey::Curve(_) => {}
EntityKey::CurveStyle(id) => {
let it = self.model.curve_style_arena.get(id.0);
if let Some(r) = &it.curve_font {
Self::deps_ref_curve_font_or_scaled_curve_font_select(r, out);
}
if let Some(r) = &it.curve_width {
Self::deps_ref_size_select(r, out);
}
if let Some(r) = &it.curve_colour {
Self::deps_ref_colour(r, out);
}
}
EntityKey::CurveStyleFont(id) => {
let it = self.model.curve_style_font_arena.get(id.0);
for e in &it.pattern_list {
Self::deps_ref_curve_style_font_pattern(e, out);
}
}
EntityKey::CurveStyleFontAndScaling(id) => {
let it = self.model.curve_style_font_and_scaling_arena.get(id.0);
Self::deps_ref_curve_style_font_select(&it.curve_font, out);
}
EntityKey::CurveStyleFontPattern(_) => {}
EntityKey::CurveStyleRendering(id) => {
let it = self.model.curve_style_rendering_arena.get(id.0);
Self::deps_ref_surface_rendering_properties(&it.rendering_properties, out);
}
EntityKey::CylindricalSurface(id) => {
let it = self.model.cylindrical_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::CylindricityTolerance(id) => {
let it = self.model.cylindricity_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::Date(_) => {}
EntityKey::DateAndTime(id) => {
let it = self.model.date_and_time_arena.get(id.0);
Self::deps_ref_date(&it.date_component, out);
Self::deps_ref_local_time(&it.time_component, out);
}
EntityKey::DateAndTimeAssignment(id) => {
let it = self.model.date_and_time_assignment_arena.get(id.0);
Self::deps_ref_date_and_time(&it.assigned_date_and_time, out);
Self::deps_ref_date_time_role(&it.role, out);
}
EntityKey::DateRole(_) => {}
EntityKey::DateTimeRole(_) => {}
EntityKey::Datum(id) => {
let it = self.model.datum_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::DatumFeature(id) => {
let it = self.model.datum_feature_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::DatumReference(id) => {
let it = self.model.datum_reference_arena.get(id.0);
Self::deps_ref_datum(&it.referenced_datum, out);
}
EntityKey::DatumReferenceCompartment(id) => {
let it = self.model.datum_reference_compartment_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
Self::deps_ref_datum_or_common_datum(&it.base, out);
if let Some(v) = &it.modifiers {
for e in v {
Self::deps_ref_datum_reference_modifier(e, out);
}
}
}
EntityKey::DatumReferenceElement(id) => {
let it = self.model.datum_reference_element_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
Self::deps_ref_datum_or_common_datum(&it.base, out);
if let Some(v) = &it.modifiers {
for e in v {
Self::deps_ref_datum_reference_modifier(e, out);
}
}
}
EntityKey::DatumReferenceModifierWithValue(id) => {
let it = self
.model
.datum_reference_modifier_with_value_arena
.get(id.0);
Self::deps_ref_length_measure_with_unit(&it.modifier_value, out);
}
EntityKey::DatumSystem(id) => {
let it = self.model.datum_system_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
for e in &it.constituents {
Self::deps_ref_datum_reference_compartment(e, out);
}
}
EntityKey::DatumTarget(id) => {
let it = self.model.datum_target_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::DefaultModelGeometricView(id) => {
let it = self.model.default_model_geometric_view_arena.get(id.0);
Self::deps_ref_representation_item(&it.item, out);
Self::deps_ref_representation(&it.rep, out);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::DefinedCharacterGlyph(id) => {
let it = self.model.defined_character_glyph_arena.get(id.0);
Self::deps_ref_defined_glyph_select(&it.definition, out);
Self::deps_ref_axis2_placement(&it.placement, out);
}
EntityKey::DefinedSymbol(id) => {
let it = self.model.defined_symbol_arena.get(id.0);
Self::deps_ref_defined_symbol_select(&it.definition, out);
Self::deps_ref_symbol_target(&it.target, out);
}
EntityKey::DefinitionalRepresentation(id) => {
let it = self.model.definitional_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::DefinitionalRepresentationRelationship(id) => {
let it = self
.model
.definitional_representation_relationship_arena
.get(id.0);
Self::deps_ref_representation_or_representation_reference(&it.rep_1, out);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
}
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(id) => {
let it = self
.model
.definitional_representation_relationship_with_same_context_arena
.get(id.0);
Self::deps_ref_representation_or_representation_reference(&it.rep_1, out);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
}
EntityKey::DegenerateToroidalSurface(id) => {
let it = self.model.degenerate_toroidal_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::DerivedShapeAspect(id) => {
let it = self.model.derived_shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::DerivedUnit(id) => {
let it = self.model.derived_unit_arena.get(id.0);
for e in &it.elements {
Self::deps_ref_derived_unit_element(e, out);
}
}
EntityKey::DerivedUnitElement(id) => {
let it = self.model.derived_unit_element_arena.get(id.0);
Self::deps_ref_named_unit(&it.unit, out);
}
EntityKey::DescriptionAttribute(id) => {
let it = self.model.description_attribute_arena.get(id.0);
Self::deps_ref_description_attribute_select(&it.described_item, out);
}
EntityKey::DescriptiveRepresentationItem(_) => {}
EntityKey::DesignContext(id) => {
let it = self.model.design_context_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::DimensionalCharacteristicRepresentation(id) => {
let it = self
.model
.dimensional_characteristic_representation_arena
.get(id.0);
Self::deps_ref_dimensional_characteristic(&it.dimension, out);
Self::deps_ref_shape_dimension_representation(&it.representation, out);
}
EntityKey::DimensionalExponents(_) => {}
EntityKey::DimensionalLocation(id) => {
let it = self.model.dimensional_location_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::DimensionalLocationWithPath(id) => {
let it = self.model.dimensional_location_with_path_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.path, out);
}
EntityKey::DimensionalSize(id) => {
let it = self.model.dimensional_size_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.applies_to, out);
}
EntityKey::DimensionalSizeWithDatumFeature(id) => {
let it = self
.model
.dimensional_size_with_datum_feature_arena
.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
Self::deps_ref_shape_aspect(&it.applies_to, out);
}
EntityKey::DimensionalSizeWithPath(id) => {
let it = self.model.dimensional_size_with_path_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.applies_to, out);
Self::deps_ref_shape_aspect(&it.path, out);
}
EntityKey::DirectedDimensionalLocation(id) => {
let it = self.model.directed_dimensional_location_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::Direction(_) => {}
EntityKey::Document(id) => {
let it = self.model.document_arena.get(id.0);
Self::deps_ref_document_type(&it.kind, out);
}
EntityKey::DocumentFile(id) => {
let it = self.model.document_file_arena.get(id.0);
Self::deps_ref_document_type(&it.kind, out);
}
EntityKey::DocumentProductAssociation(id) => {
let it = self.model.document_product_association_arena.get(id.0);
Self::deps_ref_document(&it.relating_document, out);
Self::deps_ref_product_or_formation_or_definition(&it.related_product, out);
}
EntityKey::DocumentProductEquivalence(id) => {
let it = self.model.document_product_equivalence_arena.get(id.0);
Self::deps_ref_document(&it.relating_document, out);
Self::deps_ref_product_or_formation_or_definition(&it.related_product, out);
}
EntityKey::DocumentReference(id) => {
let it = self.model.document_reference_arena.get(id.0);
Self::deps_ref_document(&it.assigned_document, out);
}
EntityKey::DocumentRepresentationType(id) => {
let it = self.model.document_representation_type_arena.get(id.0);
Self::deps_ref_document(&it.represented_document, out);
}
EntityKey::DocumentType(_) => {}
EntityKey::DraughtingAnnotationOccurrence(id) => {
let it = self.model.draughting_annotation_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
}
EntityKey::DraughtingCallout(id) => {
let it = self.model.draughting_callout_arena.get(id.0);
for e in &it.contents {
Self::deps_ref_draughting_callout_element(e, out);
}
}
EntityKey::DraughtingCalloutRelationship(id) => {
let it = self.model.draughting_callout_relationship_arena.get(id.0);
Self::deps_ref_draughting_callout(&it.relating_draughting_callout, out);
Self::deps_ref_draughting_callout(&it.related_draughting_callout, out);
}
EntityKey::DraughtingModel(id) => {
let it = self.model.draughting_model_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::DraughtingModelItemAssociation(id) => {
let it = self.model.draughting_model_item_association_arena.get(id.0);
Self::deps_ref_draughting_model_item_definition(&it.definition, out);
Self::deps_ref_annotation_representation_select(&it.used_representation, out);
Self::deps_ref_draughting_model_item_association_select(&it.identified_item, out);
}
EntityKey::DraughtingModelItemAssociationWithPlaceholder(id) => {
let it = self
.model
.draughting_model_item_association_with_placeholder_arena
.get(id.0);
Self::deps_ref_draughting_model_item_definition(&it.definition, out);
Self::deps_ref_annotation_representation_select(&it.used_representation, out);
Self::deps_ref_draughting_model_item_association_select(&it.identified_item, out);
Self::deps_ref_annotation_placeholder_occurrence(&it.annotation_placeholder, out);
}
EntityKey::DraughtingPreDefinedColour(_) => {}
EntityKey::DraughtingPreDefinedCurveFont(_) => {}
EntityKey::DraughtingPreDefinedTextFont(_) => {}
EntityKey::Edge(id) => {
let it = self.model.edge_arena.get(id.0);
if let Some(r) = &it.edge_start {
Self::deps_ref_vertex(r, out);
}
if let Some(r) = &it.edge_end {
Self::deps_ref_vertex(r, out);
}
}
EntityKey::EdgeCurve(id) => {
let it = self.model.edge_curve_arena.get(id.0);
Self::deps_ref_vertex(&it.edge_start, out);
Self::deps_ref_vertex(&it.edge_end, out);
Self::deps_ref_curve(&it.edge_geometry, out);
}
EntityKey::EdgeLoop(id) => {
let it = self.model.edge_loop_arena.get(id.0);
for e in &it.edge_list {
Self::deps_ref_oriented_edge(e, out);
}
}
EntityKey::Effectivity(_) => {}
EntityKey::ElementarySurface(id) => {
let it = self.model.elementary_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::Ellipse(id) => {
let it = self.model.ellipse_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.position, out);
}
EntityKey::Expression(_) => {}
EntityKey::ExternalIdentificationAssignment(id) => {
let it = self
.model
.external_identification_assignment_arena
.get(id.0);
Self::deps_ref_identification_role(&it.role, out);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternalSource(_) => {}
EntityKey::ExternallyDefinedCharacterGlyph(id) => {
let it = self
.model
.externally_defined_character_glyph_arena
.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedCurveFont(id) => {
let it = self.model.externally_defined_curve_font_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedHatchStyle(id) => {
let it = self.model.externally_defined_hatch_style_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedItem(id) => {
let it = self.model.externally_defined_item_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedStyle(id) => {
let it = self.model.externally_defined_style_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedSymbol(id) => {
let it = self.model.externally_defined_symbol_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedTextFont(id) => {
let it = self.model.externally_defined_text_font_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedTile(id) => {
let it = self.model.externally_defined_tile_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::ExternallyDefinedTileStyle(id) => {
let it = self.model.externally_defined_tile_style_arena.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::Face(id) => {
let it = self.model.face_arena.get(id.0);
for e in &it.bounds {
Self::deps_ref_face_bound(e, out);
}
}
EntityKey::FaceBound(id) => {
let it = self.model.face_bound_arena.get(id.0);
Self::deps_ref_loop(&it.bound, out);
}
EntityKey::FaceOuterBound(id) => {
let it = self.model.face_outer_bound_arena.get(id.0);
Self::deps_ref_loop(&it.bound, out);
}
EntityKey::FaceSurface(id) => {
let it = self.model.face_surface_arena.get(id.0);
for e in &it.bounds {
Self::deps_ref_face_bound(e, out);
}
Self::deps_ref_surface(&it.face_geometry, out);
}
EntityKey::FeatureForDatumTargetRelationship(id) => {
let it = self
.model
.feature_for_datum_target_relationship_arena
.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::FillAreaStyle(id) => {
let it = self.model.fill_area_style_arena.get(id.0);
for e in &it.fill_styles {
Self::deps_ref_fill_style_select(e, out);
}
}
EntityKey::FillAreaStyleColour(id) => {
let it = self.model.fill_area_style_colour_arena.get(id.0);
Self::deps_ref_colour(&it.fill_colour, out);
}
EntityKey::FillAreaStyleHatching(id) => {
let it = self.model.fill_area_style_hatching_arena.get(id.0);
Self::deps_ref_curve_style(&it.hatch_line_appearance, out);
Self::deps_ref_one_direction_repeat_factor(&it.start_of_next_hatch_line, out);
Self::deps_ref_cartesian_point(&it.point_of_reference_hatch_line, out);
Self::deps_ref_cartesian_point(&it.pattern_start, out);
}
EntityKey::FillAreaStyleTileColouredRegion(id) => {
let it = self
.model
.fill_area_style_tile_coloured_region_arena
.get(id.0);
Self::deps_ref_curve_or_annotation_curve_occurrence(&it.closed_curve, out);
Self::deps_ref_colour(&it.region_colour, out);
}
EntityKey::FillAreaStyleTileCurveWithStyle(id) => {
let it = self
.model
.fill_area_style_tile_curve_with_style_arena
.get(id.0);
Self::deps_ref_annotation_curve_occurrence(&it.styled_curve, out);
}
EntityKey::FillAreaStyleTileSymbolWithStyle(id) => {
let it = self
.model
.fill_area_style_tile_symbol_with_style_arena
.get(id.0);
Self::deps_ref_annotation_symbol_occurrence(&it.symbol, out);
}
EntityKey::FillAreaStyleTiles(id) => {
let it = self.model.fill_area_style_tiles_arena.get(id.0);
Self::deps_ref_two_direction_repeat_factor(&it.tiling_pattern, out);
for e in &it.tiles {
Self::deps_ref_fill_area_style_tile_shape_select(e, out);
}
}
EntityKey::FlatnessTolerance(id) => {
let it = self.model.flatness_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::FoundedItem(_) => {}
EntityKey::FunctionallyDefinedTransformation(_) => {}
EntityKey::GeneralDatumReference(id) => {
let it = self.model.general_datum_reference_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
Self::deps_ref_datum_or_common_datum(&it.base, out);
if let Some(v) = &it.modifiers {
for e in v {
Self::deps_ref_datum_reference_modifier(e, out);
}
}
}
EntityKey::GeneralProperty(_) => {}
EntityKey::GeneralPropertyAssociation(id) => {
let it = self.model.general_property_association_arena.get(id.0);
Self::deps_ref_general_property(&it.base_definition, out);
Self::deps_ref_derived_property_select(&it.derived_definition, out);
}
EntityKey::GenericExpression(_) => {}
EntityKey::GenericLiteral(_) => {}
EntityKey::GenericProductDefinitionReference(id) => {
let it = self
.model
.generic_product_definition_reference_arena
.get(id.0);
Self::deps_ref_external_source(&it.source, out);
}
EntityKey::GeometricCurveSet(id) => {
let it = self.model.geometric_curve_set_arena.get(id.0);
for e in &it.elements {
Self::deps_ref_geometric_set_select(e, out);
}
}
EntityKey::GeometricItemSpecificUsage(id) => {
let it = self.model.geometric_item_specific_usage_arena.get(id.0);
Self::deps_ref_geometric_item_specific_usage_select(&it.definition, out);
Self::deps_ref_shape_model(&it.used_representation, out);
Self::deps_ref_geometric_model_item(&it.identified_item, out);
}
EntityKey::GeometricRepresentationContext(_) => {}
EntityKey::GeometricRepresentationItem(_) => {}
EntityKey::GeometricSet(id) => {
let it = self.model.geometric_set_arena.get(id.0);
for e in &it.elements {
Self::deps_ref_geometric_set_select(e, out);
}
}
EntityKey::GeometricTolerance(id) => {
let it = self.model.geometric_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::GeometricToleranceRelationship(id) => {
let it = self.model.geometric_tolerance_relationship_arena.get(id.0);
Self::deps_ref_geometric_tolerance(&it.relating_geometric_tolerance, out);
Self::deps_ref_geometric_tolerance(&it.related_geometric_tolerance, out);
}
EntityKey::GeometricToleranceWithDatumReference(id) => {
let it = self
.model
.geometric_tolerance_with_datum_reference_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::GeometricToleranceWithDefinedAreaUnit(id) => {
let it = self
.model
.geometric_tolerance_with_defined_area_unit_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
Self::deps_ref_length_or_plane_angle_measure_with_unit_select(&it.unit_size, out);
if let Some(r) = &it.second_unit_size {
Self::deps_ref_length_or_plane_angle_measure_with_unit_select(r, out);
}
}
EntityKey::GeometricToleranceWithDefinedUnit(id) => {
let it = self
.model
.geometric_tolerance_with_defined_unit_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
Self::deps_ref_length_or_plane_angle_measure_with_unit_select(&it.unit_size, out);
}
EntityKey::GeometricToleranceWithMaximumTolerance(id) => {
let it = self
.model
.geometric_tolerance_with_maximum_tolerance_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
Self::deps_ref_length_measure_with_unit(&it.maximum_upper_tolerance, out);
}
EntityKey::GeometricToleranceWithModifiers(id) => {
let it = self
.model
.geometric_tolerance_with_modifiers_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(id) => {
let it = self
.model
.geometrically_bounded_surface_shape_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(id) => {
let it = self
.model
.geometrically_bounded_wireframe_shape_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::GlobalUncertaintyAssignedContext(id) => {
let it = self
.model
.global_uncertainty_assigned_context_arena
.get(id.0);
for e in &it.uncertainty {
Self::deps_ref_uncertainty_measure_with_unit(e, out);
}
}
EntityKey::GlobalUnitAssignedContext(id) => {
let it = self.model.global_unit_assigned_context_arena.get(id.0);
for e in &it.units {
Self::deps_ref_unit(e, out);
}
}
EntityKey::Group(_) => {}
EntityKey::GroupAssignment(id) => {
let it = self.model.group_assignment_arena.get(id.0);
Self::deps_ref_group(&it.assigned_group, out);
}
EntityKey::Hyperbola(id) => {
let it = self.model.hyperbola_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.position, out);
}
EntityKey::IdAttribute(id) => {
let it = self.model.id_attribute_arena.get(id.0);
Self::deps_ref_id_attribute_select(&it.identified_item, out);
}
EntityKey::IdentificationAssignment(id) => {
let it = self.model.identification_assignment_arena.get(id.0);
Self::deps_ref_identification_role(&it.role, out);
}
EntityKey::IdentificationRole(_) => {}
EntityKey::IntLiteral(_) => {}
EntityKey::IntegerRepresentationItem(_) => {}
EntityKey::IntersectionCurve(id) => {
let it = self.model.intersection_curve_arena.get(id.0);
Self::deps_ref_curve(&it.curve_3d, out);
for e in &it.associated_geometry {
Self::deps_ref_pcurve_or_surface(e, out);
}
}
EntityKey::Invisibility(id) => {
let it = self.model.invisibility_arena.get(id.0);
for e in &it.invisible_items {
Self::deps_ref_invisible_item(e, out);
}
}
EntityKey::ItemDefinedTransformation(id) => {
let it = self.model.item_defined_transformation_arena.get(id.0);
Self::deps_ref_representation_item(&it.transform_item_1, out);
Self::deps_ref_representation_item(&it.transform_item_2, out);
}
EntityKey::ItemIdentifiedRepresentationUsage(id) => {
let it = self
.model
.item_identified_representation_usage_arena
.get(id.0);
Self::deps_ref_item_identified_representation_usage_definition(&it.definition, out);
Self::deps_ref_representation(&it.used_representation, out);
Self::deps_ref_item_identified_representation_usage_select(
&it.identified_item,
out,
);
}
EntityKey::LeaderCurve(id) => {
let it = self.model.leader_curve_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_curve_or_curve_set(&it.item, out);
}
EntityKey::LeaderDirectedCallout(id) => {
let it = self.model.leader_directed_callout_arena.get(id.0);
for e in &it.contents {
Self::deps_ref_draughting_callout_element(e, out);
}
}
EntityKey::LeaderTerminator(id) => {
let it = self.model.leader_terminator_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_annotation_symbol_occurrence_item(&it.item, out);
Self::deps_ref_annotation_curve_occurrence(&it.annotated_curve, out);
}
EntityKey::LengthMeasureWithUnit(id) => {
let it = self.model.length_measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::LengthUnit(id) => {
let it = self.model.length_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::LimitsAndFits(_) => {}
EntityKey::Line(id) => {
let it = self.model.line_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.pnt, out);
Self::deps_ref_vector(&it.dir, out);
}
EntityKey::LineProfileTolerance(id) => {
let it = self.model.line_profile_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::LiteralNumber(_) => {}
EntityKey::LocalTime(id) => {
let it = self.model.local_time_arena.get(id.0);
Self::deps_ref_coordinated_universal_time_offset(&it.zone, out);
}
EntityKey::Loop(_) => {}
EntityKey::MakeFromUsageOption(id) => {
let it = self.model.make_from_usage_option_arena.get(id.0);
Self::deps_ref_product_definition_or_reference(
&it.relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(&it.related_product_definition, out);
Self::deps_ref_measure_with_unit(&it.quantity, out);
}
EntityKey::ManifoldSolidBrep(id) => {
let it = self.model.manifold_solid_brep_arena.get(id.0);
Self::deps_ref_closed_shell(&it.outer, out);
}
EntityKey::ManifoldSurfaceShapeRepresentation(id) => {
let it = self
.model
.manifold_surface_shape_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::MappedItem(id) => {
let it = self.model.mapped_item_arena.get(id.0);
Self::deps_ref_representation_map(&it.mapping_source, out);
Self::deps_ref_representation_item(&it.mapping_target, out);
}
EntityKey::MassMeasureWithUnit(id) => {
let it = self.model.mass_measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::MassUnit(id) => {
let it = self.model.mass_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::MeasureQualification(id) => {
let it = self.model.measure_qualification_arena.get(id.0);
Self::deps_ref_measure_with_unit(&it.qualified_measure, out);
for e in &it.qualifiers {
Self::deps_ref_value_qualifier(e, out);
}
}
EntityKey::MeasureRepresentationItem(id) => {
let it = self.model.measure_representation_item_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::MeasureWithUnit(id) => {
let it = self.model.measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::MechanicalContext(id) => {
let it = self.model.mechanical_context_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::MechanicalDesignAndDraughtingRelationship(id) => {
let it = self
.model
.mechanical_design_and_draughting_relationship_arena
.get(id.0);
Self::deps_ref_mechanical_design_and_draughting_relationship_select(&it.rep_1, out);
Self::deps_ref_mechanical_design_and_draughting_relationship_select(&it.rep_2, out);
}
EntityKey::MechanicalDesignGeometricPresentationRepresentation(id) => {
let it = self
.model
.mechanical_design_geometric_presentation_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(id) => {
let it = self
.model
.mechanical_design_presentation_representation_with_draughting_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::MechanicalDesignShadedPresentationRepresentation(id) => {
let it = self
.model
.mechanical_design_shaded_presentation_representation_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::ModelGeometricView(id) => {
let it = self.model.model_geometric_view_arena.get(id.0);
Self::deps_ref_representation_item(&it.item, out);
Self::deps_ref_representation(&it.rep, out);
}
EntityKey::ModifiedGeometricTolerance(id) => {
let it = self.model.modified_geometric_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::NameAttribute(id) => {
let it = self.model.name_attribute_arena.get(id.0);
Self::deps_ref_name_attribute_select(&it.named_item, out);
}
EntityKey::NamedUnit(id) => {
let it = self.model.named_unit_arena.get(id.0);
if let Some(r) = &it.dimensions {
Self::deps_ref_dimensional_exponents(r, out);
}
}
EntityKey::NextAssemblyUsageOccurrence(id) => {
let it = self.model.next_assembly_usage_occurrence_arena.get(id.0);
Self::deps_ref_product_definition_or_reference(
&it.relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(&it.related_product_definition, out);
}
EntityKey::NumericExpression(_) => {}
EntityKey::ObjectRole(_) => {}
EntityKey::OffsetSurface(id) => {
let it = self.model.offset_surface_arena.get(id.0);
Self::deps_ref_surface(&it.basis_surface, out);
}
EntityKey::OneDirectionRepeatFactor(id) => {
let it = self.model.one_direction_repeat_factor_arena.get(id.0);
Self::deps_ref_vector(&it.repeat_factor, out);
}
EntityKey::OpenShell(id) => {
let it = self.model.open_shell_arena.get(id.0);
for e in &it.cfs_faces {
Self::deps_ref_face(e, out);
}
}
EntityKey::Organization(_) => {}
EntityKey::OrganizationRelationship(id) => {
let it = self.model.organization_relationship_arena.get(id.0);
Self::deps_ref_organization(&it.relating_organization, out);
Self::deps_ref_organization(&it.related_organization, out);
}
EntityKey::OrganizationRole(_) => {}
EntityKey::OrganizationType(_) => {}
EntityKey::OrganizationTypeRole(_) => {}
EntityKey::OrganizationalAddress(id) => {
let it = self.model.organizational_address_arena.get(id.0);
for e in &it.organizations {
Self::deps_ref_organization(e, out);
}
}
EntityKey::OrganizationalProject(id) => {
let it = self.model.organizational_project_arena.get(id.0);
for e in &it.responsible_organizations {
Self::deps_ref_organization(e, out);
}
}
EntityKey::OrganizationalProjectRelationship(id) => {
let it = self
.model
.organizational_project_relationship_arena
.get(id.0);
Self::deps_ref_organizational_project(&it.relating_organizational_project, out);
Self::deps_ref_organizational_project(&it.related_organizational_project, out);
}
EntityKey::OrganizationalProjectRole(_) => {}
EntityKey::OrientedClosedShell(id) => {
let it = self.model.oriented_closed_shell_arena.get(id.0);
Self::deps_ref_closed_shell(&it.closed_shell_element, out);
}
EntityKey::OrientedEdge(id) => {
let it = self.model.oriented_edge_arena.get(id.0);
Self::deps_ref_edge(&it.edge_element, out);
}
EntityKey::OverRidingStyledItem(id) => {
let it = self.model.over_riding_styled_item_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
Self::deps_ref_styled_item(&it.over_ridden_style, out);
}
EntityKey::ParallelismTolerance(id) => {
let it = self.model.parallelism_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::ParametricRepresentationContext(_) => {}
EntityKey::Path(id) => {
let it = self.model.path_arena.get(id.0);
for e in &it.edge_list {
Self::deps_ref_oriented_edge(e, out);
}
}
EntityKey::Pcurve(id) => {
let it = self.model.pcurve_arena.get(id.0);
Self::deps_ref_surface(&it.basis_surface, out);
Self::deps_ref_definitional_representation(&it.reference_to_curve, out);
}
EntityKey::PerpendicularityTolerance(id) => {
let it = self.model.perpendicularity_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::Person(_) => {}
EntityKey::PersonAndOrganization(id) => {
let it = self.model.person_and_organization_arena.get(id.0);
Self::deps_ref_person(&it.the_person, out);
Self::deps_ref_organization(&it.the_organization, out);
}
EntityKey::PersonAndOrganizationAddress(id) => {
let it = self.model.person_and_organization_address_arena.get(id.0);
for e in &it.organizations {
Self::deps_ref_organization(e, out);
}
for e in &it.people {
Self::deps_ref_person(e, out);
}
}
EntityKey::PersonAndOrganizationAssignment(id) => {
let it = self
.model
.person_and_organization_assignment_arena
.get(id.0);
Self::deps_ref_person_and_organization(&it.assigned_person_and_organization, out);
Self::deps_ref_person_and_organization_role(&it.role, out);
}
EntityKey::PersonAndOrganizationRole(_) => {}
EntityKey::PersonalAddress(id) => {
let it = self.model.personal_address_arena.get(id.0);
for e in &it.people {
Self::deps_ref_person(e, out);
}
}
EntityKey::PlacedDatumTargetFeature(id) => {
let it = self.model.placed_datum_target_feature_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::Placement(id) => {
let it = self.model.placement_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.location, out);
}
EntityKey::PlanarBox(id) => {
let it = self.model.planar_box_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.placement, out);
}
EntityKey::PlanarExtent(_) => {}
EntityKey::Plane(id) => {
let it = self.model.plane_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::PlaneAngleMeasureWithUnit(id) => {
let it = self.model.plane_angle_measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::PlaneAngleUnit(id) => {
let it = self.model.plane_angle_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::PlusMinusTolerance(id) => {
let it = self.model.plus_minus_tolerance_arena.get(id.0);
Self::deps_ref_tolerance_method_definition(&it.range, out);
Self::deps_ref_dimensional_characteristic(&it.toleranced_dimension, out);
}
EntityKey::Point(_) => {}
EntityKey::PointStyle(id) => {
let it = self.model.point_style_arena.get(id.0);
if let Some(r) = &it.marker {
Self::deps_ref_marker_select(r, out);
}
if let Some(r) = &it.marker_size {
Self::deps_ref_size_select(r, out);
}
if let Some(r) = &it.marker_colour {
Self::deps_ref_colour(r, out);
}
}
EntityKey::PolyLoop(id) => {
let it = self.model.poly_loop_arena.get(id.0);
for e in &it.polygon {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::Polyline(id) => {
let it = self.model.polyline_arena.get(id.0);
for e in &it.points {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::PositionTolerance(id) => {
let it = self.model.position_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::PreDefinedCharacterGlyph(_) => {}
EntityKey::PreDefinedColour(_) => {}
EntityKey::PreDefinedCurveFont(_) => {}
EntityKey::PreDefinedItem(_) => {}
EntityKey::PreDefinedMarker(_) => {}
EntityKey::PreDefinedPointMarkerSymbol(_) => {}
EntityKey::PreDefinedPresentationStyle(_) => {}
EntityKey::PreDefinedSurfaceSideStyle(_) => {}
EntityKey::PreDefinedSymbol(_) => {}
EntityKey::PreDefinedTerminatorSymbol(_) => {}
EntityKey::PreDefinedTextFont(_) => {}
EntityKey::PreDefinedTile(_) => {}
EntityKey::PrecisionQualifier(_) => {}
EntityKey::PresentationArea(id) => {
let it = self.model.presentation_area_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::PresentationLayerAssignment(id) => {
let it = self.model.presentation_layer_assignment_arena.get(id.0);
for e in &it.assigned_items {
Self::deps_ref_layered_item(e, out);
}
}
EntityKey::PresentationRepresentation(id) => {
let it = self.model.presentation_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::PresentationSet(_) => {}
EntityKey::PresentationSize(id) => {
let it = self.model.presentation_size_arena.get(id.0);
Self::deps_ref_presentation_size_assignment_select(&it.unit, out);
Self::deps_ref_planar_box(&it.size, out);
}
EntityKey::PresentationStyleAssignment(id) => {
let it = self.model.presentation_style_assignment_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_select(e, out);
}
}
EntityKey::PresentationStyleByContext(id) => {
let it = self.model.presentation_style_by_context_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_select(e, out);
}
Self::deps_ref_style_context_select(&it.style_context, out);
}
EntityKey::PresentationView(id) => {
let it = self.model.presentation_view_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::PresentedItem(_) => {}
EntityKey::PresentedItemRepresentation(id) => {
let it = self.model.presented_item_representation_arena.get(id.0);
Self::deps_ref_presentation_representation_select(&it.presentation, out);
Self::deps_ref_presented_item(&it.item, out);
}
EntityKey::Product(id) => {
let it = self.model.product_arena.get(id.0);
for e in &it.frame_of_reference {
Self::deps_ref_product_context(e, out);
}
}
EntityKey::ProductCategory(_) => {}
EntityKey::ProductCategoryRelationship(id) => {
let it = self.model.product_category_relationship_arena.get(id.0);
Self::deps_ref_product_category(&it.category, out);
Self::deps_ref_product_category(&it.sub_category, out);
}
EntityKey::ProductConcept(id) => {
let it = self.model.product_concept_arena.get(id.0);
Self::deps_ref_product_concept_context(&it.market_context, out);
}
EntityKey::ProductConceptContext(id) => {
let it = self.model.product_concept_context_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::ProductConceptFeature(_) => {}
EntityKey::ProductConceptFeatureCategory(_) => {}
EntityKey::ProductContext(id) => {
let it = self.model.product_context_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::ProductDefinition(id) => {
let it = self.model.product_definition_arena.get(id.0);
Self::deps_ref_product_definition_formation(&it.formation, out);
Self::deps_ref_product_definition_context(&it.frame_of_reference, out);
}
EntityKey::ProductDefinitionContext(id) => {
let it = self.model.product_definition_context_arena.get(id.0);
Self::deps_ref_application_context(&it.frame_of_reference, out);
}
EntityKey::ProductDefinitionContextAssociation(id) => {
let it = self
.model
.product_definition_context_association_arena
.get(id.0);
Self::deps_ref_product_definition(&it.definition, out);
Self::deps_ref_product_definition_context(&it.frame_of_reference, out);
Self::deps_ref_product_definition_context_role(&it.role, out);
}
EntityKey::ProductDefinitionContextRole(_) => {}
EntityKey::ProductDefinitionEffectivity(id) => {
let it = self.model.product_definition_effectivity_arena.get(id.0);
Self::deps_ref_product_definition_relationship(&it.usage, out);
}
EntityKey::ProductDefinitionFormation(id) => {
let it = self.model.product_definition_formation_arena.get(id.0);
Self::deps_ref_product(&it.of_product, out);
}
EntityKey::ProductDefinitionFormationWithSpecifiedSource(id) => {
let it = self
.model
.product_definition_formation_with_specified_source_arena
.get(id.0);
Self::deps_ref_product(&it.of_product, out);
}
EntityKey::ProductDefinitionOccurrence(id) => {
let it = self.model.product_definition_occurrence_arena.get(id.0);
if let Some(r) = &it.definition {
Self::deps_ref_product_definition_or_reference(r, out);
}
if let Some(r) = &it.quantity {
Self::deps_ref_measure_with_unit(r, out);
}
}
EntityKey::ProductDefinitionRelationship(id) => {
let it = self.model.product_definition_relationship_arena.get(id.0);
Self::deps_ref_product_definition_or_reference(
&it.relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(&it.related_product_definition, out);
}
EntityKey::ProductDefinitionRelationshipRelationship(id) => {
let it = self
.model
.product_definition_relationship_relationship_arena
.get(id.0);
Self::deps_ref_product_definition_relationship(&it.relating, out);
Self::deps_ref_product_definition_relationship(&it.related, out);
}
EntityKey::ProductDefinitionShape(id) => {
let it = self.model.product_definition_shape_arena.get(id.0);
Self::deps_ref_characterized_definition(&it.definition, out);
}
EntityKey::ProductDefinitionSubstitute(id) => {
let it = self.model.product_definition_substitute_arena.get(id.0);
Self::deps_ref_product_definition_relationship(&it.context_relationship, out);
Self::deps_ref_product_definition(&it.substitute_definition, out);
}
EntityKey::ProductDefinitionUsage(id) => {
let it = self.model.product_definition_usage_arena.get(id.0);
Self::deps_ref_product_definition_or_reference(
&it.relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(&it.related_product_definition, out);
}
EntityKey::ProductDefinitionWithAssociatedDocuments(id) => {
let it = self
.model
.product_definition_with_associated_documents_arena
.get(id.0);
Self::deps_ref_product_definition_formation(&it.formation, out);
Self::deps_ref_product_definition_context(&it.frame_of_reference, out);
for e in &it.documentation_ids {
Self::deps_ref_document(e, out);
}
}
EntityKey::ProductRelatedProductCategory(id) => {
let it = self.model.product_related_product_category_arena.get(id.0);
for e in &it.products {
Self::deps_ref_product(e, out);
}
}
EntityKey::ProjectedZoneDefinition(id) => {
let it = self.model.projected_zone_definition_arena.get(id.0);
Self::deps_ref_tolerance_zone(&it.zone, out);
for e in &it.boundaries {
Self::deps_ref_shape_aspect(e, out);
}
Self::deps_ref_shape_aspect(&it.projection_end, out);
Self::deps_ref_length_measure_with_unit(&it.projected_length, out);
}
EntityKey::PropertyDefinition(id) => {
let it = self.model.property_definition_arena.get(id.0);
Self::deps_ref_characterized_definition(&it.definition, out);
}
EntityKey::PropertyDefinitionRelationship(id) => {
let it = self.model.property_definition_relationship_arena.get(id.0);
Self::deps_ref_property_definition(&it.relating_property_definition, out);
Self::deps_ref_property_definition(&it.related_property_definition, out);
}
EntityKey::PropertyDefinitionRepresentation(id) => {
let it = self
.model
.property_definition_representation_arena
.get(id.0);
Self::deps_ref_represented_definition(&it.definition, out);
Self::deps_ref_representation(&it.used_representation, out);
}
EntityKey::QualifiedRepresentationItem(id) => {
let it = self.model.qualified_representation_item_arena.get(id.0);
for e in &it.qualifiers {
Self::deps_ref_value_qualifier(e, out);
}
}
EntityKey::QuasiUniformCurve(id) => {
let it = self.model.quasi_uniform_curve_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::QuasiUniformSurface(id) => {
let it = self.model.quasi_uniform_surface_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::RatioMeasureWithUnit(id) => {
let it = self.model.ratio_measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::RatioUnit(id) => {
let it = self.model.ratio_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::RationalBSplineCurve(id) => {
let it = self.model.rational_b_spline_curve_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::RationalBSplineSurface(id) => {
let it = self.model.rational_b_spline_surface_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::RealLiteral(_) => {}
EntityKey::RealRepresentationItem(_) => {}
EntityKey::RepositionedTessellatedItem(id) => {
let it = self.model.repositioned_tessellated_item_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.location, out);
}
EntityKey::Representation(id) => {
let it = self.model.representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::RepresentationContext(_) => {}
EntityKey::RepresentationContextReference(_) => {}
EntityKey::RepresentationItem(_) => {}
EntityKey::RepresentationMap(id) => {
let it = self.model.representation_map_arena.get(id.0);
Self::deps_ref_representation_item(&it.mapping_origin, out);
Self::deps_ref_representation(&it.mapped_representation, out);
}
EntityKey::RepresentationReference(id) => {
let it = self.model.representation_reference_arena.get(id.0);
Self::deps_ref_representation_context_reference(&it.context_of_items, out);
}
EntityKey::RepresentationRelationship(id) => {
let it = self.model.representation_relationship_arena.get(id.0);
Self::deps_ref_representation_or_representation_reference(&it.rep_1, out);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
}
EntityKey::RepresentationRelationshipWithTransformation(id) => {
let it = self
.model
.representation_relationship_with_transformation_arena
.get(id.0);
Self::deps_ref_representation_or_representation_reference(&it.rep_1, out);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
Self::deps_ref_transformation(&it.transformation_operator, out);
}
EntityKey::ResourceProperty(id) => {
let it = self.model.resource_property_arena.get(id.0);
Self::deps_ref_characterized_resource_definition(&it.resource, out);
}
EntityKey::ResourceRequirementType(_) => {}
EntityKey::RoleAssociation(id) => {
let it = self.model.role_association_arena.get(id.0);
Self::deps_ref_object_role(&it.role, out);
Self::deps_ref_role_select(&it.item_with_role, out);
}
EntityKey::RoundnessTolerance(id) => {
let it = self.model.roundness_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::SeamCurve(id) => {
let it = self.model.seam_curve_arena.get(id.0);
Self::deps_ref_curve(&it.curve_3d, out);
for e in &it.associated_geometry {
Self::deps_ref_pcurve_or_surface(e, out);
}
}
EntityKey::SecurityClassification(id) => {
let it = self.model.security_classification_arena.get(id.0);
Self::deps_ref_security_classification_level(&it.security_level, out);
}
EntityKey::SecurityClassificationAssignment(id) => {
let it = self
.model
.security_classification_assignment_arena
.get(id.0);
Self::deps_ref_security_classification(&it.assigned_security_classification, out);
}
EntityKey::SecurityClassificationLevel(_) => {}
EntityKey::ShapeAspect(id) => {
let it = self.model.shape_aspect_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
}
EntityKey::ShapeAspectAssociativity(id) => {
let it = self.model.shape_aspect_associativity_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::ShapeAspectDerivingRelationship(id) => {
let it = self
.model
.shape_aspect_deriving_relationship_arena
.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::ShapeAspectRelationship(id) => {
let it = self.model.shape_aspect_relationship_arena.get(id.0);
Self::deps_ref_shape_aspect(&it.relating_shape_aspect, out);
Self::deps_ref_shape_aspect(&it.related_shape_aspect, out);
}
EntityKey::ShapeDefinitionRepresentation(id) => {
let it = self.model.shape_definition_representation_arena.get(id.0);
Self::deps_ref_represented_definition(&it.definition, out);
Self::deps_ref_representation(&it.used_representation, out);
}
EntityKey::ShapeDimensionRepresentation(id) => {
let it = self.model.shape_dimension_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::ShapeRepresentation(id) => {
let it = self.model.shape_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::ShapeRepresentationRelationship(id) => {
let it = self.model.shape_representation_relationship_arena.get(id.0);
Self::deps_ref_representation_or_representation_reference(&it.rep_1, out);
Self::deps_ref_representation_or_representation_reference(&it.rep_2, out);
}
EntityKey::ShapeRepresentationWithParameters(id) => {
let it = self
.model
.shape_representation_with_parameters_arena
.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::ShellBasedSurfaceModel(id) => {
let it = self.model.shell_based_surface_model_arena.get(id.0);
for e in &it.sbsm_boundary {
Self::deps_ref_shell(e, out);
}
}
EntityKey::SiUnit(_) => {}
EntityKey::SimpleGenericExpression(_) => {}
EntityKey::SimpleNumericExpression(_) => {}
EntityKey::SolidAngleUnit(id) => {
let it = self.model.solid_angle_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::SolidModel(_) => {}
EntityKey::SphericalSurface(id) => {
let it = self.model.spherical_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::StartRequest(id) => {
let it = self.model.start_request_arena.get(id.0);
Self::deps_ref_versioned_action_request(&it.assigned_action_request, out);
for e in &it.items {
Self::deps_ref_start_request_item(e, out);
}
}
EntityKey::StartWork(id) => {
let it = self.model.start_work_arena.get(id.0);
Self::deps_ref_action(&it.assigned_action, out);
for e in &it.items {
Self::deps_ref_work_item(e, out);
}
}
EntityKey::StateObserved(_) => {}
EntityKey::StateType(_) => {}
EntityKey::StraightnessTolerance(id) => {
let it = self.model.straightness_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::StyledItem(id) => {
let it = self.model.styled_item_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
}
EntityKey::Surface(_) => {}
EntityKey::SurfaceCurve(id) => {
let it = self.model.surface_curve_arena.get(id.0);
Self::deps_ref_curve(&it.curve_3d, out);
for e in &it.associated_geometry {
Self::deps_ref_pcurve_or_surface(e, out);
}
}
EntityKey::SurfaceOfLinearExtrusion(id) => {
let it = self.model.surface_of_linear_extrusion_arena.get(id.0);
Self::deps_ref_curve(&it.swept_curve, out);
Self::deps_ref_vector(&it.extrusion_axis, out);
}
EntityKey::SurfaceOfRevolution(id) => {
let it = self.model.surface_of_revolution_arena.get(id.0);
Self::deps_ref_curve(&it.swept_curve, out);
Self::deps_ref_axis1_placement(&it.axis_position, out);
}
EntityKey::SurfaceProfileTolerance(id) => {
let it = self.model.surface_profile_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
}
EntityKey::SurfaceRenderingProperties(id) => {
let it = self.model.surface_rendering_properties_arena.get(id.0);
Self::deps_ref_colour(&it.rendered_colour, out);
}
EntityKey::SurfaceSideStyle(id) => {
let it = self.model.surface_side_style_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_surface_style_element_select(e, out);
}
}
EntityKey::SurfaceStyleBoundary(id) => {
let it = self.model.surface_style_boundary_arena.get(id.0);
Self::deps_ref_curve_or_render(&it.style_of_boundary, out);
}
EntityKey::SurfaceStyleControlGrid(id) => {
let it = self.model.surface_style_control_grid_arena.get(id.0);
Self::deps_ref_curve_or_render(&it.style_of_control_grid, out);
}
EntityKey::SurfaceStyleFillArea(id) => {
let it = self.model.surface_style_fill_area_arena.get(id.0);
Self::deps_ref_fill_area_style(&it.fill_area, out);
}
EntityKey::SurfaceStyleParameterLine(id) => {
let it = self.model.surface_style_parameter_line_arena.get(id.0);
Self::deps_ref_curve_or_render(&it.style_of_parameter_lines, out);
}
EntityKey::SurfaceStyleReflectanceAmbient(_) => {}
EntityKey::SurfaceStyleRendering(id) => {
let it = self.model.surface_style_rendering_arena.get(id.0);
Self::deps_ref_colour(&it.surface_colour, out);
}
EntityKey::SurfaceStyleRenderingWithProperties(id) => {
let it = self
.model
.surface_style_rendering_with_properties_arena
.get(id.0);
Self::deps_ref_colour(&it.surface_colour, out);
for e in &it.properties {
Self::deps_ref_rendering_properties_select(e, out);
}
}
EntityKey::SurfaceStyleSegmentationCurve(id) => {
let it = self.model.surface_style_segmentation_curve_arena.get(id.0);
Self::deps_ref_curve_or_render(&it.style_of_segmentation_curve, out);
}
EntityKey::SurfaceStyleSilhouette(id) => {
let it = self.model.surface_style_silhouette_arena.get(id.0);
Self::deps_ref_curve_or_render(&it.style_of_silhouette, out);
}
EntityKey::SurfaceStyleTransparent(_) => {}
EntityKey::SurfaceStyleUsage(id) => {
let it = self.model.surface_style_usage_arena.get(id.0);
Self::deps_ref_surface_side_style_select(&it.style, out);
}
EntityKey::SweptSurface(id) => {
let it = self.model.swept_surface_arena.get(id.0);
Self::deps_ref_curve(&it.swept_curve, out);
}
EntityKey::SymbolColour(id) => {
let it = self.model.symbol_colour_arena.get(id.0);
Self::deps_ref_colour(&it.colour_of_symbol, out);
}
EntityKey::SymbolRepresentation(id) => {
let it = self.model.symbol_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::SymbolStyle(id) => {
let it = self.model.symbol_style_arena.get(id.0);
Self::deps_ref_symbol_style_select(&it.style_of_symbol, out);
}
EntityKey::SymbolTarget(id) => {
let it = self.model.symbol_target_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.placement, out);
}
EntityKey::SymmetryTolerance(id) => {
let it = self.model.symmetry_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::TerminatorSymbol(id) => {
let it = self.model.terminator_symbol_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_annotation_symbol_occurrence_item(&it.item, out);
Self::deps_ref_annotation_curve_occurrence(&it.annotated_curve, out);
}
EntityKey::TessellatedAnnotationOccurrence(id) => {
let it = self.model.tessellated_annotation_occurrence_arena.get(id.0);
for e in &it.styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(&it.item, out);
}
EntityKey::TessellatedCurveSet(id) => {
let it = self.model.tessellated_curve_set_arena.get(id.0);
Self::deps_ref_coordinates_list(&it.coordinates, out);
}
EntityKey::TessellatedFace(id) => {
let it = self.model.tessellated_face_arena.get(id.0);
Self::deps_ref_coordinates_list(&it.coordinates, out);
if let Some(r) = &it.geometric_link {
Self::deps_ref_face_or_surface(r, out);
}
}
EntityKey::TessellatedGeometricSet(id) => {
let it = self.model.tessellated_geometric_set_arena.get(id.0);
for e in &it.children {
Self::deps_ref_tessellated_item(e, out);
}
}
EntityKey::TessellatedItem(_) => {}
EntityKey::TessellatedShapeRepresentation(id) => {
let it = self.model.tessellated_shape_representation_arena.get(id.0);
for e in &it.items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(&it.context_of_items, out);
}
EntityKey::TessellatedShell(id) => {
let it = self.model.tessellated_shell_arena.get(id.0);
for e in &it.items {
Self::deps_ref_tessellated_structured_item(e, out);
}
if let Some(r) = &it.topological_link {
Self::deps_ref_connected_face_set(r, out);
}
}
EntityKey::TessellatedSolid(id) => {
let it = self.model.tessellated_solid_arena.get(id.0);
for e in &it.items {
Self::deps_ref_tessellated_structured_item(e, out);
}
if let Some(r) = &it.geometric_link {
Self::deps_ref_manifold_solid_brep(r, out);
}
}
EntityKey::TessellatedStructuredItem(_) => {}
EntityKey::TessellatedSurfaceSet(id) => {
let it = self.model.tessellated_surface_set_arena.get(id.0);
Self::deps_ref_coordinates_list(&it.coordinates, out);
}
EntityKey::TextFont(_) => {}
EntityKey::TextLiteral(id) => {
let it = self.model.text_literal_arena.get(id.0);
Self::deps_ref_axis2_placement(&it.placement, out);
Self::deps_ref_font_select(&it.font, out);
}
EntityKey::TextStyle(id) => {
let it = self.model.text_style_arena.get(id.0);
Self::deps_ref_character_style_select(&it.character_appearance, out);
}
EntityKey::TextStyleForDefinedFont(id) => {
let it = self.model.text_style_for_defined_font_arena.get(id.0);
Self::deps_ref_colour(&it.text_colour, out);
}
EntityKey::TextStyleWithBoxCharacteristics(id) => {
let it = self
.model
.text_style_with_box_characteristics_arena
.get(id.0);
Self::deps_ref_character_style_select(&it.character_appearance, out);
}
EntityKey::TextureStyleSpecification(_) => {}
EntityKey::TextureStyleTessellationSpecification(_) => {}
EntityKey::TimeUnit(id) => {
let it = self.model.time_unit_arena.get(id.0);
Self::deps_ref_dimensional_exponents(&it.dimensions, out);
}
EntityKey::ToleranceValue(id) => {
let it = self.model.tolerance_value_arena.get(id.0);
Self::deps_ref_measure_with_unit(&it.lower_bound, out);
Self::deps_ref_measure_with_unit(&it.upper_bound, out);
}
EntityKey::ToleranceZone(id) => {
let it = self.model.tolerance_zone_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
for e in &it.defining_tolerance {
Self::deps_ref_tolerance_zone_target(e, out);
}
Self::deps_ref_tolerance_zone_form(&it.form, out);
}
EntityKey::ToleranceZoneDefinition(id) => {
let it = self.model.tolerance_zone_definition_arena.get(id.0);
Self::deps_ref_tolerance_zone(&it.zone, out);
for e in &it.boundaries {
Self::deps_ref_shape_aspect(e, out);
}
}
EntityKey::ToleranceZoneForm(_) => {}
EntityKey::ToleranceZoneWithDatum(id) => {
let it = self.model.tolerance_zone_with_datum_arena.get(id.0);
Self::deps_ref_product_definition_shape(&it.of_shape, out);
for e in &it.defining_tolerance {
Self::deps_ref_tolerance_zone_target(e, out);
}
Self::deps_ref_tolerance_zone_form(&it.form, out);
Self::deps_ref_datum_system(&it.datum_reference, out);
}
EntityKey::TopologicalRepresentationItem(_) => {}
EntityKey::ToroidalSurface(id) => {
let it = self.model.toroidal_surface_arena.get(id.0);
Self::deps_ref_axis2_placement3d(&it.position, out);
}
EntityKey::TotalRunoutTolerance(id) => {
let it = self.model.total_runout_tolerance_arena.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
for e in &it.datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
EntityKey::TrimmedCurve(id) => {
let it = self.model.trimmed_curve_arena.get(id.0);
Self::deps_ref_curve(&it.basis_curve, out);
for e in &it.trim_1 {
Self::deps_ref_trimming_select(e, out);
}
for e in &it.trim_2 {
Self::deps_ref_trimming_select(e, out);
}
}
EntityKey::TwoDirectionRepeatFactor(id) => {
let it = self.model.two_direction_repeat_factor_arena.get(id.0);
Self::deps_ref_vector(&it.repeat_factor, out);
Self::deps_ref_vector(&it.second_repeat_factor, out);
}
EntityKey::TypeQualifier(_) => {}
EntityKey::UncertaintyMeasureWithUnit(id) => {
let it = self.model.uncertainty_measure_with_unit_arena.get(id.0);
Self::deps_ref_unit(&it.unit_component, out);
}
EntityKey::UncertaintyQualifier(_) => {}
EntityKey::UnequallyDisposedGeometricTolerance(id) => {
let it = self
.model
.unequally_disposed_geometric_tolerance_arena
.get(id.0);
if let Some(r) = &it.magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(&it.toleranced_shape_aspect, out);
Self::deps_ref_length_measure_with_unit(&it.displacement, out);
}
EntityKey::UniformCurve(id) => {
let it = self.model.uniform_curve_arena.get(id.0);
for e in &it.control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
EntityKey::UniformSurface(id) => {
let it = self.model.uniform_surface_arena.get(id.0);
for e in &it.control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
EntityKey::ValueFormatTypeQualifier(_) => {}
EntityKey::ValueRepresentationItem(_) => {}
EntityKey::Vector(id) => {
let it = self.model.vector_arena.get(id.0);
Self::deps_ref_direction(&it.orientation, out);
}
EntityKey::VersionedActionRequest(_) => {}
EntityKey::Vertex(_) => {}
EntityKey::VertexLoop(id) => {
let it = self.model.vertex_loop_arena.get(id.0);
Self::deps_ref_vertex(&it.loop_vertex, out);
}
EntityKey::VertexPoint(id) => {
let it = self.model.vertex_point_arena.get(id.0);
Self::deps_ref_point(&it.vertex_geometry, out);
}
EntityKey::VertexShell(id) => {
let it = self.model.vertex_shell_arena.get(id.0);
Self::deps_ref_vertex_loop(&it.vertex_shell_extent, out);
}
EntityKey::ViewVolume(id) => {
let it = self.model.view_volume_arena.get(id.0);
Self::deps_ref_cartesian_point(&it.projection_point, out);
Self::deps_ref_planar_box(&it.view_window, out);
}
EntityKey::VolumeUnit(id) => {
let it = self.model.volume_unit_arena.get(id.0);
for e in &it.elements {
Self::deps_ref_derived_unit_element(e, out);
}
}
EntityKey::WireShell(id) => {
let it = self.model.wire_shell_arena.get(id.0);
for e in &it.wire_shell_extent {
Self::deps_ref_loop(e, out);
}
}
EntityKey::ComplexUnit(id) => {
let cu = self.model.complex_unit_arena.get(id.0);
for part in &cu.parts {
match part {
UnitPart::Action { chosen_method, .. } => {
Self::deps_ref_action_method(chosen_method, out);
}
UnitPart::ActionMethodRelationship {
relating_method,
related_method,
..
} => {
Self::deps_ref_action_method(relating_method, out);
Self::deps_ref_action_method(related_method, out);
}
UnitPart::ActionRelationship {
relating_action,
related_action,
..
} => {
Self::deps_ref_action(relating_action, out);
Self::deps_ref_action(related_action, out);
}
UnitPart::ActionRequestAssignment {
assigned_action_request,
..
} => {
Self::deps_ref_versioned_action_request(assigned_action_request, out);
}
UnitPart::ActionResource { usage, kind, .. } => {
for e in usage {
Self::deps_ref_supported_item(e, out);
}
Self::deps_ref_action_resource_type(kind, out);
}
UnitPart::ActionResourceRequirement {
kind, operations, ..
} => {
Self::deps_ref_resource_requirement_type(kind, out);
for e in operations {
Self::deps_ref_characterized_action_definition(e, out);
}
}
UnitPart::AnnotationFillAreaOccurrence {
fill_style_target, ..
} => {
Self::deps_ref_point(fill_style_target, out);
}
UnitPart::AnnotationOccurrenceRelationship {
relating_annotation_occurrence,
related_annotation_occurrence,
..
} => {
Self::deps_ref_annotation_occurrence(
relating_annotation_occurrence,
out,
);
Self::deps_ref_annotation_occurrence(
related_annotation_occurrence,
out,
);
}
UnitPart::AnnotationPlaceholderOccurrenceWithLeaderLine {
leader_line,
..
} => {
for e in leader_line {
Self::deps_ref_annotation_placeholder_leader_line(e, out);
}
}
UnitPart::AnnotationPlane { elements, .. } => {
if let Some(v) = elements {
for e in v {
Self::deps_ref_annotation_plane_element(e, out);
}
}
}
UnitPart::ApplicationContextElement {
frame_of_reference, ..
} => {
Self::deps_ref_application_context(frame_of_reference, out);
}
UnitPart::AppliedApprovalAssignment { items, .. } => {
for e in items {
Self::deps_ref_approval_item(e, out);
}
}
UnitPart::AppliedDateAndTimeAssignment { items, .. } => {
for e in items {
Self::deps_ref_date_and_time_item(e, out);
}
}
UnitPart::AppliedDocumentReference { items, .. } => {
for e in items {
Self::deps_ref_document_reference_item(e, out);
}
}
UnitPart::AppliedExternalIdentificationAssignment { items, .. } => {
for e in items {
Self::deps_ref_external_identification_item(e, out);
}
}
UnitPart::AppliedGroupAssignment { items, .. } => {
for e in items {
Self::deps_ref_groupable_item(e, out);
}
}
UnitPart::AppliedPersonAndOrganizationAssignment { items, .. } => {
for e in items {
Self::deps_ref_person_and_organization_item(e, out);
}
}
UnitPart::AppliedPresentedItem { items, .. } => {
for e in items {
Self::deps_ref_presented_item_select(e, out);
}
}
UnitPart::AppliedSecurityClassificationAssignment { items, .. } => {
for e in items {
Self::deps_ref_security_classification_item(e, out);
}
}
UnitPart::ApprovalAssignment {
assigned_approval, ..
} => {
Self::deps_ref_approval(assigned_approval, out);
}
UnitPart::AreaInSet { area, in_set, .. } => {
Self::deps_ref_presentation_area(area, out);
Self::deps_ref_presentation_set(in_set, out);
}
UnitPart::AscribableStateRelationship {
relating_ascribable_state,
related_ascribable_state,
..
} => {
Self::deps_ref_ascribable_state(relating_ascribable_state, out);
Self::deps_ref_ascribable_state(related_ascribable_state, out);
}
UnitPart::BSplineCurve {
control_points_list,
..
} => {
for e in control_points_list {
Self::deps_ref_cartesian_point(e, out);
}
}
UnitPart::BSplineSurface {
control_points_list,
..
} => {
for e in control_points_list {
for e in e {
Self::deps_ref_cartesian_point(e, out);
}
}
}
UnitPart::BrepWithVoids { voids, .. } => {
for e in voids {
Self::deps_ref_oriented_closed_shell(e, out);
}
}
UnitPart::CameraModelD3 {
view_reference_system,
perspective_of_volume,
..
} => {
Self::deps_ref_axis2_placement3d(view_reference_system, out);
Self::deps_ref_view_volume(perspective_of_volume, out);
}
UnitPart::CameraModelD3MultiClipping { shape_clipping, .. } => {
for e in shape_clipping {
Self::deps_ref_camera_model_d3_multi_clipping_intersection_select(
e, out,
);
}
}
UnitPart::CcDesignApproval { items, .. } => {
for e in items {
Self::deps_ref_approved_item(e, out);
}
}
UnitPart::CcDesignDateAndTimeAssignment { items, .. } => {
for e in items {
Self::deps_ref_date_time_item(e, out);
}
}
UnitPart::CcDesignPersonAndOrganizationAssignment { items, .. } => {
for e in items {
Self::deps_ref_cc_person_organization_item(e, out);
}
}
UnitPart::CcDesignSecurityClassification { items, .. } => {
for e in items {
Self::deps_ref_cc_classified_item(e, out);
}
}
UnitPart::ChangeRequest { items, .. } => {
for e in items {
Self::deps_ref_change_request_item(e, out);
}
}
UnitPart::CharacterGlyphStyleOutline { outline_style, .. } => {
Self::deps_ref_curve_style(outline_style, out);
}
UnitPart::CharacterGlyphStyleStroke { stroke_style, .. } => {
Self::deps_ref_curve_style(stroke_style, out);
}
UnitPart::CharacterizedItemWithinRepresentation { item, rep, .. } => {
Self::deps_ref_representation_item(item, out);
Self::deps_ref_representation(rep, out);
}
UnitPart::CompositeCurve { segments, .. } => {
for e in segments {
Self::deps_ref_composite_curve_segment(e, out);
}
}
UnitPart::CompositeCurveSegment { parent_curve, .. } => {
Self::deps_ref_curve(parent_curve, out);
}
UnitPart::CompositeText { collected_text, .. } => {
for e in collected_text {
Self::deps_ref_text_or_character(e, out);
}
}
UnitPart::CompoundRepresentationItem { item_element, .. } => {
Self::deps_ref_compound_item_definition(item_element, out);
}
UnitPart::ConfigurationEffectivity { configuration, .. } => {
Self::deps_ref_configuration_design(configuration, out);
}
UnitPart::ConfigurationItem { item_concept, .. } => {
Self::deps_ref_product_concept(item_concept, out);
}
UnitPart::ConnectedFaceSet { cfs_faces, .. } => {
if let Some(v) = cfs_faces {
for e in v {
Self::deps_ref_face(e, out);
}
}
}
UnitPart::ContextDependentOverRidingStyledItem {
style_context, ..
} => {
for e in style_context {
Self::deps_ref_style_context_select(e, out);
}
}
UnitPart::ConversionBasedUnit {
conversion_factor, ..
} => {
Self::deps_ref_measure_with_unit(conversion_factor, out);
}
UnitPart::CurveStyle {
curve_font,
curve_width,
curve_colour,
..
} => {
if let Some(r) = curve_font {
Self::deps_ref_curve_font_or_scaled_curve_font_select(r, out);
}
if let Some(r) = curve_width {
Self::deps_ref_size_select(r, out);
}
if let Some(r) = curve_colour {
Self::deps_ref_colour(r, out);
}
}
UnitPart::CurveStyleFont { pattern_list, .. } => {
for e in pattern_list {
Self::deps_ref_curve_style_font_pattern(e, out);
}
}
UnitPart::CurveStyleFontAndScaling { curve_font, .. } => {
Self::deps_ref_curve_style_font_select(curve_font, out);
}
UnitPart::DateAndTime {
date_component,
time_component,
..
} => {
Self::deps_ref_date(date_component, out);
Self::deps_ref_local_time(time_component, out);
}
UnitPart::DateAndTimeAssignment {
assigned_date_and_time,
role,
..
} => {
Self::deps_ref_date_and_time(assigned_date_and_time, out);
Self::deps_ref_date_time_role(role, out);
}
UnitPart::DatumReference {
referenced_datum, ..
} => {
Self::deps_ref_datum(referenced_datum, out);
}
UnitPart::DatumSystem { constituents, .. } => {
for e in constituents {
Self::deps_ref_datum_reference_compartment(e, out);
}
}
UnitPart::DerivedUnit { elements, .. } => {
for e in elements {
Self::deps_ref_derived_unit_element(e, out);
}
}
UnitPart::DimensionalSize { applies_to, .. } => {
Self::deps_ref_shape_aspect(applies_to, out);
}
UnitPart::Document { kind, .. } => {
Self::deps_ref_document_type(kind, out);
}
UnitPart::DocumentProductAssociation {
relating_document,
related_product,
..
} => {
Self::deps_ref_document(relating_document, out);
Self::deps_ref_product_or_formation_or_definition(related_product, out);
}
UnitPart::DocumentReference {
assigned_document, ..
} => {
Self::deps_ref_document(assigned_document, out);
}
UnitPart::DraughtingCallout { contents, .. } => {
for e in contents {
Self::deps_ref_draughting_callout_element(e, out);
}
}
UnitPart::DraughtingCalloutRelationship {
relating_draughting_callout,
related_draughting_callout,
..
} => {
Self::deps_ref_draughting_callout(relating_draughting_callout, out);
Self::deps_ref_draughting_callout(related_draughting_callout, out);
}
UnitPart::DraughtingModelItemAssociationWithPlaceholder {
annotation_placeholder,
..
} => {
Self::deps_ref_annotation_placeholder_occurrence(
annotation_placeholder,
out,
);
}
UnitPart::Edge {
edge_start,
edge_end,
..
} => {
if let Some(r) = edge_start {
Self::deps_ref_vertex(r, out);
}
if let Some(r) = edge_end {
Self::deps_ref_vertex(r, out);
}
}
UnitPart::EdgeCurve { edge_geometry, .. } => {
Self::deps_ref_curve(edge_geometry, out);
}
UnitPart::ElementarySurface { position, .. } => {
Self::deps_ref_axis2_placement3d(position, out);
}
UnitPart::ExternalIdentificationAssignment { source, .. } => {
Self::deps_ref_external_source(source, out);
}
UnitPart::ExternallyDefinedItem { source, .. } => {
Self::deps_ref_external_source(source, out);
}
UnitPart::Face { bounds, .. } => {
for e in bounds {
Self::deps_ref_face_bound(e, out);
}
}
UnitPart::FaceBound { bound, .. } => {
Self::deps_ref_loop(bound, out);
}
UnitPart::FaceSurface { face_geometry, .. } => {
Self::deps_ref_surface(face_geometry, out);
}
UnitPart::FillAreaStyle { fill_styles, .. } => {
for e in fill_styles {
Self::deps_ref_fill_style_select(e, out);
}
}
UnitPart::FillAreaStyleHatching {
hatch_line_appearance,
start_of_next_hatch_line,
point_of_reference_hatch_line,
pattern_start,
..
} => {
Self::deps_ref_curve_style(hatch_line_appearance, out);
Self::deps_ref_one_direction_repeat_factor(
start_of_next_hatch_line,
out,
);
Self::deps_ref_cartesian_point(point_of_reference_hatch_line, out);
Self::deps_ref_cartesian_point(pattern_start, out);
}
UnitPart::FillAreaStyleTileSymbolWithStyle { symbol, .. } => {
Self::deps_ref_annotation_symbol_occurrence(symbol, out);
}
UnitPart::FillAreaStyleTiles {
tiling_pattern,
tiles,
..
} => {
Self::deps_ref_two_direction_repeat_factor(tiling_pattern, out);
for e in tiles {
Self::deps_ref_fill_area_style_tile_shape_select(e, out);
}
}
UnitPart::GeneralDatumReference {
base, modifiers, ..
} => {
Self::deps_ref_datum_or_common_datum(base, out);
if let Some(v) = modifiers {
for e in v {
Self::deps_ref_datum_reference_modifier(e, out);
}
}
}
UnitPart::GenericProductDefinitionReference { source, .. } => {
Self::deps_ref_external_source(source, out);
}
UnitPart::GeometricSet { elements, .. } => {
for e in elements {
Self::deps_ref_geometric_set_select(e, out);
}
}
UnitPart::GeometricTolerance {
magnitude,
toleranced_shape_aspect,
..
} => {
if let Some(r) = magnitude {
Self::deps_ref_length_measure_with_unit(r, out);
}
Self::deps_ref_geometric_tolerance_target(toleranced_shape_aspect, out);
}
UnitPart::GeometricToleranceWithDatumReference { datum_system, .. } => {
for e in datum_system {
Self::deps_ref_datum_system_or_reference(e, out);
}
}
UnitPart::GeometricToleranceWithDefinedAreaUnit {
second_unit_size,
..
} => {
if let Some(r) = second_unit_size {
Self::deps_ref_length_or_plane_angle_measure_with_unit_select(
r, out,
);
}
}
UnitPart::GeometricToleranceWithDefinedUnit { unit_size, .. } => {
Self::deps_ref_length_or_plane_angle_measure_with_unit_select(
unit_size, out,
);
}
UnitPart::GeometricToleranceWithMaximumTolerance {
maximum_upper_tolerance,
..
} => {
Self::deps_ref_length_measure_with_unit(maximum_upper_tolerance, out);
}
UnitPart::GlobalUncertaintyAssignedContext { uncertainty, .. } => {
for e in uncertainty {
Self::deps_ref_uncertainty_measure_with_unit(e, out);
}
}
UnitPart::GlobalUnitAssignedContext { units, .. } => {
for e in units {
Self::deps_ref_unit(e, out);
}
}
UnitPart::GroupAssignment { assigned_group, .. } => {
Self::deps_ref_group(assigned_group, out);
}
UnitPart::IdentificationAssignment { role, .. } => {
Self::deps_ref_identification_role(role, out);
}
UnitPart::Invisibility {
invisible_items, ..
} => {
for e in invisible_items {
Self::deps_ref_invisible_item(e, out);
}
}
UnitPart::ItemDefinedTransformation {
transform_item_1,
transform_item_2,
..
} => {
Self::deps_ref_representation_item(transform_item_1, out);
Self::deps_ref_representation_item(transform_item_2, out);
}
UnitPart::ItemIdentifiedRepresentationUsage {
definition,
used_representation,
identified_item,
..
} => {
Self::deps_ref_item_identified_representation_usage_definition(
definition, out,
);
Self::deps_ref_representation(used_representation, out);
Self::deps_ref_item_identified_representation_usage_select(
identified_item,
out,
);
}
UnitPart::ManifoldSolidBrep { outer, .. } => {
Self::deps_ref_closed_shell(outer, out);
}
UnitPart::MappedItem {
mapping_source,
mapping_target,
..
} => {
Self::deps_ref_representation_map(mapping_source, out);
Self::deps_ref_representation_item(mapping_target, out);
}
UnitPart::MeasureWithUnit { unit_component, .. } => {
Self::deps_ref_unit(unit_component, out);
}
UnitPart::NamedUnit { dimensions, .. } => {
if let Some(r) = dimensions {
Self::deps_ref_dimensional_exponents(r, out);
}
}
UnitPart::OneDirectionRepeatFactor { repeat_factor, .. } => {
Self::deps_ref_vector(repeat_factor, out);
}
UnitPart::OrganizationalAddress { organizations, .. } => {
for e in organizations {
Self::deps_ref_organization(e, out);
}
}
UnitPart::OrientedClosedShell {
closed_shell_element,
..
} => {
Self::deps_ref_closed_shell(closed_shell_element, out);
}
UnitPart::OrientedEdge { edge_element, .. } => {
Self::deps_ref_edge(edge_element, out);
}
UnitPart::OverRidingStyledItem {
over_ridden_style, ..
} => {
Self::deps_ref_styled_item(over_ridden_style, out);
}
UnitPart::Path { edge_list, .. } => {
for e in edge_list {
Self::deps_ref_oriented_edge(e, out);
}
}
UnitPart::Pcurve {
basis_surface,
reference_to_curve,
..
} => {
Self::deps_ref_surface(basis_surface, out);
Self::deps_ref_definitional_representation(reference_to_curve, out);
}
UnitPart::PersonAndOrganizationAssignment {
assigned_person_and_organization,
role,
..
} => {
Self::deps_ref_person_and_organization(
assigned_person_and_organization,
out,
);
Self::deps_ref_person_and_organization_role(role, out);
}
UnitPart::PersonalAddress { people, .. } => {
for e in people {
Self::deps_ref_person(e, out);
}
}
UnitPart::Placement { location, .. } => {
Self::deps_ref_cartesian_point(location, out);
}
UnitPart::PlanarBox { placement, .. } => {
Self::deps_ref_axis2_placement(placement, out);
}
UnitPart::PointStyle {
marker,
marker_size,
marker_colour,
..
} => {
if let Some(r) = marker {
Self::deps_ref_marker_select(r, out);
}
if let Some(r) = marker_size {
Self::deps_ref_size_select(r, out);
}
if let Some(r) = marker_colour {
Self::deps_ref_colour(r, out);
}
}
UnitPart::PolyLoop { polygon, .. } => {
for e in polygon {
Self::deps_ref_cartesian_point(e, out);
}
}
UnitPart::PresentationStyleAssignment { styles, .. } => {
for e in styles {
Self::deps_ref_presentation_style_select(e, out);
}
}
UnitPart::PresentationStyleByContext { style_context, .. } => {
Self::deps_ref_style_context_select(style_context, out);
}
UnitPart::Product {
frame_of_reference, ..
} => {
for e in frame_of_reference {
Self::deps_ref_product_context(e, out);
}
}
UnitPart::ProductConcept { market_context, .. } => {
Self::deps_ref_product_concept_context(market_context, out);
}
UnitPart::ProductDefinition {
formation,
frame_of_reference,
..
} => {
Self::deps_ref_product_definition_formation(formation, out);
Self::deps_ref_product_definition_context(frame_of_reference, out);
}
UnitPart::ProductDefinitionEffectivity { usage, .. } => {
Self::deps_ref_product_definition_relationship(usage, out);
}
UnitPart::ProductDefinitionFormation { of_product, .. } => {
Self::deps_ref_product(of_product, out);
}
UnitPart::ProductDefinitionOccurrence {
definition,
quantity,
..
} => {
if let Some(r) = definition {
Self::deps_ref_product_definition_or_reference(r, out);
}
if let Some(r) = quantity {
Self::deps_ref_measure_with_unit(r, out);
}
}
UnitPart::ProductDefinitionRelationship {
relating_product_definition,
related_product_definition,
..
} => {
Self::deps_ref_product_definition_or_reference(
relating_product_definition,
out,
);
Self::deps_ref_product_definition_or_reference(
related_product_definition,
out,
);
}
UnitPart::ProductDefinitionRelationshipRelationship {
relating,
related,
..
} => {
Self::deps_ref_product_definition_relationship(relating, out);
Self::deps_ref_product_definition_relationship(related, out);
}
UnitPart::ProductDefinitionWithAssociatedDocuments {
documentation_ids,
..
} => {
for e in documentation_ids {
Self::deps_ref_document(e, out);
}
}
UnitPart::ProductRelatedProductCategory { products, .. } => {
for e in products {
Self::deps_ref_product(e, out);
}
}
UnitPart::ProjectedZoneDefinition {
projection_end,
projected_length,
..
} => {
Self::deps_ref_shape_aspect(projection_end, out);
Self::deps_ref_length_measure_with_unit(projected_length, out);
}
UnitPart::PropertyDefinition { definition, .. } => {
Self::deps_ref_characterized_definition(definition, out);
}
UnitPart::PropertyDefinitionRepresentation {
definition,
used_representation,
..
} => {
Self::deps_ref_represented_definition(definition, out);
Self::deps_ref_representation(used_representation, out);
}
UnitPart::QualifiedRepresentationItem { qualifiers, .. } => {
for e in qualifiers {
Self::deps_ref_value_qualifier(e, out);
}
}
UnitPart::RepositionedTessellatedItem { location, .. } => {
Self::deps_ref_axis2_placement3d(location, out);
}
UnitPart::Representation {
items,
context_of_items,
..
} => {
for e in items {
Self::deps_ref_representation_item(e, out);
}
Self::deps_ref_representation_context(context_of_items, out);
}
UnitPart::RepresentationMap {
mapping_origin,
mapped_representation,
..
} => {
Self::deps_ref_representation_item(mapping_origin, out);
Self::deps_ref_representation(mapped_representation, out);
}
UnitPart::RepresentationReference {
context_of_items, ..
} => {
Self::deps_ref_representation_context_reference(context_of_items, out);
}
UnitPart::RepresentationRelationship { rep_1, rep_2, .. } => {
Self::deps_ref_representation_or_representation_reference(rep_1, out);
Self::deps_ref_representation_or_representation_reference(rep_2, out);
}
UnitPart::RepresentationRelationshipWithTransformation {
transformation_operator,
..
} => {
Self::deps_ref_transformation(transformation_operator, out);
}
UnitPart::SecurityClassificationAssignment {
assigned_security_classification,
..
} => {
Self::deps_ref_security_classification(
assigned_security_classification,
out,
);
}
UnitPart::ShapeAspect { of_shape, .. } => {
Self::deps_ref_product_definition_shape(of_shape, out);
}
UnitPart::ShapeAspectRelationship {
relating_shape_aspect,
related_shape_aspect,
..
} => {
Self::deps_ref_shape_aspect(relating_shape_aspect, out);
Self::deps_ref_shape_aspect(related_shape_aspect, out);
}
UnitPart::ShellBasedSurfaceModel { sbsm_boundary, .. } => {
for e in sbsm_boundary {
Self::deps_ref_shell(e, out);
}
}
UnitPart::StartRequest { items, .. } => {
for e in items {
Self::deps_ref_start_request_item(e, out);
}
}
UnitPart::StyledItem { styles, item, .. } => {
for e in styles {
Self::deps_ref_presentation_style_assignment(e, out);
}
Self::deps_ref_styled_item_target(item, out);
}
UnitPart::SurfaceCurve {
curve_3d,
associated_geometry,
..
} => {
Self::deps_ref_curve(curve_3d, out);
for e in associated_geometry {
Self::deps_ref_pcurve_or_surface(e, out);
}
}
UnitPart::SurfaceSideStyle { styles, .. } => {
for e in styles {
Self::deps_ref_surface_style_element_select(e, out);
}
}
UnitPart::SurfaceStyleBoundary {
style_of_boundary, ..
} => {
Self::deps_ref_curve_or_render(style_of_boundary, out);
}
UnitPart::SurfaceStyleControlGrid {
style_of_control_grid,
..
} => {
Self::deps_ref_curve_or_render(style_of_control_grid, out);
}
UnitPart::SurfaceStyleFillArea { fill_area, .. } => {
Self::deps_ref_fill_area_style(fill_area, out);
}
UnitPart::SurfaceStyleParameterLine {
style_of_parameter_lines,
..
} => {
Self::deps_ref_curve_or_render(style_of_parameter_lines, out);
}
UnitPart::SurfaceStyleRendering { surface_colour, .. } => {
Self::deps_ref_colour(surface_colour, out);
}
UnitPart::SurfaceStyleRenderingWithProperties { properties, .. } => {
for e in properties {
Self::deps_ref_rendering_properties_select(e, out);
}
}
UnitPart::SurfaceStyleSegmentationCurve {
style_of_segmentation_curve,
..
} => {
Self::deps_ref_curve_or_render(style_of_segmentation_curve, out);
}
UnitPart::SurfaceStyleSilhouette {
style_of_silhouette,
..
} => {
Self::deps_ref_curve_or_render(style_of_silhouette, out);
}
UnitPart::SurfaceStyleUsage { style, .. } => {
Self::deps_ref_surface_side_style_select(style, out);
}
UnitPart::SymbolStyle {
style_of_symbol, ..
} => {
Self::deps_ref_symbol_style_select(style_of_symbol, out);
}
UnitPart::TerminatorSymbol {
annotated_curve, ..
} => {
Self::deps_ref_annotation_curve_occurrence(annotated_curve, out);
}
UnitPart::TessellatedGeometricSet { children, .. } => {
for e in children {
Self::deps_ref_tessellated_item(e, out);
}
}
UnitPart::TextLiteral {
placement, font, ..
} => {
Self::deps_ref_axis2_placement(placement, out);
Self::deps_ref_font_select(font, out);
}
UnitPart::TextStyle {
character_appearance,
..
} => {
Self::deps_ref_character_style_select(character_appearance, out);
}
UnitPart::ToleranceZone {
defining_tolerance,
form,
..
} => {
for e in defining_tolerance {
Self::deps_ref_tolerance_zone_target(e, out);
}
Self::deps_ref_tolerance_zone_form(form, out);
}
UnitPart::ToleranceZoneDefinition {
zone, boundaries, ..
} => {
Self::deps_ref_tolerance_zone(zone, out);
for e in boundaries {
Self::deps_ref_shape_aspect(e, out);
}
}
UnitPart::ToleranceZoneWithDatum {
datum_reference, ..
} => {
Self::deps_ref_datum_system(datum_reference, out);
}
UnitPart::TwoDirectionRepeatFactor {
second_repeat_factor,
..
} => {
Self::deps_ref_vector(second_repeat_factor, out);
}
UnitPart::UnequallyDisposedGeometricTolerance { displacement, .. } => {
Self::deps_ref_length_measure_with_unit(displacement, out);
}
UnitPart::Vector { orientation, .. } => {
Self::deps_ref_direction(orientation, out);
}
UnitPart::VertexPoint {
vertex_geometry, ..
} => {
Self::deps_ref_point(vertex_geometry, out);
}
UnitPart::ViewVolume {
projection_point,
view_window,
..
} => {
Self::deps_ref_cartesian_point(projection_point, out);
Self::deps_ref_planar_box(view_window, out);
}
_ => {}
}
}
}
}
}
fn render_one(&self, any: EntityKey) -> String {
match any {
EntityKey::Action(id) => {
let it = self.model.action_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_action_method(&it.chosen_method)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionAssignment(id) => {
let it = self.model.action_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_action(&it.assigned_action))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionDirective(id) => {
let it = self.model.action_directive_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
step_str(&it.analysis),
step_str(&it.comment),
format!(
"({})",
it.requests
.iter()
.map(|e| format!("#{}", self.id_of_ref_versioned_action_request(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionMethod(id) => {
let it = self.model.action_method_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
step_str(&it.consequence),
step_str(&it.purpose),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionMethodRelationship(id) => {
let it = self.model.action_method_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_action_method(&it.relating_method)),
format!("#{}", self.id_of_ref_action_method(&it.related_method)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionProperty(id) => {
let it = self.model.action_property_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_characterized_action_definition(&it.definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionRelationship(id) => {
let it = self.model.action_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_action(&it.relating_action)),
format!("#{}", self.id_of_ref_action(&it.related_action)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionRequestAssignment(id) => {
let it = self.model.action_request_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_versioned_action_request(&it.assigned_action_request)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionRequestSolution(id) => {
let it = self.model.action_request_solution_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_action_method(&it.method)),
format!("#{}", self.id_of_ref_versioned_action_request(&it.request)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionResource(id) => {
let it = self.model.action_resource_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.usage
.iter()
.map(|e| format!("#{}", self.id_of_ref_supported_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_action_resource_type(&it.kind)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionResourceRelationship(id) => {
let it = self.model.action_resource_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_action_resource(&it.relating_resource)),
format!("#{}", self.id_of_ref_action_resource(&it.related_resource)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionResourceRequirement(id) => {
let it = self.model.action_resource_requirement_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!("#{}", self.id_of_ref_resource_requirement_type(&it.kind)),
format!(
"({})",
it.operations
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_characterized_action_definition(e)
))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ActionResourceType(id) => {
let it = self.model.action_resource_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Address(id) => {
let it = self.model.address_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.internal_location {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_box {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.town {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.region {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_code {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.country {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.facsimile_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telephone_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.electronic_mail_address {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telex_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AdvancedBrepShapeRepresentation(id) => {
let it = self
.model
.advanced_brep_shape_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AdvancedFace(id) => {
let it = self.model.advanced_face_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.bounds
.iter()
.map(|e| format!("#{}", self.id_of_ref_face_bound(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_surface(&it.face_geometry)),
(if it.same_sense { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AllAroundShapeAspect(id) => {
let it = self.model.all_around_shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AngularLocation(id) => {
let it = self.model.angular_location_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
it.angle_selection.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AngularSize(id) => {
let it = self.model.angular_size_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_shape_aspect(&it.applies_to)),
step_str(&it.name),
it.angle_selection.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AngularityTolerance(id) => {
let it = self.model.angularity_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationCurveOccurrence(id) => {
let it = self.model.annotation_curve_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_curve_or_curve_set(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationFillAreaOccurrence(id) => {
let it = self.model.annotation_fill_area_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
format!("#{}", self.id_of_ref_point(&it.fill_style_target)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationOccurrence(id) => {
let it = self.model.annotation_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationOccurrenceAssociativity(id) => {
let it = self
.model
.annotation_occurrence_associativity_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_annotation_occurrence(&it.relating_annotation_occurrence)
),
format!(
"#{}",
self.id_of_ref_annotation_occurrence(&it.related_annotation_occurrence)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationOccurrenceRelationship(id) => {
let it = self
.model
.annotation_occurrence_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_annotation_occurrence(&it.relating_annotation_occurrence)
),
format!(
"#{}",
self.id_of_ref_annotation_occurrence(&it.related_annotation_occurrence)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationPlaceholderLeaderLine(id) => {
let it = self
.model
.annotation_placeholder_leader_line_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.geometric_elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_des_apll_point_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationPlaceholderOccurrence(id) => {
let it = self.model.annotation_placeholder_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
it.role.token().to_string(),
real(it.line_spacing),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(id) => {
let it = self
.model
.annotation_placeholder_occurrence_with_leader_line_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
it.role.token().to_string(),
real(it.line_spacing),
format!(
"({})",
it.leader_line
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_annotation_placeholder_leader_line(e)
))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationPlane(id) => {
let it = self.model.annotation_plane_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_plane_or_planar_box(&it.item)),
match &it.elements {
Some(v) => format!(
"({})",
v.iter()
.map(|e| format!("#{}", self.id_of_ref_annotation_plane_element(e)))
.collect::<Vec<_>>()
.join(",")
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationSymbol(id) => {
let it = self.model.annotation_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_target)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationSymbolOccurrence(id) => {
let it = self.model.annotation_symbol_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_annotation_symbol_occurrence_item(&it.item)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationText(id) => {
let it = self.model.annotation_text_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!("#{}", self.id_of_ref_axis2_placement(&it.mapping_target)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationTextCharacter(id) => {
let it = self.model.annotation_text_character_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!("#{}", self.id_of_ref_axis2_placement(&it.mapping_target)),
step_str(&it.alignment),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationTextOccurrence(id) => {
let it = self.model.annotation_text_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_annotation_text_occurrence_item(&it.item)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationToAnnotationLeaderLine(id) => {
let it = self
.model
.annotation_to_annotation_leader_line_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.geometric_elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_des_apll_point_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AnnotationToModelLeaderLine(id) => {
let it = self.model.annotation_to_model_leader_line_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.geometric_elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_des_apll_point_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApllPoint(id) => {
let it = self.model.apll_point_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.coordinates
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
it.symbol_applied.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApllPointWithSurface(id) => {
let it = self.model.apll_point_with_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.coordinates
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
it.symbol_applied.token().to_string(),
format!("#{}", self.id_of_ref_face_surface(&it.associated_surface)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApplicationContext(id) => {
let it = self.model.application_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.application)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApplicationContextElement(id) => {
let it = self.model.application_context_element_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApplicationProtocolDefinition(id) => {
let it = self.model.application_protocol_definition_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.status),
step_str(&it.application_interpreted_model_schema_name),
format!("{}", it.application_protocol_year),
format!("#{}", self.id_of_ref_application_context(&it.application)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedApprovalAssignment(id) => {
let it = self.model.applied_approval_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_approval(&it.assigned_approval)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_approval_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedDateAndTimeAssignment(id) => {
let it = self.model.applied_date_and_time_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_date_and_time(&it.assigned_date_and_time)
),
format!("#{}", self.id_of_ref_date_time_role(&it.role)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_date_and_time_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedDocumentReference(id) => {
let it = self.model.applied_document_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_document(&it.assigned_document)),
step_str(&it.source),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_document_reference_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedExternalIdentificationAssignment(id) => {
let it = self
.model
.applied_external_identification_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.assigned_id),
format!("#{}", self.id_of_ref_identification_role(&it.role)),
format!("#{}", self.id_of_ref_external_source(&it.source)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_external_identification_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedGroupAssignment(id) => {
let it = self.model.applied_group_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_group(&it.assigned_group)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_groupable_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedPersonAndOrganizationAssignment(id) => {
let it = self
.model
.applied_person_and_organization_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_person_and_organization(
&it.assigned_person_and_organization
)
),
format!("#{}", self.id_of_ref_person_and_organization_role(&it.role)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_person_and_organization_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedPresentedItem(id) => {
let it = self.model.applied_presented_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_presented_item_select(e)))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AppliedSecurityClassificationAssignment(id) => {
let it = self
.model
.applied_security_classification_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_security_classification(
&it.assigned_security_classification
)
),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_security_classification_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Approval(id) => {
let it = self.model.approval_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_approval_status(&it.status)),
step_str(&it.level),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApprovalAssignment(id) => {
let it = self.model.approval_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_approval(&it.assigned_approval)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApprovalDateTime(id) => {
let it = self.model.approval_date_time_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_date_time_select(&it.date_time)),
format!("#{}", self.id_of_ref_approval(&it.dated_approval)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApprovalPersonOrganization(id) => {
let it = self.model.approval_person_organization_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_person_organization_select(&it.person_organization)
),
format!("#{}", self.id_of_ref_approval(&it.authorized_approval)),
format!("#{}", self.id_of_ref_approval_role(&it.role)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApprovalRole(id) => {
let it = self.model.approval_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.role)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApprovalStatus(id) => {
let it = self.model.approval_status_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApproximationTolerance(id) => {
let it = self.model.approximation_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_tolerance_select(&it.tolerance)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApproximationToleranceDeviation(id) => {
let it = self.model.approximation_tolerance_deviation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.tessellation_type.token().to_string(),
format!(
"({})",
it.tolerances
.iter()
.map(|e| measure(e))
.collect::<Vec<_>>()
.join(",")
),
it.definition_space.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ApproximationToleranceParameter(id) => {
let it = self.model.approximation_tolerance_parameter_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.tolerances
.iter()
.map(|e| measure(e))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AreaInSet(id) => {
let it = self.model.area_in_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_presentation_area(&it.area)),
format!("#{}", self.id_of_ref_presentation_set(&it.in_set)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AreaUnit(id) => {
let it = self.model.area_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_derived_unit_element(e)))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AscribableState(id) => {
let it = self.model.ascribable_state_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_state_type(&it.pertaining_state_type)),
format!(
"#{}",
self.id_of_ref_state_observed(&it.ascribed_state_observed)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AscribableStateRelationship(id) => {
let it = self.model.ascribable_state_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_ascribable_state(&it.relating_ascribable_state)
),
format!(
"#{}",
self.id_of_ref_ascribable_state(&it.related_ascribable_state)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AssemblyComponentUsage(id) => {
let it = self.model.assembly_component_usage_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.relating_product_definition
)
),
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.related_product_definition
)
),
match &it.reference_designator {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::AuxiliaryLeaderLine(id) => {
let it = self.model.auxiliary_leader_line_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.geometric_elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_des_apll_point_select(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_annotation_to_model_leader_line(&it.controlling_leader_line)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Axis1Placement(id) => {
let it = self.model.axis1_placement_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_cartesian_point(&it.location)),
match &it.axis {
Some(r) => format!("#{}", self.id_of_ref_direction(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Axis2Placement2d(id) => {
let it = self.model.axis2_placement2d_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_cartesian_point(&it.location)),
match &it.ref_direction {
Some(r) => format!("#{}", self.id_of_ref_direction(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Axis2Placement3d(id) => {
let it = self.model.axis2_placement3d_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_cartesian_point(&it.location)),
match &it.axis {
Some(r) => format!("#{}", self.id_of_ref_direction(r)),
None => "$".to_string(),
},
match &it.ref_direction {
Some(r) => format!("#{}", self.id_of_ref_direction(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BSplineCurve(id) => {
let it = self.model.b_spline_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BSplineCurveWithKnots(id) => {
let it = self.model.b_spline_curve_with_knots_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
format!(
"({})",
it.knot_multiplicities
.iter()
.map(|e| format!("{e}"))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.knots
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
it.knot_spec.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BSplineSurface(id) => {
let it = self.model.b_spline_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BSplineSurfaceWithKnots(id) => {
let it = self.model.b_spline_surface_with_knots_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
format!(
"({})",
it.u_multiplicities
.iter()
.map(|e| format!("{e}"))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.v_multiplicities
.iter()
.map(|e| format!("{e}"))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.u_knots
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.v_knots
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
it.knot_spec.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BezierCurve(id) => {
let it = self.model.bezier_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BezierSurface(id) => {
let it = self.model.bezier_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BoundedCurve(id) => {
let it = self.model.bounded_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BoundedPcurve(id) => {
let it = self.model.bounded_pcurve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_surface(&it.basis_surface)),
format!(
"#{}",
self.id_of_ref_definitional_representation(&it.reference_to_curve)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BoundedSurface(id) => {
let it = self.model.bounded_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BoundedSurfaceCurve(id) => {
let it = self.model.bounded_surface_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.curve_3d)),
format!(
"({})",
it.associated_geometry
.iter()
.map(|e| format!("#{}", self.id_of_ref_pcurve_or_surface(e)))
.collect::<Vec<_>>()
.join(",")
),
it.master_representation.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::BrepWithVoids(id) => {
let it = self.model.brep_with_voids_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_closed_shell(&it.outer)),
format!(
"({})",
it.voids
.iter()
.map(|e| format!("#{}", self.id_of_ref_oriented_closed_shell(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CalendarDate(id) => {
let it = self.model.calendar_date_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("{}", it.year_component),
format!("{}", it.day_component),
format!("{}", it.month_component),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraImage(id) => {
let it = self.model.camera_image_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_target)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraImage3dWithScale(id) => {
let it = self.model.camera_image3d_with_scale_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_target)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraModel(id) => {
let it = self.model.camera_model_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraModelD3(id) => {
let it = self.model.camera_model_d3_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_axis2_placement3d(&it.view_reference_system)
),
format!("#{}", self.id_of_ref_view_volume(&it.perspective_of_volume)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraModelD3MultiClipping(id) => {
let it = self.model.camera_model_d3_multi_clipping_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_axis2_placement3d(&it.view_reference_system)
),
format!("#{}", self.id_of_ref_view_volume(&it.perspective_of_volume)),
format!(
"({})",
it.shape_clipping
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_camera_model_d3_multi_clipping_intersection_select(
e
)
))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraModelD3WithHlhsr(id) => {
let it = self.model.camera_model_d3_with_hlhsr_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_axis2_placement3d(&it.view_reference_system)
),
format!("#{}", self.id_of_ref_view_volume(&it.perspective_of_volume)),
(if it.hidden_line_surface_removal {
".T."
} else {
".F."
})
.to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CameraUsage(id) => {
let it = self.model.camera_usage_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_origin)
),
format!(
"#{}",
self.id_of_ref_representation(&it.mapped_representation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CartesianPoint(id) => {
let it = self.model.cartesian_point_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.coordinates
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CcDesignApproval(id) => {
let it = self.model.cc_design_approval_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_approval(&it.assigned_approval)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_approved_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CcDesignDateAndTimeAssignment(id) => {
let it = self
.model
.cc_design_date_and_time_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_date_and_time(&it.assigned_date_and_time)
),
format!("#{}", self.id_of_ref_date_time_role(&it.role)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_date_time_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CcDesignPersonAndOrganizationAssignment(id) => {
let it = self
.model
.cc_design_person_and_organization_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_person_and_organization(
&it.assigned_person_and_organization
)
),
format!("#{}", self.id_of_ref_person_and_organization_role(&it.role)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_cc_person_organization_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CcDesignSecurityClassification(id) => {
let it = self.model.cc_design_security_classification_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_security_classification(
&it.assigned_security_classification
)
),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_cc_classified_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CentreOfSymmetry(id) => {
let it = self.model.centre_of_symmetry_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Certification(id) => {
let it = self.model.certification_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.purpose),
format!("#{}", self.id_of_ref_certification_type(&it.kind)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CertificationType(id) => {
let it = self.model.certification_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.description)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Change(id) => {
let it = self.model.change_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_action(&it.assigned_action)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_work_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ChangeRequest(id) => {
let it = self.model.change_request_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_versioned_action_request(&it.assigned_action_request)
),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_change_request_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CharacterGlyphStyleOutline(id) => {
let it = self.model.character_glyph_style_outline_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_curve_style(&it.outline_style)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CharacterGlyphStyleStroke(id) => {
let it = self.model.character_glyph_style_stroke_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_curve_style(&it.stroke_style))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CharacterizedItemWithinRepresentation(id) => {
let it = self
.model
.characterized_item_within_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_representation_item(&it.item)),
format!("#{}", self.id_of_ref_representation(&it.rep)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CharacterizedObject(id) => {
let it = self.model.characterized_object_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.name {
Some(x) => step_str(x),
None => "*".to_string(),
},
match &it.description {
Some(x) => step_str(x),
None => "*".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CharacterizedRepresentation(id) => {
let it = self.model.characterized_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
"*".to_string(),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
"*".to_string(),
"*".to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Circle(id) => {
let it = self.model.circle_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement(&it.position)),
real(it.radius),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CircularRunoutTolerance(id) => {
let it = self.model.circular_runout_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ClosedShell(id) => {
let it = self.model.closed_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.cfs_faces
.iter()
.map(|e| format!("#{}", self.id_of_ref_face(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CoaxialityTolerance(id) => {
let it = self.model.coaxiality_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Colour(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ColourRgb(id) => {
let it = self.model.colour_rgb_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
real(it.red),
real(it.green),
real(it.blue),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ColourSpecification(id) => {
let it = self.model.colour_specification_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CommonDatum(id) => {
let it = self.model.common_datum_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
step_str(&it.identification),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ComplexTriangulatedFace(id) => {
let it = self.model.complex_triangulated_face_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_coordinates_list(&it.coordinates)),
format!("{}", it.pnmax),
format!(
"({})",
it.normals
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
match &it.geometric_link {
Some(r) => format!("#{}", self.id_of_ref_face_or_surface(r)),
None => "$".to_string(),
},
format!(
"({})",
it.pnindex
.iter()
.map(|e| format!("{e}"))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.triangle_strips
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| format!("{e}")).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.triangle_fans
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| format!("{e}")).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ComplexTriangulatedSurfaceSet(id) => {
let it = self.model.complex_triangulated_surface_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_coordinates_list(&it.coordinates)),
format!("{}", it.pnmax),
format!(
"({})",
it.normals
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.pnindex
.iter()
.map(|e| format!("{e}"))
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.triangle_strips
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| format!("{e}")).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.triangle_fans
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| format!("{e}")).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompositeCurve(id) => {
let it = self.model.composite_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.segments
.iter()
.map(|e| format!("#{}", self.id_of_ref_composite_curve_segment(e)))
.collect::<Vec<_>>()
.join(",")
),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompositeCurveSegment(id) => {
let it = self.model.composite_curve_segment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.transition.token().to_string(),
(if it.same_sense { ".T." } else { ".F." }).to_string(),
format!("#{}", self.id_of_ref_curve(&it.parent_curve)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompositeGroupShapeAspect(id) => {
let it = self.model.composite_group_shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompositeShapeAspect(id) => {
let it = self.model.composite_shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompositeText(id) => {
let it = self.model.composite_text_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.collected_text
.iter()
.map(|e| format!("#{}", self.id_of_ref_text_or_character(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CompoundRepresentationItem(id) => {
let it = self.model.compound_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.item_element {
CompoundItemDefinitionRef::ListRepresentationItem(vs) => format!(
"LIST_REPRESENTATION_ITEM(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
CompoundItemDefinitionRef::SetRepresentationItem(vs) => format!(
"SET_REPRESENTATION_ITEM(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
other => format!("#{}", self.id_of_ref_compound_item_definition(other)),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConcentricityTolerance(id) => {
let it = self.model.concentricity_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConfigurationDesign(id) => {
let it = self.model.configuration_design_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_configuration_item(&it.configuration)),
format!("#{}", self.id_of_ref_configuration_design_item(&it.design)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConfigurationEffectivity(id) => {
let it = self.model.configuration_effectivity_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
format!(
"#{}",
self.id_of_ref_product_definition_relationship(&it.usage)
),
format!(
"#{}",
self.id_of_ref_configuration_design(&it.configuration)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConfigurationItem(id) => {
let it = self.model.configuration_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_concept(&it.item_concept)),
match &it.purpose {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Conic(id) => {
let it = self.model.conic_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement(&it.position)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConicalSurface(id) => {
let it = self.model.conical_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
real(it.radius),
real(it.semi_angle),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConnectedFaceSet(id) => {
let it = self.model.connected_face_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.cfs_faces {
Some(v) => format!(
"({})",
v.iter()
.map(|e| format!("#{}", self.id_of_ref_face(e)))
.collect::<Vec<_>>()
.join(",")
),
None => "*".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConstructiveGeometryRepresentation(id) => {
let it = self
.model
.constructive_geometry_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConstructiveGeometryRepresentationRelationship(id) => {
let it = self
.model
.constructive_geometry_representation_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), match &it.description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_constructive_geometry_representation_or_shape_representation(&it.rep_1)), format!("#{}", self.id_of_ref_representation_or_representation_reference(&it.rep_2))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ContextDependentOverRidingStyledItem(id) => {
let it = self
.model
.context_dependent_over_riding_styled_item_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
format!("#{}", self.id_of_ref_styled_item(&it.over_ridden_style)),
format!(
"({})",
it.style_context
.iter()
.map(|e| format!("#{}", self.id_of_ref_style_context_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ContextDependentShapeRepresentation(id) => {
let it = self
.model
.context_dependent_shape_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_shape_representation_relationship(
&it.representation_relation
)
),
format!(
"#{}",
self.id_of_ref_product_definition_shape(&it.represented_product_relation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ContextDependentUnit(id) => {
let it = self.model.context_dependent_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_dimensional_exponents(&it.dimensions)),
step_str(&it.name),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ContinuousShapeAspect(id) => {
let it = self.model.continuous_shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Contract(id) => {
let it = self.model.contract_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.purpose),
format!("#{}", self.id_of_ref_contract_type(&it.kind)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ContractType(id) => {
let it = self.model.contract_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.description)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ConversionBasedUnit(id) => {
let it = self.model.conversion_based_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_dimensional_exponents(&it.dimensions)),
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_measure_with_unit(&it.conversion_factor)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CoordinatedUniversalTimeOffset(id) => {
let it = self.model.coordinated_universal_time_offset_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("{}", it.hour_offset),
match &it.minute_offset {
Some(x) => format!("{}", x),
None => "$".to_string(),
},
it.sense.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CoordinatesList(id) => {
let it = self.model.coordinates_list_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.npoints),
format!(
"({})",
it.position_coords
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Curve(id) => {
let it = self.model.curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CurveStyle(id) => {
let it = self.model.curve_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.curve_font {
Some(r) => format!(
"#{}",
self.id_of_ref_curve_font_or_scaled_curve_font_select(r)
),
None => "$".to_string(),
},
match &it.curve_width {
Some(r) => match r {
SizeSelectRef::DescriptiveMeasure(x) => {
format!("DESCRIPTIVE_MEASURE({})", step_str(x))
}
SizeSelectRef::PositiveLengthMeasure(x) => {
format!("POSITIVE_LENGTH_MEASURE({})", real(*x))
}
other => format!("#{}", self.id_of_ref_size_select(other)),
},
None => "$".to_string(),
},
match &it.curve_colour {
Some(r) => format!("#{}", self.id_of_ref_colour(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CurveStyleFont(id) => {
let it = self.model.curve_style_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.pattern_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_curve_style_font_pattern(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CurveStyleFontAndScaling(id) => {
let it = self.model.curve_style_font_and_scaling_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_curve_style_font_select(&it.curve_font)
),
real(it.curve_font_scaling),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CurveStyleFontPattern(id) => {
let it = self.model.curve_style_font_pattern_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
real(it.visible_segment_length),
real(it.invisible_segment_length),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CurveStyleRendering(id) => {
let it = self.model.curve_style_rendering_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.rendering_method.token().to_string(),
format!(
"#{}",
self.id_of_ref_surface_rendering_properties(&it.rendering_properties)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CylindricalSurface(id) => {
let it = self.model.cylindrical_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
real(it.radius),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::CylindricityTolerance(id) => {
let it = self.model.cylindricity_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Date(id) => {
let it = self.model.date_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!("{}", it.year_component)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DateAndTime(id) => {
let it = self.model.date_and_time_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_date(&it.date_component)),
format!("#{}", self.id_of_ref_local_time(&it.time_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DateAndTimeAssignment(id) => {
let it = self.model.date_and_time_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_date_and_time(&it.assigned_date_and_time)
),
format!("#{}", self.id_of_ref_date_time_role(&it.role)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DateRole(id) => {
let it = self.model.date_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DateTimeRole(id) => {
let it = self.model.date_time_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Datum(id) => {
let it = self.model.datum_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
step_str(&it.identification),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumFeature(id) => {
let it = self.model.datum_feature_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumReference(id) => {
let it = self.model.datum_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("{}", it.precedence),
format!("#{}", self.id_of_ref_datum(&it.referenced_datum)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumReferenceCompartment(id) => {
let it = self.model.datum_reference_compartment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
match &it.base {
DatumOrCommonDatumRef::CommonDatumList(vs) => format!(
"COMMON_DATUM_LIST(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_reference_element(e)))
.collect::<Vec<_>>()
.join(",")
),
other => format!("#{}", self.id_of_ref_datum_or_common_datum(other)),
},
match &it.modifiers {
Some(v) => format!(
"({})",
v.iter()
.map(|e| match e {
DatumReferenceModifierRef::SimpleDatumReferenceModifier(e) =>
format!("SIMPLE_DATUM_REFERENCE_MODIFIER({})", e.token()),
other => format!(
"#{}",
self.id_of_ref_datum_reference_modifier(other)
),
})
.collect::<Vec<_>>()
.join(",")
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumReferenceElement(id) => {
let it = self.model.datum_reference_element_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
match &it.base {
DatumOrCommonDatumRef::CommonDatumList(vs) => format!(
"COMMON_DATUM_LIST(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_reference_element(e)))
.collect::<Vec<_>>()
.join(",")
),
other => format!("#{}", self.id_of_ref_datum_or_common_datum(other)),
},
match &it.modifiers {
Some(v) => format!(
"({})",
v.iter()
.map(|e| match e {
DatumReferenceModifierRef::SimpleDatumReferenceModifier(e) =>
format!("SIMPLE_DATUM_REFERENCE_MODIFIER({})", e.token()),
other => format!(
"#{}",
self.id_of_ref_datum_reference_modifier(other)
),
})
.collect::<Vec<_>>()
.join(",")
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumReferenceModifierWithValue(id) => {
let it = self
.model
.datum_reference_modifier_with_value_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.modifier_type.token().to_string(),
format!(
"#{}",
self.id_of_ref_length_measure_with_unit(&it.modifier_value)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumSystem(id) => {
let it = self.model.datum_system_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
format!(
"({})",
it.constituents
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_reference_compartment(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DatumTarget(id) => {
let it = self.model.datum_target_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
step_str(&it.target_id),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefaultModelGeometricView(id) => {
let it = self.model.default_model_geometric_view_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_representation_item(&it.item)),
format!("#{}", self.id_of_ref_representation(&it.rep)),
step_str(&it.name_1),
match &it.description_1 {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
"*".to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefinedCharacterGlyph(id) => {
let it = self.model.defined_character_glyph_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_defined_glyph_select(&it.definition)),
format!("#{}", self.id_of_ref_axis2_placement(&it.placement)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefinedSymbol(id) => {
let it = self.model.defined_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_defined_symbol_select(&it.definition)),
format!("#{}", self.id_of_ref_symbol_target(&it.target)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefinitionalRepresentation(id) => {
let it = self.model.definitional_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefinitionalRepresentationRelationship(id) => {
let it = self
.model
.definitional_representation_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_1)
),
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_2)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(id) => {
let it = self
.model
.definitional_representation_relationship_with_same_context_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_1)
),
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_2)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DegenerateToroidalSurface(id) => {
let it = self.model.degenerate_toroidal_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
real(it.major_radius),
real(it.minor_radius),
(if it.select_outer { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DerivedShapeAspect(id) => {
let it = self.model.derived_shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DerivedUnit(id) => {
let it = self.model.derived_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_derived_unit_element(e)))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DerivedUnitElement(id) => {
let it = self.model.derived_unit_element_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_named_unit(&it.unit)),
real(it.exponent),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DescriptionAttribute(id) => {
let it = self.model.description_attribute_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.attribute_value),
format!(
"#{}",
self.id_of_ref_description_attribute_select(&it.described_item)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DescriptiveRepresentationItem(id) => {
let it = self.model.descriptive_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), step_str(&it.description)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DesignContext(id) => {
let it = self.model.design_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
step_str(&it.life_cycle_stage),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalCharacteristicRepresentation(id) => {
let it = self
.model
.dimensional_characteristic_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_dimensional_characteristic(&it.dimension)
),
format!(
"#{}",
self.id_of_ref_shape_dimension_representation(&it.representation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalExponents(id) => {
let it = self.model.dimensional_exponents_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
real(it.length_exponent),
real(it.mass_exponent),
real(it.time_exponent),
real(it.electric_current_exponent),
real(it.thermodynamic_temperature_exponent),
real(it.amount_of_substance_exponent),
real(it.luminous_intensity_exponent),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalLocation(id) => {
let it = self.model.dimensional_location_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalLocationWithPath(id) => {
let it = self.model.dimensional_location_with_path_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
format!("#{}", self.id_of_ref_shape_aspect(&it.path)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalSize(id) => {
let it = self.model.dimensional_size_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_shape_aspect(&it.applies_to)),
step_str(&it.name),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalSizeWithDatumFeature(id) => {
let it = self
.model
.dimensional_size_with_datum_feature_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
format!("#{}", self.id_of_ref_shape_aspect(&it.applies_to)),
step_str(&it.name_1),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DimensionalSizeWithPath(id) => {
let it = self.model.dimensional_size_with_path_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_shape_aspect(&it.applies_to)),
step_str(&it.name),
format!("#{}", self.id_of_ref_shape_aspect(&it.path)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DirectedDimensionalLocation(id) => {
let it = self.model.directed_dimensional_location_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Direction(id) => {
let it = self.model.direction_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.direction_ratios
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Document(id) => {
let it = self.model.document_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_document_type(&it.kind)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentFile(id) => {
let it = self.model.document_file_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_document_type(&it.kind)),
step_str(&it.name_1),
match &it.description_1 {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentProductAssociation(id) => {
let it = self.model.document_product_association_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_document(&it.relating_document)),
format!(
"#{}",
self.id_of_ref_product_or_formation_or_definition(&it.related_product)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentProductEquivalence(id) => {
let it = self.model.document_product_equivalence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_document(&it.relating_document)),
format!(
"#{}",
self.id_of_ref_product_or_formation_or_definition(&it.related_product)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentReference(id) => {
let it = self.model.document_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_document(&it.assigned_document)),
step_str(&it.source),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentRepresentationType(id) => {
let it = self.model.document_representation_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_document(&it.represented_document)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DocumentType(id) => {
let it = self.model.document_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.product_data_type)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingAnnotationOccurrence(id) => {
let it = self.model.draughting_annotation_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingCallout(id) => {
let it = self.model.draughting_callout_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.contents
.iter()
.map(|e| format!("#{}", self.id_of_ref_draughting_callout_element(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingCalloutRelationship(id) => {
let it = self.model.draughting_callout_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_draughting_callout(&it.relating_draughting_callout)
),
format!(
"#{}",
self.id_of_ref_draughting_callout(&it.related_draughting_callout)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingModel(id) => {
let it = self.model.draughting_model_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingModelItemAssociation(id) => {
let it = self.model.draughting_model_item_association_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_draughting_model_item_definition(&it.definition)
),
format!(
"#{}",
self.id_of_ref_annotation_representation_select(&it.used_representation)
),
format!(
"#{}",
self.id_of_ref_draughting_model_item_association_select(
&it.identified_item
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingModelItemAssociationWithPlaceholder(id) => {
let it = self
.model
.draughting_model_item_association_with_placeholder_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_draughting_model_item_definition(&it.definition)
),
format!(
"#{}",
self.id_of_ref_annotation_representation_select(&it.used_representation)
),
format!(
"#{}",
self.id_of_ref_draughting_model_item_association_select(
&it.identified_item
)
),
format!(
"#{}",
self.id_of_ref_annotation_placeholder_occurrence(
&it.annotation_placeholder
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingPreDefinedColour(id) => {
let it = self.model.draughting_pre_defined_colour_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingPreDefinedCurveFont(id) => {
let it = self.model.draughting_pre_defined_curve_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::DraughtingPreDefinedTextFont(id) => {
let it = self.model.draughting_pre_defined_text_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Edge(id) => {
let it = self.model.edge_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.edge_start {
Some(r) => format!("#{}", self.id_of_ref_vertex(r)),
None => "*".to_string(),
},
match &it.edge_end {
Some(r) => format!("#{}", self.id_of_ref_vertex(r)),
None => "*".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::EdgeCurve(id) => {
let it = self.model.edge_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_vertex(&it.edge_start)),
format!("#{}", self.id_of_ref_vertex(&it.edge_end)),
format!("#{}", self.id_of_ref_curve(&it.edge_geometry)),
(if it.same_sense { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::EdgeLoop(id) => {
let it = self.model.edge_loop_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.edge_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_oriented_edge(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Effectivity(id) => {
let it = self.model.effectivity_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.id)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ElementarySurface(id) => {
let it = self.model.elementary_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Ellipse(id) => {
let it = self.model.ellipse_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement(&it.position)),
real(it.semi_axis_1),
real(it.semi_axis_2),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Expression(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternalIdentificationAssignment(id) => {
let it = self
.model
.external_identification_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.assigned_id),
format!("#{}", self.id_of_ref_identification_role(&it.role)),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternalSource(id) => {
let it = self.model.external_source_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![string_select(&it.source_id)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedCharacterGlyph(id) => {
let it = self
.model
.externally_defined_character_glyph_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedCurveFont(id) => {
let it = self.model.externally_defined_curve_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedHatchStyle(id) => {
let it = self.model.externally_defined_hatch_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
step_str(&it.name),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedItem(id) => {
let it = self.model.externally_defined_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedStyle(id) => {
let it = self.model.externally_defined_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedSymbol(id) => {
let it = self.model.externally_defined_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedTextFont(id) => {
let it = self.model.externally_defined_text_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedTile(id) => {
let it = self.model.externally_defined_tile_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ExternallyDefinedTileStyle(id) => {
let it = self.model.externally_defined_tile_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
string_select(&it.item_id),
format!("#{}", self.id_of_ref_external_source(&it.source)),
step_str(&it.name),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Face(id) => {
let it = self.model.face_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.bounds
.iter()
.map(|e| format!("#{}", self.id_of_ref_face_bound(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FaceBound(id) => {
let it = self.model.face_bound_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_loop(&it.bound)),
(if it.orientation { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FaceOuterBound(id) => {
let it = self.model.face_outer_bound_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_loop(&it.bound)),
(if it.orientation { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FaceSurface(id) => {
let it = self.model.face_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.bounds
.iter()
.map(|e| format!("#{}", self.id_of_ref_face_bound(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_surface(&it.face_geometry)),
(if it.same_sense { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FeatureForDatumTargetRelationship(id) => {
let it = self
.model
.feature_for_datum_target_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyle(id) => {
let it = self.model.fill_area_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.fill_styles
.iter()
.map(|e| format!("#{}", self.id_of_ref_fill_style_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleColour(id) => {
let it = self.model.fill_area_style_colour_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_colour(&it.fill_colour)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleHatching(id) => {
let it = self.model.fill_area_style_hatching_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve_style(&it.hatch_line_appearance)),
format!(
"#{}",
self.id_of_ref_one_direction_repeat_factor(&it.start_of_next_hatch_line)
),
format!(
"#{}",
self.id_of_ref_cartesian_point(&it.point_of_reference_hatch_line)
),
format!("#{}", self.id_of_ref_cartesian_point(&it.pattern_start)),
real(it.hatch_line_angle),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleTileColouredRegion(id) => {
let it = self
.model
.fill_area_style_tile_coloured_region_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_curve_or_annotation_curve_occurrence(&it.closed_curve)
),
format!("#{}", self.id_of_ref_colour(&it.region_colour)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleTileCurveWithStyle(id) => {
let it = self
.model
.fill_area_style_tile_curve_with_style_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_annotation_curve_occurrence(&it.styled_curve)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleTileSymbolWithStyle(id) => {
let it = self
.model
.fill_area_style_tile_symbol_with_style_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_annotation_symbol_occurrence(&it.symbol)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FillAreaStyleTiles(id) => {
let it = self.model.fill_area_style_tiles_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_two_direction_repeat_factor(&it.tiling_pattern)
),
format!(
"({})",
it.tiles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_fill_area_style_tile_shape_select(e)
))
.collect::<Vec<_>>()
.join(",")
),
real(it.tiling_scale),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FlatnessTolerance(id) => {
let it = self.model.flatness_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FoundedItem(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::FunctionallyDefinedTransformation(id) => {
let it = self
.model
.functionally_defined_transformation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeneralDatumReference(id) => {
let it = self.model.general_datum_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
match &it.base {
DatumOrCommonDatumRef::CommonDatumList(vs) => format!(
"COMMON_DATUM_LIST(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_reference_element(e)))
.collect::<Vec<_>>()
.join(",")
),
other => format!("#{}", self.id_of_ref_datum_or_common_datum(other)),
},
match &it.modifiers {
Some(v) => format!(
"({})",
v.iter()
.map(|e| match e {
DatumReferenceModifierRef::SimpleDatumReferenceModifier(e) =>
format!("SIMPLE_DATUM_REFERENCE_MODIFIER({})", e.token()),
other => format!(
"#{}",
self.id_of_ref_datum_reference_modifier(other)
),
})
.collect::<Vec<_>>()
.join(",")
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeneralProperty(id) => {
let it = self.model.general_property_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeneralPropertyAssociation(id) => {
let it = self.model.general_property_association_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_general_property(&it.base_definition)),
format!(
"#{}",
self.id_of_ref_derived_property_select(&it.derived_definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GenericExpression(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GenericLiteral(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GenericProductDefinitionReference(id) => {
let it = self
.model
.generic_product_definition_reference_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_external_source(&it.source))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricCurveSet(id) => {
let it = self.model.geometric_curve_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_geometric_set_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricItemSpecificUsage(id) => {
let it = self.model.geometric_item_specific_usage_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_item_specific_usage_select(&it.definition)
),
format!("#{}", self.id_of_ref_shape_model(&it.used_representation)),
format!(
"#{}",
self.id_of_ref_geometric_model_item(&it.identified_item)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricRepresentationContext(id) => {
let it = self.model.geometric_representation_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.context_identifier),
step_str(&it.context_type),
format!("{}", it.coordinate_space_dimension),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricRepresentationItem(id) => {
let it = self.model.geometric_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricSet(id) => {
let it = self.model.geometric_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_geometric_set_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricTolerance(id) => {
let it = self.model.geometric_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceRelationship(id) => {
let it = self.model.geometric_tolerance_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_geometric_tolerance(&it.relating_geometric_tolerance)
),
format!(
"#{}",
self.id_of_ref_geometric_tolerance(&it.related_geometric_tolerance)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceWithDatumReference(id) => {
let it = self
.model
.geometric_tolerance_with_datum_reference_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceWithDefinedAreaUnit(id) => {
let it = self
.model
.geometric_tolerance_with_defined_area_unit_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"#{}",
self.id_of_ref_length_or_plane_angle_measure_with_unit_select(
&it.unit_size
)
),
it.area_type.token().to_string(),
match &it.second_unit_size {
Some(r) => format!(
"#{}",
self.id_of_ref_length_or_plane_angle_measure_with_unit_select(r)
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceWithDefinedUnit(id) => {
let it = self
.model
.geometric_tolerance_with_defined_unit_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"#{}",
self.id_of_ref_length_or_plane_angle_measure_with_unit_select(
&it.unit_size
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceWithMaximumTolerance(id) => {
let it = self
.model
.geometric_tolerance_with_maximum_tolerance_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.modifiers
.iter()
.map(|e| e.token().to_string())
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_length_measure_with_unit(&it.maximum_upper_tolerance)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricToleranceWithModifiers(id) => {
let it = self
.model
.geometric_tolerance_with_modifiers_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.modifiers
.iter()
.map(|e| e.token().to_string())
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(id) => {
let it = self
.model
.geometrically_bounded_surface_shape_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(id) => {
let it = self
.model
.geometrically_bounded_wireframe_shape_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GlobalUncertaintyAssignedContext(id) => {
let it = self
.model
.global_uncertainty_assigned_context_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.context_identifier),
step_str(&it.context_type),
format!(
"({})",
it.uncertainty
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_uncertainty_measure_with_unit(e)
))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GlobalUnitAssignedContext(id) => {
let it = self.model.global_unit_assigned_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.context_identifier),
step_str(&it.context_type),
format!(
"({})",
it.units
.iter()
.map(|e| format!("#{}", self.id_of_ref_unit(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Group(id) => {
let it = self.model.group_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::GroupAssignment(id) => {
let it = self.model.group_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_group(&it.assigned_group))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Hyperbola(id) => {
let it = self.model.hyperbola_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement(&it.position)),
real(it.semi_axis),
real(it.semi_imag_axis),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IdAttribute(id) => {
let it = self.model.id_attribute_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.attribute_value),
format!(
"#{}",
self.id_of_ref_id_attribute_select(&it.identified_item)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IdentificationAssignment(id) => {
let it = self.model.identification_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.assigned_id),
format!("#{}", self.id_of_ref_identification_role(&it.role)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IdentificationRole(id) => {
let it = self.model.identification_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IntLiteral(id) => {
let it = self.model.int_literal_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!("{}", it.the_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IntegerRepresentationItem(id) => {
let it = self.model.integer_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), format!("{}", it.the_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::IntersectionCurve(id) => {
let it = self.model.intersection_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.curve_3d)),
format!(
"({})",
it.associated_geometry
.iter()
.map(|e| format!("#{}", self.id_of_ref_pcurve_or_surface(e)))
.collect::<Vec<_>>()
.join(",")
),
it.master_representation.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Invisibility(id) => {
let it = self.model.invisibility_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.invisible_items
.iter()
.map(|e| format!("#{}", self.id_of_ref_invisible_item(e)))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ItemDefinedTransformation(id) => {
let it = self.model.item_defined_transformation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_item(&it.transform_item_1)
),
format!(
"#{}",
self.id_of_ref_representation_item(&it.transform_item_2)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ItemIdentifiedRepresentationUsage(id) => {
let it = self
.model
.item_identified_representation_usage_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_item_identified_representation_usage_definition(
&it.definition
)
),
format!(
"#{}",
self.id_of_ref_representation(&it.used_representation)
),
match &it.identified_item {
ItemIdentifiedRepresentationUsageSelectRef::ListRepresentationItem(vs) => {
format!(
"LIST_REPRESENTATION_ITEM(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
)
}
ItemIdentifiedRepresentationUsageSelectRef::SetRepresentationItem(vs) => {
format!(
"SET_REPRESENTATION_ITEM(({}))",
vs.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
)
}
other => format!(
"#{}",
self.id_of_ref_item_identified_representation_usage_select(other)
),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LeaderCurve(id) => {
let it = self.model.leader_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_curve_or_curve_set(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LeaderDirectedCallout(id) => {
let it = self.model.leader_directed_callout_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.contents
.iter()
.map(|e| format!("#{}", self.id_of_ref_draughting_callout_element(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LeaderTerminator(id) => {
let it = self.model.leader_terminator_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_annotation_symbol_occurrence_item(&it.item)
),
format!(
"#{}",
self.id_of_ref_annotation_curve_occurrence(&it.annotated_curve)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LengthMeasureWithUnit(id) => {
let it = self.model.length_measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LengthUnit(id) => {
let it = self.model.length_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LimitsAndFits(id) => {
let it = self.model.limits_and_fits_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.form_variance),
step_str(&it.zone_variance),
step_str(&it.grade),
step_str(&it.source),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Line(id) => {
let it = self.model.line_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_cartesian_point(&it.pnt)),
format!("#{}", self.id_of_ref_vector(&it.dir)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LineProfileTolerance(id) => {
let it = self.model.line_profile_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LiteralNumber(id) => {
let it = self.model.literal_number_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![real(it.the_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::LocalTime(id) => {
let it = self.model.local_time_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("{}", it.hour_component),
match &it.minute_component {
Some(x) => format!("{}", x),
None => "$".to_string(),
},
match &it.second_component {
Some(x) => real(*x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_coordinated_universal_time_offset(&it.zone)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Loop(id) => {
let it = self.model.loop_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MakeFromUsageOption(id) => {
let it = self.model.make_from_usage_option_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.relating_product_definition
)
),
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.related_product_definition
)
),
format!("{}", it.ranking),
step_str(&it.ranking_rationale),
format!("#{}", self.id_of_ref_measure_with_unit(&it.quantity)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ManifoldSolidBrep(id) => {
let it = self.model.manifold_solid_brep_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_closed_shell(&it.outer)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ManifoldSurfaceShapeRepresentation(id) => {
let it = self
.model
.manifold_surface_shape_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MappedItem(id) => {
let it = self.model.mapped_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_representation_map(&it.mapping_source)),
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_target)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MassMeasureWithUnit(id) => {
let it = self.model.mass_measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MassUnit(id) => {
let it = self.model.mass_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MeasureQualification(id) => {
let it = self.model.measure_qualification_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_measure_with_unit(&it.qualified_measure)
),
format!(
"({})",
it.qualifiers
.iter()
.map(|e| format!("#{}", self.id_of_ref_value_qualifier(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MeasureRepresentationItem(id) => {
let it = self.model.measure_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MeasureWithUnit(id) => {
let it = self.model.measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MechanicalContext(id) => {
let it = self.model.mechanical_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
step_str(&it.discipline_type),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MechanicalDesignAndDraughtingRelationship(id) => {
let it = self
.model
.mechanical_design_and_draughting_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_mechanical_design_and_draughting_relationship_select(
&it.rep_1
)
),
format!(
"#{}",
self.id_of_ref_mechanical_design_and_draughting_relationship_select(
&it.rep_2
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MechanicalDesignGeometricPresentationRepresentation(id) => {
let it = self
.model
.mechanical_design_geometric_presentation_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(id) => {
let it = self
.model
.mechanical_design_presentation_representation_with_draughting_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::MechanicalDesignShadedPresentationRepresentation(id) => {
let it = self
.model
.mechanical_design_shaded_presentation_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ModelGeometricView(id) => {
let it = self.model.model_geometric_view_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_representation_item(&it.item)),
format!("#{}", self.id_of_ref_representation(&it.rep)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ModifiedGeometricTolerance(id) => {
let it = self.model.modified_geometric_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
it.modifier.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::NameAttribute(id) => {
let it = self.model.name_attribute_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.attribute_value),
format!("#{}", self.id_of_ref_name_attribute_select(&it.named_item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::NamedUnit(id) => {
let it = self.model.named_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![match &it.dimensions {
Some(r) => format!("#{}", self.id_of_ref_dimensional_exponents(r)),
None => "*".to_string(),
}];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::NextAssemblyUsageOccurrence(id) => {
let it = self.model.next_assembly_usage_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.relating_product_definition
)
),
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.related_product_definition
)
),
match &it.reference_designator {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::NumericExpression(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ObjectRole(id) => {
let it = self.model.object_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OffsetSurface(id) => {
let it = self.model.offset_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_surface(&it.basis_surface)),
real(it.distance),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OneDirectionRepeatFactor(id) => {
let it = self.model.one_direction_repeat_factor_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_vector(&it.repeat_factor)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OpenShell(id) => {
let it = self.model.open_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.cfs_faces
.iter()
.map(|e| format!("#{}", self.id_of_ref_face(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Organization(id) => {
let it = self.model.organization_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.id {
Some(x) => step_str(x),
None => "$".to_string(),
},
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationRelationship(id) => {
let it = self.model.organization_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_organization(&it.relating_organization)
),
format!("#{}", self.id_of_ref_organization(&it.related_organization)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationRole(id) => {
let it = self.model.organization_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationType(id) => {
let it = self.model.organization_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationTypeRole(id) => {
let it = self.model.organization_type_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationalAddress(id) => {
let it = self.model.organizational_address_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.internal_location {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_box {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.town {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.region {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_code {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.country {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.facsimile_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telephone_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.electronic_mail_address {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telex_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.organizations
.iter()
.map(|e| format!("#{}", self.id_of_ref_organization(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationalProject(id) => {
let it = self.model.organizational_project_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.responsible_organizations
.iter()
.map(|e| format!("#{}", self.id_of_ref_organization(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationalProjectRelationship(id) => {
let it = self
.model
.organizational_project_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_organizational_project(&it.relating_organizational_project)
),
format!(
"#{}",
self.id_of_ref_organizational_project(&it.related_organizational_project)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrganizationalProjectRole(id) => {
let it = self.model.organizational_project_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrientedClosedShell(id) => {
let it = self.model.oriented_closed_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
"*".to_string(),
format!("#{}", self.id_of_ref_closed_shell(&it.closed_shell_element)),
(if it.orientation { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OrientedEdge(id) => {
let it = self.model.oriented_edge_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
"*".to_string(),
"*".to_string(),
format!("#{}", self.id_of_ref_edge(&it.edge_element)),
(if it.orientation { ".T." } else { ".F." }).to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::OverRidingStyledItem(id) => {
let it = self.model.over_riding_styled_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
format!("#{}", self.id_of_ref_styled_item(&it.over_ridden_style)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ParallelismTolerance(id) => {
let it = self.model.parallelism_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ParametricRepresentationContext(id) => {
let it = self.model.parametric_representation_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![step_str(&it.context_identifier), step_str(&it.context_type)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Path(id) => {
let it = self.model.path_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.edge_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_oriented_edge(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Pcurve(id) => {
let it = self.model.pcurve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_surface(&it.basis_surface)),
format!(
"#{}",
self.id_of_ref_definitional_representation(&it.reference_to_curve)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PerpendicularityTolerance(id) => {
let it = self.model.perpendicularity_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Person(id) => {
let it = self.model.person_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.last_name {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.first_name {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.middle_names {
Some(v) => format!(
"({})",
v.iter().map(|e| step_str(e)).collect::<Vec<_>>().join(",")
),
None => "$".to_string(),
},
match &it.prefix_titles {
Some(v) => format!(
"({})",
v.iter().map(|e| step_str(e)).collect::<Vec<_>>().join(",")
),
None => "$".to_string(),
},
match &it.suffix_titles {
Some(v) => format!(
"({})",
v.iter().map(|e| step_str(e)).collect::<Vec<_>>().join(",")
),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PersonAndOrganization(id) => {
let it = self.model.person_and_organization_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_person(&it.the_person)),
format!("#{}", self.id_of_ref_organization(&it.the_organization)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PersonAndOrganizationAddress(id) => {
let it = self.model.person_and_organization_address_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.internal_location {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_box {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.town {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.region {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_code {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.country {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.facsimile_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telephone_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.electronic_mail_address {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telex_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.organizations
.iter()
.map(|e| format!("#{}", self.id_of_ref_organization(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.people
.iter()
.map(|e| format!("#{}", self.id_of_ref_person(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.description_1 {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PersonAndOrganizationAssignment(id) => {
let it = self
.model
.person_and_organization_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_person_and_organization(
&it.assigned_person_and_organization
)
),
format!("#{}", self.id_of_ref_person_and_organization_role(&it.role)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PersonAndOrganizationRole(id) => {
let it = self.model.person_and_organization_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PersonalAddress(id) => {
let it = self.model.personal_address_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.internal_location {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.street {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_box {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.town {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.region {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.postal_code {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.country {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.facsimile_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telephone_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.electronic_mail_address {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.telex_number {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.people
.iter()
.map(|e| format!("#{}", self.id_of_ref_person(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlacedDatumTargetFeature(id) => {
let it = self.model.placed_datum_target_feature_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
step_str(&it.target_id),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Placement(id) => {
let it = self.model.placement_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_cartesian_point(&it.location)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlanarBox(id) => {
let it = self.model.planar_box_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
real(it.size_in_x),
real(it.size_in_y),
format!("#{}", self.id_of_ref_axis2_placement(&it.placement)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlanarExtent(id) => {
let it = self.model.planar_extent_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![step_str(&it.name), real(it.size_in_x), real(it.size_in_y)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Plane(id) => {
let it = self.model.plane_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlaneAngleMeasureWithUnit(id) => {
let it = self.model.plane_angle_measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlaneAngleUnit(id) => {
let it = self.model.plane_angle_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PlusMinusTolerance(id) => {
let it = self.model.plus_minus_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_tolerance_method_definition(&it.range)),
format!(
"#{}",
self.id_of_ref_dimensional_characteristic(&it.toleranced_dimension)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Point(id) => {
let it = self.model.point_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PointStyle(id) => {
let it = self.model.point_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.marker {
Some(r) => match r {
MarkerSelectRef::MarkerType(e) => format!("MARKER_TYPE({})", e.token()),
other => format!("#{}", self.id_of_ref_marker_select(other)),
},
None => "$".to_string(),
},
match &it.marker_size {
Some(r) => match r {
SizeSelectRef::DescriptiveMeasure(x) => {
format!("DESCRIPTIVE_MEASURE({})", step_str(x))
}
SizeSelectRef::PositiveLengthMeasure(x) => {
format!("POSITIVE_LENGTH_MEASURE({})", real(*x))
}
other => format!("#{}", self.id_of_ref_size_select(other)),
},
None => "$".to_string(),
},
match &it.marker_colour {
Some(r) => format!("#{}", self.id_of_ref_colour(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PolyLoop(id) => {
let it = self.model.poly_loop_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.polygon
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Polyline(id) => {
let it = self.model.polyline_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.points
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PositionTolerance(id) => {
let it = self.model.position_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedCharacterGlyph(id) => {
let it = self.model.pre_defined_character_glyph_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedColour(id) => {
let it = self.model.pre_defined_colour_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedCurveFont(id) => {
let it = self.model.pre_defined_curve_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedItem(id) => {
let it = self.model.pre_defined_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedMarker(id) => {
let it = self.model.pre_defined_marker_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedPointMarkerSymbol(id) => {
let it = self.model.pre_defined_point_marker_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedPresentationStyle(id) => {
let it = self.model.pre_defined_presentation_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedSurfaceSideStyle(id) => {
let it = self.model.pre_defined_surface_side_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedSymbol(id) => {
let it = self.model.pre_defined_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedTerminatorSymbol(id) => {
let it = self.model.pre_defined_terminator_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedTextFont(id) => {
let it = self.model.pre_defined_text_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PreDefinedTile(id) => {
let it = self.model.pre_defined_tile_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PrecisionQualifier(id) => {
let it = self.model.precision_qualifier_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!("{}", it.precision_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationArea(id) => {
let it = self.model.presentation_area_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationLayerAssignment(id) => {
let it = self.model.presentation_layer_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"({})",
it.assigned_items
.iter()
.map(|e| format!("#{}", self.id_of_ref_layered_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationRepresentation(id) => {
let it = self.model.presentation_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationSet(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationSize(id) => {
let it = self.model.presentation_size_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_presentation_size_assignment_select(&it.unit)
),
format!("#{}", self.id_of_ref_planar_box(&it.size)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationStyleAssignment(id) => {
let it = self.model.presentation_style_assignment_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.styles
.iter()
.map(|e| match e {
PresentationStyleSelectRef::NullStyle(e) =>
format!("NULL_STYLE({})", e.token()),
other =>
format!("#{}", self.id_of_ref_presentation_style_select(other)),
})
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationStyleByContext(id) => {
let it = self.model.presentation_style_by_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"({})",
it.styles
.iter()
.map(|e| match e {
PresentationStyleSelectRef::NullStyle(e) =>
format!("NULL_STYLE({})", e.token()),
other =>
format!("#{}", self.id_of_ref_presentation_style_select(other)),
})
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_style_context_select(&it.style_context)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentationView(id) => {
let it = self.model.presentation_view_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentedItem(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PresentedItemRepresentation(id) => {
let it = self.model.presented_item_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_presentation_representation_select(&it.presentation)
),
format!("#{}", self.id_of_ref_presented_item(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Product(id) => {
let it = self.model.product_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.frame_of_reference
.iter()
.map(|e| format!("#{}", self.id_of_ref_product_context(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductCategory(id) => {
let it = self.model.product_category_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductCategoryRelationship(id) => {
let it = self.model.product_category_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_category(&it.category)),
format!("#{}", self.id_of_ref_product_category(&it.sub_category)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductConcept(id) => {
let it = self.model.product_concept_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_concept_context(&it.market_context)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductConceptContext(id) => {
let it = self.model.product_concept_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
step_str(&it.market_segment_type),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductConceptFeature(id) => {
let it = self.model.product_concept_feature_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductConceptFeatureCategory(id) => {
let it = self.model.product_concept_feature_category_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductContext(id) => {
let it = self.model.product_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
step_str(&it.discipline_type),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinition(id) => {
let it = self.model.product_definition_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_formation(&it.formation)
),
format!(
"#{}",
self.id_of_ref_product_definition_context(&it.frame_of_reference)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionContext(id) => {
let it = self.model.product_definition_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_application_context(&it.frame_of_reference)
),
step_str(&it.life_cycle_stage),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionContextAssociation(id) => {
let it = self
.model
.product_definition_context_association_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_product_definition(&it.definition)),
format!(
"#{}",
self.id_of_ref_product_definition_context(&it.frame_of_reference)
),
format!(
"#{}",
self.id_of_ref_product_definition_context_role(&it.role)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionContextRole(id) => {
let it = self.model.product_definition_context_role_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionEffectivity(id) => {
let it = self.model.product_definition_effectivity_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
format!(
"#{}",
self.id_of_ref_product_definition_relationship(&it.usage)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionFormation(id) => {
let it = self.model.product_definition_formation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product(&it.of_product)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionFormationWithSpecifiedSource(id) => {
let it = self
.model
.product_definition_formation_with_specified_source_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product(&it.of_product)),
it.make_or_buy.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionOccurrence(id) => {
let it = self.model.product_definition_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.name {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.definition {
Some(r) => {
format!("#{}", self.id_of_ref_product_definition_or_reference(r))
}
None => "$".to_string(),
},
match &it.quantity {
Some(r) => format!("#{}", self.id_of_ref_measure_with_unit(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionRelationship(id) => {
let it = self.model.product_definition_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.relating_product_definition
)
),
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.related_product_definition
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionRelationshipRelationship(id) => {
let it = self
.model
.product_definition_relationship_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_relationship(&it.relating)
),
format!(
"#{}",
self.id_of_ref_product_definition_relationship(&it.related)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionShape(id) => {
let it = self.model.product_definition_shape_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_characterized_definition(&it.definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionSubstitute(id) => {
let it = self.model.product_definition_substitute_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_relationship(&it.context_relationship)
),
format!(
"#{}",
self.id_of_ref_product_definition(&it.substitute_definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionUsage(id) => {
let it = self.model.product_definition_usage_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.relating_product_definition
)
),
format!(
"#{}",
self.id_of_ref_product_definition_or_reference(
&it.related_product_definition
)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductDefinitionWithAssociatedDocuments(id) => {
let it = self
.model
.product_definition_with_associated_documents_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_product_definition_formation(&it.formation)
),
format!(
"#{}",
self.id_of_ref_product_definition_context(&it.frame_of_reference)
),
format!(
"({})",
it.documentation_ids
.iter()
.map(|e| format!("#{}", self.id_of_ref_document(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProductRelatedProductCategory(id) => {
let it = self.model.product_related_product_category_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"({})",
it.products
.iter()
.map(|e| format!("#{}", self.id_of_ref_product(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ProjectedZoneDefinition(id) => {
let it = self.model.projected_zone_definition_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_tolerance_zone(&it.zone)),
format!(
"({})",
it.boundaries
.iter()
.map(|e| format!("#{}", self.id_of_ref_shape_aspect(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_shape_aspect(&it.projection_end)),
format!(
"#{}",
self.id_of_ref_length_measure_with_unit(&it.projected_length)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PropertyDefinition(id) => {
let it = self.model.property_definition_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_characterized_definition(&it.definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PropertyDefinitionRelationship(id) => {
let it = self.model.property_definition_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_property_definition(&it.relating_property_definition)
),
format!(
"#{}",
self.id_of_ref_property_definition(&it.related_property_definition)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::PropertyDefinitionRepresentation(id) => {
let it = self
.model
.property_definition_representation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_represented_definition(&it.definition)),
format!(
"#{}",
self.id_of_ref_representation(&it.used_representation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::QualifiedRepresentationItem(id) => {
let it = self.model.qualified_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.qualifiers
.iter()
.map(|e| format!("#{}", self.id_of_ref_value_qualifier(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::QuasiUniformCurve(id) => {
let it = self.model.quasi_uniform_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::QuasiUniformSurface(id) => {
let it = self.model.quasi_uniform_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RatioMeasureWithUnit(id) => {
let it = self.model.ratio_measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RatioUnit(id) => {
let it = self.model.ratio_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RationalBSplineCurve(id) => {
let it = self.model.rational_b_spline_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
format!(
"({})",
it.weights_data
.iter()
.map(|e| real(*e))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RationalBSplineSurface(id) => {
let it = self.model.rational_b_spline_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
format!(
"({})",
it.weights_data
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RealLiteral(id) => {
let it = self.model.real_literal_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![real(it.the_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RealRepresentationItem(id) => {
let it = self.model.real_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), real(it.the_value)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepositionedTessellatedItem(id) => {
let it = self.model.repositioned_tessellated_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.location)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Representation(id) => {
let it = self.model.representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationContext(id) => {
let it = self.model.representation_context_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![step_str(&it.context_identifier), step_str(&it.context_type)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationContextReference(id) => {
let it = self.model.representation_context_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.context_identifier)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationItem(id) => {
let it = self.model.representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationMap(id) => {
let it = self.model.representation_map_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_representation_item(&it.mapping_origin)
),
format!(
"#{}",
self.id_of_ref_representation(&it.mapped_representation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationReference(id) => {
let it = self.model.representation_reference_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
format!(
"#{}",
self.id_of_ref_representation_context_reference(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationRelationship(id) => {
let it = self.model.representation_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_1)
),
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_2)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RepresentationRelationshipWithTransformation(id) => {
let it = self
.model
.representation_relationship_with_transformation_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_1)
),
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_2)
),
match &it.transformation_operator {
TransformationRef::ListItemDefinedTransformation(vs) => format!(
"LIST_ITEM_DEFINED_TRANSFORMATION(({}))",
vs.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_item_defined_transformation(e)
))
.collect::<Vec<_>>()
.join(",")
),
TransformationRef::SetItemDefinedTransformation(vs) => format!(
"SET_ITEM_DEFINED_TRANSFORMATION(({}))",
vs.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_item_defined_transformation(e)
))
.collect::<Vec<_>>()
.join(",")
),
other => format!("#{}", self.id_of_ref_transformation(other)),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ResourceProperty(id) => {
let it = self.model.resource_property_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.description),
format!(
"#{}",
self.id_of_ref_characterized_resource_definition(&it.resource)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ResourceRequirementType(id) => {
let it = self.model.resource_requirement_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), step_str(&it.description)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RoleAssociation(id) => {
let it = self.model.role_association_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_object_role(&it.role)),
format!("#{}", self.id_of_ref_role_select(&it.item_with_role)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::RoundnessTolerance(id) => {
let it = self.model.roundness_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SeamCurve(id) => {
let it = self.model.seam_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.curve_3d)),
format!(
"({})",
it.associated_geometry
.iter()
.map(|e| format!("#{}", self.id_of_ref_pcurve_or_surface(e)))
.collect::<Vec<_>>()
.join(",")
),
it.master_representation.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SecurityClassification(id) => {
let it = self.model.security_classification_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.purpose),
format!(
"#{}",
self.id_of_ref_security_classification_level(&it.security_level)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SecurityClassificationAssignment(id) => {
let it = self
.model
.security_classification_assignment_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_security_classification(&it.assigned_security_classification)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SecurityClassificationLevel(id) => {
let it = self.model.security_classification_level_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeAspect(id) => {
let it = self.model.shape_aspect_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
match &it.product_definitional {
Some(x) => x.token().to_string(),
None => "*".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeAspectAssociativity(id) => {
let it = self.model.shape_aspect_associativity_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeAspectDerivingRelationship(id) => {
let it = self
.model
.shape_aspect_deriving_relationship_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeAspectRelationship(id) => {
let it = self.model.shape_aspect_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_shape_aspect(&it.relating_shape_aspect)
),
format!("#{}", self.id_of_ref_shape_aspect(&it.related_shape_aspect)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeDefinitionRepresentation(id) => {
let it = self.model.shape_definition_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_represented_definition(&it.definition)),
format!(
"#{}",
self.id_of_ref_representation(&it.used_representation)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeDimensionRepresentation(id) => {
let it = self.model.shape_dimension_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeRepresentation(id) => {
let it = self.model.shape_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeRepresentationRelationship(id) => {
let it = self.model.shape_representation_relationship_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_1)
),
format!(
"#{}",
self.id_of_ref_representation_or_representation_reference(&it.rep_2)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShapeRepresentationWithParameters(id) => {
let it = self
.model
.shape_representation_with_parameters_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ShellBasedSurfaceModel(id) => {
let it = self.model.shell_based_surface_model_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.sbsm_boundary
.iter()
.map(|e| format!("#{}", self.id_of_ref_shell(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SiUnit(id) => {
let it = self.model.si_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
"*".to_string(),
match &it.prefix {
Some(x) => x.token().to_string(),
None => "$".to_string(),
},
it.name.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SimpleGenericExpression(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SimpleNumericExpression(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SolidAngleUnit(id) => {
let it = self.model.solid_angle_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SolidModel(id) => {
let it = self.model.solid_model_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SphericalSurface(id) => {
let it = self.model.spherical_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
real(it.radius),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StartRequest(id) => {
let it = self.model.start_request_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_versioned_action_request(&it.assigned_action_request)
),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_start_request_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StartWork(id) => {
let it = self.model.start_work_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_action(&it.assigned_action)),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_work_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StateObserved(id) => {
let it = self.model.state_observed_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StateType(id) => {
let it = self.model.state_type_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StraightnessTolerance(id) => {
let it = self.model.straightness_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::StyledItem(id) => {
let it = self.model.styled_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Surface(id) => {
let it = self.model.surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceCurve(id) => {
let it = self.model.surface_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.curve_3d)),
format!(
"({})",
it.associated_geometry
.iter()
.map(|e| format!("#{}", self.id_of_ref_pcurve_or_surface(e)))
.collect::<Vec<_>>()
.join(",")
),
it.master_representation.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceOfLinearExtrusion(id) => {
let it = self.model.surface_of_linear_extrusion_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.swept_curve)),
format!("#{}", self.id_of_ref_vector(&it.extrusion_axis)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceOfRevolution(id) => {
let it = self.model.surface_of_revolution_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.swept_curve)),
format!("#{}", self.id_of_ref_axis1_placement(&it.axis_position)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceProfileTolerance(id) => {
let it = self.model.surface_profile_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceRenderingProperties(id) => {
let it = self.model.surface_rendering_properties_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_colour(&it.rendered_colour))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceSideStyle(id) => {
let it = self.model.surface_side_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!("#{}", self.id_of_ref_surface_style_element_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleBoundary(id) => {
let it = self.model.surface_style_boundary_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_curve_or_render(&it.style_of_boundary)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleControlGrid(id) => {
let it = self.model.surface_style_control_grid_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_curve_or_render(&it.style_of_control_grid)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleFillArea(id) => {
let it = self.model.surface_style_fill_area_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_fill_area_style(&it.fill_area)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleParameterLine(id) => {
let it = self.model.surface_style_parameter_line_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!(
"#{}",
self.id_of_ref_curve_or_render(&it.style_of_parameter_lines)
),
format!(
"({})",
it.direction_counts
.iter()
.map(|e| int_measure(e))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleReflectanceAmbient(id) => {
let it = self.model.surface_style_reflectance_ambient_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![real(it.ambient_reflectance)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleRendering(id) => {
let it = self.model.surface_style_rendering_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.rendering_method.token().to_string(),
format!("#{}", self.id_of_ref_colour(&it.surface_colour)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleRenderingWithProperties(id) => {
let it = self
.model
.surface_style_rendering_with_properties_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.rendering_method.token().to_string(),
format!("#{}", self.id_of_ref_colour(&it.surface_colour)),
format!(
"({})",
it.properties
.iter()
.map(|e| format!("#{}", self.id_of_ref_rendering_properties_select(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleSegmentationCurve(id) => {
let it = self.model.surface_style_segmentation_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_curve_or_render(&it.style_of_segmentation_curve)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleSilhouette(id) => {
let it = self.model.surface_style_silhouette_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_curve_or_render(&it.style_of_silhouette)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleTransparent(id) => {
let it = self.model.surface_style_transparent_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![real(it.transparency)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SurfaceStyleUsage(id) => {
let it = self.model.surface_style_usage_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.side.token().to_string(),
format!("#{}", self.id_of_ref_surface_side_style_select(&it.style)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SweptSurface(id) => {
let it = self.model.swept_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.swept_curve)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SymbolColour(id) => {
let it = self.model.symbol_colour_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_colour(&it.colour_of_symbol))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SymbolRepresentation(id) => {
let it = self.model.symbol_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SymbolStyle(id) => {
let it = self.model.symbol_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_symbol_style_select(&it.style_of_symbol)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SymbolTarget(id) => {
let it = self.model.symbol_target_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement(&it.placement)),
real(it.x_scale),
real(it.y_scale),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::SymmetryTolerance(id) => {
let it = self.model.symmetry_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TerminatorSymbol(id) => {
let it = self.model.terminator_symbol_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_annotation_symbol_occurrence_item(&it.item)
),
format!(
"#{}",
self.id_of_ref_annotation_curve_occurrence(&it.annotated_curve)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedAnnotationOccurrence(id) => {
let it = self.model.tessellated_annotation_occurrence_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.styles
.iter()
.map(|e| format!(
"#{}",
self.id_of_ref_presentation_style_assignment(e)
))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_styled_item_target(&it.item)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedCurveSet(id) => {
let it = self.model.tessellated_curve_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_coordinates_list(&it.coordinates)),
format!(
"({})",
it.line_strips
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| format!("{e}")).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedFace(id) => {
let it = self.model.tessellated_face_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_coordinates_list(&it.coordinates)),
format!("{}", it.pnmax),
format!(
"({})",
it.normals
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
match &it.geometric_link {
Some(r) => format!("#{}", self.id_of_ref_face_or_surface(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedGeometricSet(id) => {
let it = self.model.tessellated_geometric_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.children
.iter()
.map(|e| format!("#{}", self.id_of_ref_tessellated_item(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedItem(id) => {
let it = self.model.tessellated_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedShapeRepresentation(id) => {
let it = self.model.tessellated_shape_representation_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_representation_item(e)))
.collect::<Vec<_>>()
.join(",")
),
format!(
"#{}",
self.id_of_ref_representation_context(&it.context_of_items)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedShell(id) => {
let it = self.model.tessellated_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_tessellated_structured_item(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.topological_link {
Some(r) => format!("#{}", self.id_of_ref_connected_face_set(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedSolid(id) => {
let it = self.model.tessellated_solid_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.items
.iter()
.map(|e| format!("#{}", self.id_of_ref_tessellated_structured_item(e)))
.collect::<Vec<_>>()
.join(",")
),
match &it.geometric_link {
Some(r) => format!("#{}", self.id_of_ref_manifold_solid_brep(r)),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedStructuredItem(id) => {
let it = self.model.tessellated_structured_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TessellatedSurfaceSet(id) => {
let it = self.model.tessellated_surface_set_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_coordinates_list(&it.coordinates)),
format!("{}", it.pnmax),
format!(
"({})",
it.normals
.iter()
.map(|e| {
let row: Vec<String> = e.iter().map(|e| real(*e)).collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextFont(id) => {
let it = self.model.text_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
step_str(&it.name),
step_str(&it.description),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextLiteral(id) => {
let it = self.model.text_literal_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
step_str(&it.literal),
format!("#{}", self.id_of_ref_axis2_placement(&it.placement)),
step_str(&it.alignment),
it.path.token().to_string(),
format!("#{}", self.id_of_ref_font_select(&it.font)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextStyle(id) => {
let it = self.model.text_style_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_character_style_select(&it.character_appearance)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextStyleForDefinedFont(id) => {
let it = self.model.text_style_for_defined_font_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![format!("#{}", self.id_of_ref_colour(&it.text_colour))];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextStyleWithBoxCharacteristics(id) => {
let it = self
.model
.text_style_with_box_characteristics_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"#{}",
self.id_of_ref_character_style_select(&it.character_appearance)
),
format!(
"({})",
it.characteristics
.iter()
.map(|e| measure(e))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextureStyleSpecification(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TextureStyleTessellationSpecification(_) => {
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TimeUnit(id) => {
let it = self.model.time_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"#{}",
self.id_of_ref_dimensional_exponents(&it.dimensions)
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToleranceValue(id) => {
let it = self.model.tolerance_value_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_measure_with_unit(&it.lower_bound)),
format!("#{}", self.id_of_ref_measure_with_unit(&it.upper_bound)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToleranceZone(id) => {
let it = self.model.tolerance_zone_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
format!(
"({})",
it.defining_tolerance
.iter()
.map(|e| format!("#{}", self.id_of_ref_tolerance_zone_target(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_tolerance_zone_form(&it.form)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToleranceZoneDefinition(id) => {
let it = self.model.tolerance_zone_definition_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
format!("#{}", self.id_of_ref_tolerance_zone(&it.zone)),
format!(
"({})",
it.boundaries
.iter()
.map(|e| format!("#{}", self.id_of_ref_shape_aspect(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToleranceZoneForm(id) => {
let it = self.model.tolerance_zone_form_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToleranceZoneWithDatum(id) => {
let it = self.model.tolerance_zone_with_datum_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
format!("#{}", self.id_of_ref_product_definition_shape(&it.of_shape)),
it.product_definitional.token().to_string(),
format!(
"({})",
it.defining_tolerance
.iter()
.map(|e| format!("#{}", self.id_of_ref_tolerance_zone_target(e)))
.collect::<Vec<_>>()
.join(",")
),
format!("#{}", self.id_of_ref_tolerance_zone_form(&it.form)),
format!("#{}", self.id_of_ref_datum_system(&it.datum_reference)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TopologicalRepresentationItem(id) => {
let it = self.model.topological_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ToroidalSurface(id) => {
let it = self.model.toroidal_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_axis2_placement3d(&it.position)),
real(it.major_radius),
real(it.minor_radius),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TotalRunoutTolerance(id) => {
let it = self.model.total_runout_tolerance_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"({})",
it.datum_system
.iter()
.map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TrimmedCurve(id) => {
let it = self.model.trimmed_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_curve(&it.basis_curve)),
format!(
"({})",
it.trim_1
.iter()
.map(|e| match e {
TrimmingSelectRef::ParameterValue(x) =>
format!("PARAMETER_VALUE({})", real(*x)),
other => format!("#{}", self.id_of_ref_trimming_select(other)),
})
.collect::<Vec<_>>()
.join(",")
),
format!(
"({})",
it.trim_2
.iter()
.map(|e| match e {
TrimmingSelectRef::ParameterValue(x) =>
format!("PARAMETER_VALUE({})", real(*x)),
other => format!("#{}", self.id_of_ref_trimming_select(other)),
})
.collect::<Vec<_>>()
.join(",")
),
(if it.sense_agreement { ".T." } else { ".F." }).to_string(),
it.master_representation.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TwoDirectionRepeatFactor(id) => {
let it = self.model.two_direction_repeat_factor_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_vector(&it.repeat_factor)),
format!("#{}", self.id_of_ref_vector(&it.second_repeat_factor)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::TypeQualifier(id) => {
let it = self.model.type_qualifier_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::UncertaintyMeasureWithUnit(id) => {
let it = self.model.uncertainty_measure_with_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
measure(&it.value_component),
format!("#{}", self.id_of_ref_unit(&it.unit_component)),
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::UncertaintyQualifier(id) => {
let it = self.model.uncertainty_qualifier_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> =
vec![step_str(&it.measure_name), step_str(&it.description)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::UnequallyDisposedGeometricTolerance(id) => {
let it = self
.model
.unequally_disposed_geometric_tolerance_arena
.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
match &it.magnitude {
Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)),
None => "$".to_string(),
},
format!(
"#{}",
self.id_of_ref_geometric_tolerance_target(&it.toleranced_shape_aspect)
),
format!(
"#{}",
self.id_of_ref_length_measure_with_unit(&it.displacement)
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::UniformCurve(id) => {
let it = self.model.uniform_curve_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect::<Vec<_>>()
.join(",")
),
it.curve_form.token().to_string(),
it.closed_curve.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::UniformSurface(id) => {
let it = self.model.uniform_surface_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("{}", it.u_degree),
format!("{}", it.v_degree),
format!(
"({})",
it.control_points_list
.iter()
.map(|e| {
let row: Vec<String> = e
.iter()
.map(|e| format!("#{}", self.id_of_ref_cartesian_point(e)))
.collect();
format!("({})", row.join(","))
})
.collect::<Vec<_>>()
.join(",")
),
it.surface_form.token().to_string(),
it.u_closed.token().to_string(),
it.v_closed.token().to_string(),
it.self_intersect.token().to_string(),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ValueFormatTypeQualifier(id) => {
let it = self.model.value_format_type_qualifier_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.format_type)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ValueRepresentationItem(id) => {
let it = self.model.value_representation_item_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name), measure(&it.value_component)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Vector(id) => {
let it = self.model.vector_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_direction(&it.orientation)),
real(it.magnitude),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::VersionedActionRequest(id) => {
let it = self.model.versioned_action_request_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.id),
match &it.version {
Some(x) => step_str(x),
None => "$".to_string(),
},
step_str(&it.purpose),
match &it.description {
Some(x) => step_str(x),
None => "$".to_string(),
},
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::Vertex(id) => {
let it = self.model.vertex_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![step_str(&it.name)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::VertexLoop(id) => {
let it = self.model.vertex_loop_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_vertex(&it.loop_vertex)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::VertexPoint(id) => {
let it = self.model.vertex_point_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_point(&it.vertex_geometry)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::VertexShell(id) => {
let it = self.model.vertex_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!("#{}", self.id_of_ref_vertex_loop(&it.vertex_shell_extent)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ViewVolume(id) => {
let it = self.model.view_volume_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
it.projection_type.token().to_string(),
format!("#{}", self.id_of_ref_cartesian_point(&it.projection_point)),
real(it.view_plane_distance),
real(it.front_plane_distance),
(if it.front_plane_clipping {
".T."
} else {
".F."
})
.to_string(),
real(it.back_plane_distance),
(if it.back_plane_clipping { ".T." } else { ".F." }).to_string(),
(if it.view_volume_sides_clipping {
".T."
} else {
".F."
})
.to_string(),
format!("#{}", self.id_of_ref_planar_box(&it.view_window)),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::VolumeUnit(id) => {
let it = self.model.volume_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![format!(
"({})",
it.elements
.iter()
.map(|e| format!("#{}", self.id_of_ref_derived_unit_element(e)))
.collect::<Vec<_>>()
.join(",")
)];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::WireShell(id) => {
let it = self.model.wire_shell_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let kw = self.render_kw(any);
let attrs: Vec<String> = vec![
step_str(&it.name),
format!(
"({})",
it.wire_shell_extent
.iter()
.map(|e| format!("#{}", self.id_of_ref_loop(e)))
.collect::<Vec<_>>()
.join(",")
),
];
format!("#{n} = {kw}({});\n", attrs.join(","))
}
EntityKey::ComplexUnit(id) => {
let cu = self.model.complex_unit_arena.get(id.0);
let n = self.get_id(any).expect("id assigned");
let mut part_txt: Vec<String> = Vec::with_capacity(cu.parts.len());
for part in &cu.parts {
part_txt.push(match part {
UnitPart::Action { name, description, chosen_method, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_action_method(chosen_method))]; format!("ACTION({})", a.join(",")) },
UnitPart::ActionMethod { name, description, consequence, purpose, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, step_str(consequence), step_str(purpose)]; format!("ACTION_METHOD({})", a.join(",")) },
UnitPart::ActionMethodRelationship { name, description, relating_method, related_method, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_action_method(relating_method)), format!("#{}", self.id_of_ref_action_method(related_method))]; format!("ACTION_METHOD_RELATIONSHIP({})", a.join(",")) },
UnitPart::ActionRelationship { name, description, relating_action, related_action, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_action(relating_action)), format!("#{}", self.id_of_ref_action(related_action))]; format!("ACTION_RELATIONSHIP({})", a.join(",")) },
UnitPart::ActionRequestAssignment { assigned_action_request, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_versioned_action_request(assigned_action_request))]; format!("ACTION_REQUEST_ASSIGNMENT({})", a.join(",")) },
UnitPart::ActionResource { name, description, usage, kind, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("({})", usage.iter().map(|e| format!("#{}", self.id_of_ref_supported_item(e))).collect::<Vec<_>>().join(",")), format!("#{}", self.id_of_ref_action_resource_type(kind))]; format!("ACTION_RESOURCE({})", a.join(",")) },
UnitPart::ActionResourceRequirement { name, description, kind, operations, .. } => { let a: Vec<String> = vec![step_str(name), step_str(description), format!("#{}", self.id_of_ref_resource_requirement_type(kind)), format!("({})", operations.iter().map(|e| format!("#{}", self.id_of_ref_characterized_action_definition(e))).collect::<Vec<_>>().join(","))]; format!("ACTION_RESOURCE_REQUIREMENT({})", a.join(",")) },
UnitPart::Address { internal_location, street_number, street, postal_box, town, region, postal_code, country, facsimile_number, telephone_number, electronic_mail_address, telex_number, .. } => { let a: Vec<String> = vec![match internal_location { Some(x) => step_str(x), None => "$".to_string() }, match street_number { Some(x) => step_str(x), None => "$".to_string() }, match street { Some(x) => step_str(x), None => "$".to_string() }, match postal_box { Some(x) => step_str(x), None => "$".to_string() }, match town { Some(x) => step_str(x), None => "$".to_string() }, match region { Some(x) => step_str(x), None => "$".to_string() }, match postal_code { Some(x) => step_str(x), None => "$".to_string() }, match country { Some(x) => step_str(x), None => "$".to_string() }, match facsimile_number { Some(x) => step_str(x), None => "$".to_string() }, match telephone_number { Some(x) => step_str(x), None => "$".to_string() }, match electronic_mail_address { Some(x) => step_str(x), None => "$".to_string() }, match telex_number { Some(x) => step_str(x), None => "$".to_string() }]; format!("ADDRESS({})", a.join(",")) },
UnitPart::AdvancedBrepShapeRepresentation => "ADVANCED_BREP_SHAPE_REPRESENTATION()".to_string(),
UnitPart::AdvancedFace => "ADVANCED_FACE()".to_string(),
UnitPart::AnnotationCurveOccurrence => "ANNOTATION_CURVE_OCCURRENCE()".to_string(),
UnitPart::AnnotationFillAreaOccurrence { fill_style_target, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_point(fill_style_target))]; format!("ANNOTATION_FILL_AREA_OCCURRENCE({})", a.join(",")) },
UnitPart::AnnotationOccurrence => "ANNOTATION_OCCURRENCE()".to_string(),
UnitPart::AnnotationOccurrenceAssociativity => "ANNOTATION_OCCURRENCE_ASSOCIATIVITY()".to_string(),
UnitPart::AnnotationOccurrenceRelationship { name, description, relating_annotation_occurrence, related_annotation_occurrence, .. } => { let a: Vec<String> = vec![step_str(name), step_str(description), format!("#{}", self.id_of_ref_annotation_occurrence(relating_annotation_occurrence)), format!("#{}", self.id_of_ref_annotation_occurrence(related_annotation_occurrence))]; format!("ANNOTATION_OCCURRENCE_RELATIONSHIP({})", a.join(",")) },
UnitPart::AnnotationPlaceholderOccurrence { role, line_spacing, .. } => { let a: Vec<String> = vec![role.token().to_string(), real(*line_spacing)]; format!("ANNOTATION_PLACEHOLDER_OCCURRENCE({})", a.join(",")) },
UnitPart::AnnotationPlaceholderOccurrenceWithLeaderLine { leader_line, .. } => { let a: Vec<String> = vec![format!("({})", leader_line.iter().map(|e| format!("#{}", self.id_of_ref_annotation_placeholder_leader_line(e))).collect::<Vec<_>>().join(","))]; format!("ANNOTATION_PLACEHOLDER_OCCURRENCE_WITH_LEADER_LINE({})", a.join(",")) },
UnitPart::AnnotationPlane { elements, .. } => { let a: Vec<String> = vec![match elements { Some(v) => format!("({})", v.iter().map(|e| format!("#{}", self.id_of_ref_annotation_plane_element(e))).collect::<Vec<_>>().join(",")), None => "$".to_string() }]; format!("ANNOTATION_PLANE({})", a.join(",")) },
UnitPart::AnnotationSymbol => "ANNOTATION_SYMBOL()".to_string(),
UnitPart::AnnotationSymbolOccurrence => "ANNOTATION_SYMBOL_OCCURRENCE()".to_string(),
UnitPart::AnnotationText => "ANNOTATION_TEXT()".to_string(),
UnitPart::AnnotationTextCharacter { alignment, .. } => { let a: Vec<String> = vec![step_str(alignment)]; format!("ANNOTATION_TEXT_CHARACTER({})", a.join(",")) },
UnitPart::AnnotationTextOccurrence => "ANNOTATION_TEXT_OCCURRENCE()".to_string(),
UnitPart::ApplicationContextElement { name, frame_of_reference, .. } => { let a: Vec<String> = vec![step_str(name), format!("#{}", self.id_of_ref_application_context(frame_of_reference))]; format!("APPLICATION_CONTEXT_ELEMENT({})", a.join(",")) },
UnitPart::AppliedApprovalAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_approval_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_APPROVAL_ASSIGNMENT({})", a.join(",")) },
UnitPart::AppliedDateAndTimeAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_date_and_time_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_DATE_AND_TIME_ASSIGNMENT({})", a.join(",")) },
UnitPart::AppliedDocumentReference { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_document_reference_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_DOCUMENT_REFERENCE({})", a.join(",")) },
UnitPart::AppliedExternalIdentificationAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_external_identification_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::AppliedGroupAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_groupable_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_GROUP_ASSIGNMENT({})", a.join(",")) },
UnitPart::AppliedPersonAndOrganizationAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_person_and_organization_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::AppliedPresentedItem { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_presented_item_select(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_PRESENTED_ITEM({})", a.join(",")) },
UnitPart::AppliedSecurityClassificationAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_security_classification_item(e))).collect::<Vec<_>>().join(","))]; format!("APPLIED_SECURITY_CLASSIFICATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::ApprovalAssignment { assigned_approval, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_approval(assigned_approval))]; format!("APPROVAL_ASSIGNMENT({})", a.join(",")) },
UnitPart::AreaInSet { area, in_set, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_presentation_area(area)), format!("#{}", self.id_of_ref_presentation_set(in_set))]; format!("AREA_IN_SET({})", a.join(",")) },
UnitPart::AscribableStateRelationship { name, description, relating_ascribable_state, related_ascribable_state, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_ascribable_state(relating_ascribable_state)), format!("#{}", self.id_of_ref_ascribable_state(related_ascribable_state))]; format!("ASCRIBABLE_STATE_RELATIONSHIP({})", a.join(",")) },
UnitPart::AssemblyComponentUsage { reference_designator, .. } => { let a: Vec<String> = vec![match reference_designator { Some(x) => step_str(x), None => "$".to_string() }]; format!("ASSEMBLY_COMPONENT_USAGE({})", a.join(",")) },
UnitPart::BSplineCurve { degree, control_points_list, curve_form, closed_curve, self_intersect, .. } => { let a: Vec<String> = vec![format!("{}", degree), format!("({})", control_points_list.iter().map(|e| format!("#{}", self.id_of_ref_cartesian_point(e))).collect::<Vec<_>>().join(",")), curve_form.token().to_string(), closed_curve.token().to_string(), self_intersect.token().to_string()]; format!("B_SPLINE_CURVE({})", a.join(",")) },
UnitPart::BSplineCurveWithKnots { knot_multiplicities, knots, knot_spec, .. } => { let a: Vec<String> = vec![format!("({})", knot_multiplicities.iter().map(|e| format!("{e}")).collect::<Vec<_>>().join(",")), format!("({})", knots.iter().map(|e| real(*e)).collect::<Vec<_>>().join(",")), knot_spec.token().to_string()]; format!("B_SPLINE_CURVE_WITH_KNOTS({})", a.join(",")) },
UnitPart::BSplineSurface { u_degree, v_degree, control_points_list, surface_form, u_closed, v_closed, self_intersect, .. } => { let a: Vec<String> = vec![format!("{}", u_degree), format!("{}", v_degree), format!("({})", control_points_list.iter().map(|e| { let row: Vec<String> = e.iter().map(|e| format!("#{}", self.id_of_ref_cartesian_point(e))).collect(); format!("({})", row.join(",")) }).collect::<Vec<_>>().join(",")), surface_form.token().to_string(), u_closed.token().to_string(), v_closed.token().to_string(), self_intersect.token().to_string()]; format!("B_SPLINE_SURFACE({})", a.join(",")) },
UnitPart::BSplineSurfaceWithKnots { u_multiplicities, v_multiplicities, u_knots, v_knots, knot_spec, .. } => { let a: Vec<String> = vec![format!("({})", u_multiplicities.iter().map(|e| format!("{e}")).collect::<Vec<_>>().join(",")), format!("({})", v_multiplicities.iter().map(|e| format!("{e}")).collect::<Vec<_>>().join(",")), format!("({})", u_knots.iter().map(|e| real(*e)).collect::<Vec<_>>().join(",")), format!("({})", v_knots.iter().map(|e| real(*e)).collect::<Vec<_>>().join(",")), knot_spec.token().to_string()]; format!("B_SPLINE_SURFACE_WITH_KNOTS({})", a.join(",")) },
UnitPart::BezierCurve => "BEZIER_CURVE()".to_string(),
UnitPart::BezierSurface => "BEZIER_SURFACE()".to_string(),
UnitPart::BoundedCurve => "BOUNDED_CURVE()".to_string(),
UnitPart::BoundedPcurve => "BOUNDED_PCURVE()".to_string(),
UnitPart::BoundedSurface => "BOUNDED_SURFACE()".to_string(),
UnitPart::BoundedSurfaceCurve => "BOUNDED_SURFACE_CURVE()".to_string(),
UnitPart::BrepWithVoids { voids, .. } => { let a: Vec<String> = vec![format!("({})", voids.iter().map(|e| format!("#{}", self.id_of_ref_oriented_closed_shell(e))).collect::<Vec<_>>().join(","))]; format!("BREP_WITH_VOIDS({})", a.join(",")) },
UnitPart::CameraImage => "CAMERA_IMAGE()".to_string(),
UnitPart::CameraImage3dWithScale => "CAMERA_IMAGE_3D_WITH_SCALE()".to_string(),
UnitPart::CameraModel => "CAMERA_MODEL()".to_string(),
UnitPart::CameraModelD3 { view_reference_system, perspective_of_volume, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_axis2_placement3d(view_reference_system)), format!("#{}", self.id_of_ref_view_volume(perspective_of_volume))]; format!("CAMERA_MODEL_D3({})", a.join(",")) },
UnitPart::CameraModelD3MultiClipping { shape_clipping, .. } => { let a: Vec<String> = vec![format!("({})", shape_clipping.iter().map(|e| format!("#{}", self.id_of_ref_camera_model_d3_multi_clipping_intersection_select(e))).collect::<Vec<_>>().join(","))]; format!("CAMERA_MODEL_D3_MULTI_CLIPPING({})", a.join(",")) },
UnitPart::CameraModelD3WithHlhsr { hidden_line_surface_removal, .. } => { let a: Vec<String> = vec![(if *hidden_line_surface_removal { ".T." } else { ".F." }).to_string()]; format!("CAMERA_MODEL_D3_WITH_HLHSR({})", a.join(",")) },
UnitPart::CameraUsage => "CAMERA_USAGE()".to_string(),
UnitPart::CcDesignApproval { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_approved_item(e))).collect::<Vec<_>>().join(","))]; format!("CC_DESIGN_APPROVAL({})", a.join(",")) },
UnitPart::CcDesignDateAndTimeAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_date_time_item(e))).collect::<Vec<_>>().join(","))]; format!("CC_DESIGN_DATE_AND_TIME_ASSIGNMENT({})", a.join(",")) },
UnitPart::CcDesignPersonAndOrganizationAssignment { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_cc_person_organization_item(e))).collect::<Vec<_>>().join(","))]; format!("CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::CcDesignSecurityClassification { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_cc_classified_item(e))).collect::<Vec<_>>().join(","))]; format!("CC_DESIGN_SECURITY_CLASSIFICATION({})", a.join(",")) },
UnitPart::ChangeRequest { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_change_request_item(e))).collect::<Vec<_>>().join(","))]; format!("CHANGE_REQUEST({})", a.join(",")) },
UnitPart::CharacterGlyphStyleOutline { outline_style, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_style(outline_style))]; format!("CHARACTER_GLYPH_STYLE_OUTLINE({})", a.join(",")) },
UnitPart::CharacterGlyphStyleStroke { stroke_style, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_style(stroke_style))]; format!("CHARACTER_GLYPH_STYLE_STROKE({})", a.join(",")) },
UnitPart::CharacterizedItemWithinRepresentation { item, rep, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_representation_item(item)), format!("#{}", self.id_of_ref_representation(rep))]; format!("CHARACTERIZED_ITEM_WITHIN_REPRESENTATION({})", a.join(",")) },
UnitPart::CharacterizedObject { name, description, .. } => { let a: Vec<String> = vec![match name { Some(x) => step_str(x), None => "*".to_string() }, match description { Some(x) => step_str(x), None => "*".to_string() }]; format!("CHARACTERIZED_OBJECT({})", a.join(",")) },
UnitPart::CharacterizedRepresentation => "CHARACTERIZED_REPRESENTATION()".to_string(),
UnitPart::CircularRunoutTolerance => "CIRCULAR_RUNOUT_TOLERANCE()".to_string(),
UnitPart::ClosedShell => "CLOSED_SHELL()".to_string(),
UnitPart::Colour => "COLOUR()".to_string(),
UnitPart::ColourRgb { red, green, blue, .. } => { let a: Vec<String> = vec![real(*red), real(*green), real(*blue)]; format!("COLOUR_RGB({})", a.join(",")) },
UnitPart::ColourSpecification { name, .. } => { let a: Vec<String> = vec![step_str(name)]; format!("COLOUR_SPECIFICATION({})", a.join(",")) },
UnitPart::CommonDatum => "COMMON_DATUM()".to_string(),
UnitPart::CompositeCurve { segments, self_intersect, .. } => { let a: Vec<String> = vec![format!("({})", segments.iter().map(|e| format!("#{}", self.id_of_ref_composite_curve_segment(e))).collect::<Vec<_>>().join(",")), self_intersect.token().to_string()]; format!("COMPOSITE_CURVE({})", a.join(",")) },
UnitPart::CompositeCurveSegment { transition, same_sense, parent_curve, .. } => { let a: Vec<String> = vec![transition.token().to_string(), (if *same_sense { ".T." } else { ".F." }).to_string(), format!("#{}", self.id_of_ref_curve(parent_curve))]; format!("COMPOSITE_CURVE_SEGMENT({})", a.join(",")) },
UnitPart::CompositeGroupShapeAspect => "COMPOSITE_GROUP_SHAPE_ASPECT()".to_string(),
UnitPart::CompositeShapeAspect => "COMPOSITE_SHAPE_ASPECT()".to_string(),
UnitPart::CompositeText { collected_text, .. } => { let a: Vec<String> = vec![format!("({})", collected_text.iter().map(|e| format!("#{}", self.id_of_ref_text_or_character(e))).collect::<Vec<_>>().join(","))]; format!("COMPOSITE_TEXT({})", a.join(",")) },
UnitPart::CompoundRepresentationItem { item_element, .. } => { let a: Vec<String> = vec![match item_element { CompoundItemDefinitionRef::ListRepresentationItem(vs) => format!("LIST_REPRESENTATION_ITEM(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_representation_item(e))).collect::<Vec<_>>().join(",")), CompoundItemDefinitionRef::SetRepresentationItem(vs) => format!("SET_REPRESENTATION_ITEM(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_representation_item(e))).collect::<Vec<_>>().join(",")), other => format!("#{}", self.id_of_ref_compound_item_definition(other)) }]; format!("COMPOUND_REPRESENTATION_ITEM({})", a.join(",")) },
UnitPart::ConfigurationEffectivity { configuration, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_configuration_design(configuration))]; format!("CONFIGURATION_EFFECTIVITY({})", a.join(",")) },
UnitPart::ConfigurationItem { id, name, description, item_concept, purpose, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_concept(item_concept)), match purpose { Some(x) => step_str(x), None => "$".to_string() }]; format!("CONFIGURATION_ITEM({})", a.join(",")) },
UnitPart::ConnectedFaceSet { cfs_faces, .. } => { let a: Vec<String> = vec![match cfs_faces { Some(v) => format!("({})", v.iter().map(|e| format!("#{}", self.id_of_ref_face(e))).collect::<Vec<_>>().join(",")), None => "*".to_string() }]; format!("CONNECTED_FACE_SET({})", a.join(",")) },
UnitPart::ConstructiveGeometryRepresentationRelationship => "CONSTRUCTIVE_GEOMETRY_REPRESENTATION_RELATIONSHIP()".to_string(),
UnitPart::ContextDependentOverRidingStyledItem { style_context, .. } => { let a: Vec<String> = vec![format!("({})", style_context.iter().map(|e| format!("#{}", self.id_of_ref_style_context_select(e))).collect::<Vec<_>>().join(","))]; format!("CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM({})", a.join(",")) },
UnitPart::ContextDependentUnit { name, .. } => { let a: Vec<String> = vec![step_str(name)]; format!("CONTEXT_DEPENDENT_UNIT({})", a.join(",")) },
UnitPart::ConversionBasedUnit { name, conversion_factor, .. } => { let a: Vec<String> = vec![step_str(name), format!("#{}", self.id_of_ref_measure_with_unit(conversion_factor))]; format!("CONVERSION_BASED_UNIT({})", a.join(",")) },
UnitPart::Curve => "CURVE()".to_string(),
UnitPart::CurveStyle { name, curve_font, curve_width, curve_colour, .. } => { let a: Vec<String> = vec![step_str(name), match curve_font { Some(r) => format!("#{}", self.id_of_ref_curve_font_or_scaled_curve_font_select(r)), None => "$".to_string() }, match curve_width { Some(r) => match r { SizeSelectRef::DescriptiveMeasure(x) => format!("DESCRIPTIVE_MEASURE({})", step_str(x)), SizeSelectRef::PositiveLengthMeasure(x) => format!("POSITIVE_LENGTH_MEASURE({})", real(*x)), other => format!("#{}", self.id_of_ref_size_select(other)) }, None => "$".to_string() }, match curve_colour { Some(r) => format!("#{}", self.id_of_ref_colour(r)), None => "$".to_string() }]; format!("CURVE_STYLE({})", a.join(",")) },
UnitPart::CurveStyleFont { name, pattern_list, .. } => { let a: Vec<String> = vec![step_str(name), format!("({})", pattern_list.iter().map(|e| format!("#{}", self.id_of_ref_curve_style_font_pattern(e))).collect::<Vec<_>>().join(","))]; format!("CURVE_STYLE_FONT({})", a.join(",")) },
UnitPart::CurveStyleFontAndScaling { name, curve_font, curve_font_scaling, .. } => { let a: Vec<String> = vec![step_str(name), format!("#{}", self.id_of_ref_curve_style_font_select(curve_font)), real(*curve_font_scaling)]; format!("CURVE_STYLE_FONT_AND_SCALING({})", a.join(",")) },
UnitPart::CurveStyleFontPattern { visible_segment_length, invisible_segment_length, .. } => { let a: Vec<String> = vec![real(*visible_segment_length), real(*invisible_segment_length)]; format!("CURVE_STYLE_FONT_PATTERN({})", a.join(",")) },
UnitPart::CylindricityTolerance => "CYLINDRICITY_TOLERANCE()".to_string(),
UnitPart::Date { year_component, .. } => { let a: Vec<String> = vec![format!("{}", year_component)]; format!("DATE({})", a.join(",")) },
UnitPart::DateAndTime { date_component, time_component, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_date(date_component)), format!("#{}", self.id_of_ref_local_time(time_component))]; format!("DATE_AND_TIME({})", a.join(",")) },
UnitPart::DateAndTimeAssignment { assigned_date_and_time, role, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_date_and_time(assigned_date_and_time)), format!("#{}", self.id_of_ref_date_time_role(role))]; format!("DATE_AND_TIME_ASSIGNMENT({})", a.join(",")) },
UnitPart::Datum { identification, .. } => { let a: Vec<String> = vec![step_str(identification)]; format!("DATUM({})", a.join(",")) },
UnitPart::DatumFeature => "DATUM_FEATURE()".to_string(),
UnitPart::DatumReference { precedence, referenced_datum, .. } => { let a: Vec<String> = vec![format!("{}", precedence), format!("#{}", self.id_of_ref_datum(referenced_datum))]; format!("DATUM_REFERENCE({})", a.join(",")) },
UnitPart::DatumSystem { constituents, .. } => { let a: Vec<String> = vec![format!("({})", constituents.iter().map(|e| format!("#{}", self.id_of_ref_datum_reference_compartment(e))).collect::<Vec<_>>().join(","))]; format!("DATUM_SYSTEM({})", a.join(",")) },
UnitPart::DatumTarget { target_id, .. } => { let a: Vec<String> = vec![step_str(target_id)]; format!("DATUM_TARGET({})", a.join(",")) },
UnitPart::DefaultModelGeometricView => "DEFAULT_MODEL_GEOMETRIC_VIEW()".to_string(),
UnitPart::DefinitionalRepresentation => "DEFINITIONAL_REPRESENTATION()".to_string(),
UnitPart::DefinitionalRepresentationRelationship => "DEFINITIONAL_REPRESENTATION_RELATIONSHIP()".to_string(),
UnitPart::DefinitionalRepresentationRelationshipWithSameContext => "DEFINITIONAL_REPRESENTATION_RELATIONSHIP_WITH_SAME_CONTEXT()".to_string(),
UnitPart::DegenerateToroidalSurface { select_outer, .. } => { let a: Vec<String> = vec![(if *select_outer { ".T." } else { ".F." }).to_string()]; format!("DEGENERATE_TOROIDAL_SURFACE({})", a.join(",")) },
UnitPart::DerivedUnit { elements, .. } => { let a: Vec<String> = vec![format!("({})", elements.iter().map(|e| format!("#{}", self.id_of_ref_derived_unit_element(e))).collect::<Vec<_>>().join(","))]; format!("DERIVED_UNIT({})", a.join(",")) },
UnitPart::DesignContext => "DESIGN_CONTEXT()".to_string(),
UnitPart::DimensionalSize { applies_to, name, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_shape_aspect(applies_to)), step_str(name)]; format!("DIMENSIONAL_SIZE({})", a.join(",")) },
UnitPart::Direction { direction_ratios, .. } => { let a: Vec<String> = vec![format!("({})", direction_ratios.iter().map(|e| real(*e)).collect::<Vec<_>>().join(","))]; format!("DIRECTION({})", a.join(",")) },
UnitPart::Document { id, name, description, kind, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_document_type(kind))]; format!("DOCUMENT({})", a.join(",")) },
UnitPart::DocumentFile => "DOCUMENT_FILE()".to_string(),
UnitPart::DocumentProductAssociation { name, description, relating_document, related_product, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_document(relating_document)), format!("#{}", self.id_of_ref_product_or_formation_or_definition(related_product))]; format!("DOCUMENT_PRODUCT_ASSOCIATION({})", a.join(",")) },
UnitPart::DocumentProductEquivalence => "DOCUMENT_PRODUCT_EQUIVALENCE()".to_string(),
UnitPart::DocumentReference { assigned_document, source, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_document(assigned_document)), step_str(source)]; format!("DOCUMENT_REFERENCE({})", a.join(",")) },
UnitPart::DraughtingAnnotationOccurrence => "DRAUGHTING_ANNOTATION_OCCURRENCE()".to_string(),
UnitPart::DraughtingCallout { contents, .. } => { let a: Vec<String> = vec![format!("({})", contents.iter().map(|e| format!("#{}", self.id_of_ref_draughting_callout_element(e))).collect::<Vec<_>>().join(","))]; format!("DRAUGHTING_CALLOUT({})", a.join(",")) },
UnitPart::DraughtingCalloutRelationship { name, description, relating_draughting_callout, related_draughting_callout, .. } => { let a: Vec<String> = vec![step_str(name), step_str(description), format!("#{}", self.id_of_ref_draughting_callout(relating_draughting_callout)), format!("#{}", self.id_of_ref_draughting_callout(related_draughting_callout))]; format!("DRAUGHTING_CALLOUT_RELATIONSHIP({})", a.join(",")) },
UnitPart::DraughtingModel => "DRAUGHTING_MODEL()".to_string(),
UnitPart::DraughtingModelItemAssociation => "DRAUGHTING_MODEL_ITEM_ASSOCIATION()".to_string(),
UnitPart::DraughtingModelItemAssociationWithPlaceholder { annotation_placeholder, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_annotation_placeholder_occurrence(annotation_placeholder))]; format!("DRAUGHTING_MODEL_ITEM_ASSOCIATION_WITH_PLACEHOLDER({})", a.join(",")) },
UnitPart::DraughtingPreDefinedColour => "DRAUGHTING_PRE_DEFINED_COLOUR()".to_string(),
UnitPart::DraughtingPreDefinedCurveFont => "DRAUGHTING_PRE_DEFINED_CURVE_FONT()".to_string(),
UnitPart::DraughtingPreDefinedTextFont => "DRAUGHTING_PRE_DEFINED_TEXT_FONT()".to_string(),
UnitPart::Edge { edge_start, edge_end, .. } => { let a: Vec<String> = vec![match edge_start { Some(r) => format!("#{}", self.id_of_ref_vertex(r)), None => "*".to_string() }, match edge_end { Some(r) => format!("#{}", self.id_of_ref_vertex(r)), None => "*".to_string() }]; format!("EDGE({})", a.join(",")) },
UnitPart::EdgeCurve { edge_geometry, same_sense, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve(edge_geometry)), (if *same_sense { ".T." } else { ".F." }).to_string()]; format!("EDGE_CURVE({})", a.join(",")) },
UnitPart::EdgeLoop => "EDGE_LOOP()".to_string(),
UnitPart::Effectivity { id, .. } => { let a: Vec<String> = vec![step_str(id)]; format!("EFFECTIVITY({})", a.join(",")) },
UnitPart::ElementarySurface { position, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_axis2_placement3d(position))]; format!("ELEMENTARY_SURFACE({})", a.join(",")) },
UnitPart::Expression => "EXPRESSION()".to_string(),
UnitPart::ExternalIdentificationAssignment { source, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_external_source(source))]; format!("EXTERNAL_IDENTIFICATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::ExternalSource { source_id, .. } => { let a: Vec<String> = vec![string_select(source_id)]; format!("EXTERNAL_SOURCE({})", a.join(",")) },
UnitPart::ExternallyDefinedCharacterGlyph => "EXTERNALLY_DEFINED_CHARACTER_GLYPH()".to_string(),
UnitPart::ExternallyDefinedCurveFont => "EXTERNALLY_DEFINED_CURVE_FONT()".to_string(),
UnitPart::ExternallyDefinedHatchStyle => "EXTERNALLY_DEFINED_HATCH_STYLE()".to_string(),
UnitPart::ExternallyDefinedItem { item_id, source, .. } => { let a: Vec<String> = vec![string_select(item_id), format!("#{}", self.id_of_ref_external_source(source))]; format!("EXTERNALLY_DEFINED_ITEM({})", a.join(",")) },
UnitPart::ExternallyDefinedStyle => "EXTERNALLY_DEFINED_STYLE()".to_string(),
UnitPart::ExternallyDefinedSymbol => "EXTERNALLY_DEFINED_SYMBOL()".to_string(),
UnitPart::ExternallyDefinedTextFont => "EXTERNALLY_DEFINED_TEXT_FONT()".to_string(),
UnitPart::ExternallyDefinedTile => "EXTERNALLY_DEFINED_TILE()".to_string(),
UnitPart::ExternallyDefinedTileStyle => "EXTERNALLY_DEFINED_TILE_STYLE()".to_string(),
UnitPart::Face { bounds, .. } => { let a: Vec<String> = vec![format!("({})", bounds.iter().map(|e| format!("#{}", self.id_of_ref_face_bound(e))).collect::<Vec<_>>().join(","))]; format!("FACE({})", a.join(",")) },
UnitPart::FaceBound { bound, orientation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_loop(bound)), (if *orientation { ".T." } else { ".F." }).to_string()]; format!("FACE_BOUND({})", a.join(",")) },
UnitPart::FaceOuterBound => "FACE_OUTER_BOUND()".to_string(),
UnitPart::FaceSurface { face_geometry, same_sense, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_surface(face_geometry)), (if *same_sense { ".T." } else { ".F." }).to_string()]; format!("FACE_SURFACE({})", a.join(",")) },
UnitPart::FillAreaStyle { name, fill_styles, .. } => { let a: Vec<String> = vec![step_str(name), format!("({})", fill_styles.iter().map(|e| format!("#{}", self.id_of_ref_fill_style_select(e))).collect::<Vec<_>>().join(","))]; format!("FILL_AREA_STYLE({})", a.join(",")) },
UnitPart::FillAreaStyleHatching { hatch_line_appearance, start_of_next_hatch_line, point_of_reference_hatch_line, pattern_start, hatch_line_angle, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_style(hatch_line_appearance)), format!("#{}", self.id_of_ref_one_direction_repeat_factor(start_of_next_hatch_line)), format!("#{}", self.id_of_ref_cartesian_point(point_of_reference_hatch_line)), format!("#{}", self.id_of_ref_cartesian_point(pattern_start)), real(*hatch_line_angle)]; format!("FILL_AREA_STYLE_HATCHING({})", a.join(",")) },
UnitPart::FillAreaStyleTileSymbolWithStyle { symbol, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_annotation_symbol_occurrence(symbol))]; format!("FILL_AREA_STYLE_TILE_SYMBOL_WITH_STYLE({})", a.join(",")) },
UnitPart::FillAreaStyleTiles { tiling_pattern, tiles, tiling_scale, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_two_direction_repeat_factor(tiling_pattern)), format!("({})", tiles.iter().map(|e| format!("#{}", self.id_of_ref_fill_area_style_tile_shape_select(e))).collect::<Vec<_>>().join(",")), real(*tiling_scale)]; format!("FILL_AREA_STYLE_TILES({})", a.join(",")) },
UnitPart::FlatnessTolerance => "FLATNESS_TOLERANCE()".to_string(),
UnitPart::FoundedItem => "FOUNDED_ITEM()".to_string(),
UnitPart::FunctionallyDefinedTransformation { name, description, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("FUNCTIONALLY_DEFINED_TRANSFORMATION({})", a.join(",")) },
UnitPart::GeneralDatumReference { base, modifiers, .. } => { let a: Vec<String> = vec![match base { DatumOrCommonDatumRef::CommonDatumList(vs) => format!("COMMON_DATUM_LIST(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_datum_reference_element(e))).collect::<Vec<_>>().join(",")), other => format!("#{}", self.id_of_ref_datum_or_common_datum(other)) }, match modifiers { Some(v) => format!("({})", v.iter().map(|e| match e { DatumReferenceModifierRef::SimpleDatumReferenceModifier(e) => format!("SIMPLE_DATUM_REFERENCE_MODIFIER({})", e.token()), other => format!("#{}", self.id_of_ref_datum_reference_modifier(other)) }).collect::<Vec<_>>().join(",")), None => "$".to_string() }]; format!("GENERAL_DATUM_REFERENCE({})", a.join(",")) },
UnitPart::GeneralProperty { id, name, description, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("GENERAL_PROPERTY({})", a.join(",")) },
UnitPart::GenericExpression => "GENERIC_EXPRESSION()".to_string(),
UnitPart::GenericLiteral => "GENERIC_LITERAL()".to_string(),
UnitPart::GenericProductDefinitionReference { source, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_external_source(source))]; format!("GENERIC_PRODUCT_DEFINITION_REFERENCE({})", a.join(",")) },
UnitPart::GeometricCurveSet => "GEOMETRIC_CURVE_SET()".to_string(),
UnitPart::GeometricItemSpecificUsage => "GEOMETRIC_ITEM_SPECIFIC_USAGE()".to_string(),
UnitPart::GeometricRepresentationContext { coordinate_space_dimension, .. } => { let a: Vec<String> = vec![format!("{}", coordinate_space_dimension)]; format!("GEOMETRIC_REPRESENTATION_CONTEXT({})", a.join(",")) },
UnitPart::GeometricRepresentationItem => "GEOMETRIC_REPRESENTATION_ITEM()".to_string(),
UnitPart::GeometricSet { elements, .. } => { let a: Vec<String> = vec![format!("({})", elements.iter().map(|e| format!("#{}", self.id_of_ref_geometric_set_select(e))).collect::<Vec<_>>().join(","))]; format!("GEOMETRIC_SET({})", a.join(",")) },
UnitPart::GeometricTolerance { name, description, magnitude, toleranced_shape_aspect, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, match magnitude { Some(r) => format!("#{}", self.id_of_ref_length_measure_with_unit(r)), None => "$".to_string() }, format!("#{}", self.id_of_ref_geometric_tolerance_target(toleranced_shape_aspect))]; format!("GEOMETRIC_TOLERANCE({})", a.join(",")) },
UnitPart::GeometricToleranceWithDatumReference { datum_system, .. } => { let a: Vec<String> = vec![format!("({})", datum_system.iter().map(|e| format!("#{}", self.id_of_ref_datum_system_or_reference(e))).collect::<Vec<_>>().join(","))]; format!("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE({})", a.join(",")) },
UnitPart::GeometricToleranceWithDefinedAreaUnit { area_type, second_unit_size, .. } => { let a: Vec<String> = vec![area_type.token().to_string(), match second_unit_size { Some(r) => format!("#{}", self.id_of_ref_length_or_plane_angle_measure_with_unit_select(r)), None => "$".to_string() }]; format!("GEOMETRIC_TOLERANCE_WITH_DEFINED_AREA_UNIT({})", a.join(",")) },
UnitPart::GeometricToleranceWithDefinedUnit { unit_size, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_length_or_plane_angle_measure_with_unit_select(unit_size))]; format!("GEOMETRIC_TOLERANCE_WITH_DEFINED_UNIT({})", a.join(",")) },
UnitPart::GeometricToleranceWithMaximumTolerance { maximum_upper_tolerance, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_length_measure_with_unit(maximum_upper_tolerance))]; format!("GEOMETRIC_TOLERANCE_WITH_MAXIMUM_TOLERANCE({})", a.join(",")) },
UnitPart::GeometricToleranceWithModifiers { modifiers, .. } => { let a: Vec<String> = vec![format!("({})", modifiers.iter().map(|e| e.token().to_string()).collect::<Vec<_>>().join(","))]; format!("GEOMETRIC_TOLERANCE_WITH_MODIFIERS({})", a.join(",")) },
UnitPart::GeometricallyBoundedSurfaceShapeRepresentation => "GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION()".to_string(),
UnitPart::GeometricallyBoundedWireframeShapeRepresentation => "GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION()".to_string(),
UnitPart::GlobalUncertaintyAssignedContext { uncertainty, .. } => { let a: Vec<String> = vec![format!("({})", uncertainty.iter().map(|e| format!("#{}", self.id_of_ref_uncertainty_measure_with_unit(e))).collect::<Vec<_>>().join(","))]; format!("GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT({})", a.join(",")) },
UnitPart::GlobalUnitAssignedContext { units, .. } => { let a: Vec<String> = vec![format!("({})", units.iter().map(|e| format!("#{}", self.id_of_ref_unit(e))).collect::<Vec<_>>().join(","))]; format!("GLOBAL_UNIT_ASSIGNED_CONTEXT({})", a.join(",")) },
UnitPart::Group { name, description, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("GROUP({})", a.join(",")) },
UnitPart::GroupAssignment { assigned_group, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_group(assigned_group))]; format!("GROUP_ASSIGNMENT({})", a.join(",")) },
UnitPart::IdentificationAssignment { assigned_id, role, .. } => { let a: Vec<String> = vec![step_str(assigned_id), format!("#{}", self.id_of_ref_identification_role(role))]; format!("IDENTIFICATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::IntLiteral => "INT_LITERAL()".to_string(),
UnitPart::IntegerRepresentationItem => "INTEGER_REPRESENTATION_ITEM()".to_string(),
UnitPart::IntersectionCurve => "INTERSECTION_CURVE()".to_string(),
UnitPart::Invisibility { invisible_items, .. } => { let a: Vec<String> = vec![format!("({})", invisible_items.iter().map(|e| format!("#{}", self.id_of_ref_invisible_item(e))).collect::<Vec<_>>().join(","))]; format!("INVISIBILITY({})", a.join(",")) },
UnitPart::ItemDefinedTransformation { name, description, transform_item_1, transform_item_2, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_representation_item(transform_item_1)), format!("#{}", self.id_of_ref_representation_item(transform_item_2))]; format!("ITEM_DEFINED_TRANSFORMATION({})", a.join(",")) },
UnitPart::ItemIdentifiedRepresentationUsage { name, description, definition, used_representation, identified_item, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_item_identified_representation_usage_definition(definition)), format!("#{}", self.id_of_ref_representation(used_representation)), match identified_item { ItemIdentifiedRepresentationUsageSelectRef::ListRepresentationItem(vs) => format!("LIST_REPRESENTATION_ITEM(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_representation_item(e))).collect::<Vec<_>>().join(",")), ItemIdentifiedRepresentationUsageSelectRef::SetRepresentationItem(vs) => format!("SET_REPRESENTATION_ITEM(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_representation_item(e))).collect::<Vec<_>>().join(",")), other => format!("#{}", self.id_of_ref_item_identified_representation_usage_select(other)) }]; format!("ITEM_IDENTIFIED_REPRESENTATION_USAGE({})", a.join(",")) },
UnitPart::LeaderCurve => "LEADER_CURVE()".to_string(),
UnitPart::LeaderDirectedCallout => "LEADER_DIRECTED_CALLOUT()".to_string(),
UnitPart::LeaderTerminator => "LEADER_TERMINATOR()".to_string(),
UnitPart::LengthMeasureWithUnit => "LENGTH_MEASURE_WITH_UNIT()".to_string(),
UnitPart::LengthUnit => "LENGTH_UNIT()".to_string(),
UnitPart::LineProfileTolerance => "LINE_PROFILE_TOLERANCE()".to_string(),
UnitPart::LiteralNumber { the_value, .. } => { let a: Vec<String> = vec![real(*the_value)]; format!("LITERAL_NUMBER({})", a.join(",")) },
UnitPart::Loop => "LOOP()".to_string(),
UnitPart::ManifoldSolidBrep { outer, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_closed_shell(outer))]; format!("MANIFOLD_SOLID_BREP({})", a.join(",")) },
UnitPart::ManifoldSurfaceShapeRepresentation => "MANIFOLD_SURFACE_SHAPE_REPRESENTATION()".to_string(),
UnitPart::MappedItem { mapping_source, mapping_target, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_representation_map(mapping_source)), format!("#{}", self.id_of_ref_representation_item(mapping_target))]; format!("MAPPED_ITEM({})", a.join(",")) },
UnitPart::MassUnit => "MASS_UNIT()".to_string(),
UnitPart::MeasureRepresentationItem => "MEASURE_REPRESENTATION_ITEM()".to_string(),
UnitPart::MeasureWithUnit { value_component, unit_component, .. } => { let a: Vec<String> = vec![measure(value_component), format!("#{}", self.id_of_ref_unit(unit_component))]; format!("MEASURE_WITH_UNIT({})", a.join(",")) },
UnitPart::MechanicalContext => "MECHANICAL_CONTEXT()".to_string(),
UnitPart::MechanicalDesignAndDraughtingRelationship => "MECHANICAL_DESIGN_AND_DRAUGHTING_RELATIONSHIP()".to_string(),
UnitPart::ModelGeometricView => "MODEL_GEOMETRIC_VIEW()".to_string(),
UnitPart::ModifiedGeometricTolerance { modifier, .. } => { let a: Vec<String> = vec![modifier.token().to_string()]; format!("MODIFIED_GEOMETRIC_TOLERANCE({})", a.join(",")) },
UnitPart::NamedUnit { dimensions, .. } => { let a: Vec<String> = vec![match dimensions { Some(r) => format!("#{}", self.id_of_ref_dimensional_exponents(r)), None => "*".to_string() }]; format!("NAMED_UNIT({})", a.join(",")) },
UnitPart::NextAssemblyUsageOccurrence => "NEXT_ASSEMBLY_USAGE_OCCURRENCE()".to_string(),
UnitPart::NumericExpression => "NUMERIC_EXPRESSION()".to_string(),
UnitPart::OneDirectionRepeatFactor { repeat_factor, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_vector(repeat_factor))]; format!("ONE_DIRECTION_REPEAT_FACTOR({})", a.join(",")) },
UnitPart::OpenShell => "OPEN_SHELL()".to_string(),
UnitPart::OrganizationalAddress { organizations, description, .. } => { let a: Vec<String> = vec![format!("({})", organizations.iter().map(|e| format!("#{}", self.id_of_ref_organization(e))).collect::<Vec<_>>().join(",")), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("ORGANIZATIONAL_ADDRESS({})", a.join(",")) },
UnitPart::OrientedClosedShell { closed_shell_element, orientation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_closed_shell(closed_shell_element)), (if *orientation { ".T." } else { ".F." }).to_string()]; format!("ORIENTED_CLOSED_SHELL({})", a.join(",")) },
UnitPart::OrientedEdge { edge_element, orientation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_edge(edge_element)), (if *orientation { ".T." } else { ".F." }).to_string()]; format!("ORIENTED_EDGE({})", a.join(",")) },
UnitPart::OverRidingStyledItem { over_ridden_style, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_styled_item(over_ridden_style))]; format!("OVER_RIDING_STYLED_ITEM({})", a.join(",")) },
UnitPart::ParallelismTolerance => "PARALLELISM_TOLERANCE()".to_string(),
UnitPart::ParametricRepresentationContext => "PARAMETRIC_REPRESENTATION_CONTEXT()".to_string(),
UnitPart::Path { edge_list, .. } => { let a: Vec<String> = vec![format!("({})", edge_list.iter().map(|e| format!("#{}", self.id_of_ref_oriented_edge(e))).collect::<Vec<_>>().join(","))]; format!("PATH({})", a.join(",")) },
UnitPart::Pcurve { basis_surface, reference_to_curve, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_surface(basis_surface)), format!("#{}", self.id_of_ref_definitional_representation(reference_to_curve))]; format!("PCURVE({})", a.join(",")) },
UnitPart::PerpendicularityTolerance => "PERPENDICULARITY_TOLERANCE()".to_string(),
UnitPart::PersonAndOrganizationAddress => "PERSON_AND_ORGANIZATION_ADDRESS()".to_string(),
UnitPart::PersonAndOrganizationAssignment { assigned_person_and_organization, role, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_person_and_organization(assigned_person_and_organization)), format!("#{}", self.id_of_ref_person_and_organization_role(role))]; format!("PERSON_AND_ORGANIZATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::PersonalAddress { people, description, .. } => { let a: Vec<String> = vec![format!("({})", people.iter().map(|e| format!("#{}", self.id_of_ref_person(e))).collect::<Vec<_>>().join(",")), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("PERSONAL_ADDRESS({})", a.join(",")) },
UnitPart::PlacedDatumTargetFeature => "PLACED_DATUM_TARGET_FEATURE()".to_string(),
UnitPart::Placement { location, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_cartesian_point(location))]; format!("PLACEMENT({})", a.join(",")) },
UnitPart::PlanarBox { placement, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_axis2_placement(placement))]; format!("PLANAR_BOX({})", a.join(",")) },
UnitPart::PlanarExtent { size_in_x, size_in_y, .. } => { let a: Vec<String> = vec![real(*size_in_x), real(*size_in_y)]; format!("PLANAR_EXTENT({})", a.join(",")) },
UnitPart::PlaneAngleMeasureWithUnit => "PLANE_ANGLE_MEASURE_WITH_UNIT()".to_string(),
UnitPart::PlaneAngleUnit => "PLANE_ANGLE_UNIT()".to_string(),
UnitPart::Point => "POINT()".to_string(),
UnitPart::PointStyle { name, marker, marker_size, marker_colour, .. } => { let a: Vec<String> = vec![step_str(name), match marker { Some(r) => match r { MarkerSelectRef::MarkerType(e) => format!("MARKER_TYPE({})", e.token()), other => format!("#{}", self.id_of_ref_marker_select(other)) }, None => "$".to_string() }, match marker_size { Some(r) => match r { SizeSelectRef::DescriptiveMeasure(x) => format!("DESCRIPTIVE_MEASURE({})", step_str(x)), SizeSelectRef::PositiveLengthMeasure(x) => format!("POSITIVE_LENGTH_MEASURE({})", real(*x)), other => format!("#{}", self.id_of_ref_size_select(other)) }, None => "$".to_string() }, match marker_colour { Some(r) => format!("#{}", self.id_of_ref_colour(r)), None => "$".to_string() }]; format!("POINT_STYLE({})", a.join(",")) },
UnitPart::PolyLoop { polygon, .. } => { let a: Vec<String> = vec![format!("({})", polygon.iter().map(|e| format!("#{}", self.id_of_ref_cartesian_point(e))).collect::<Vec<_>>().join(","))]; format!("POLY_LOOP({})", a.join(",")) },
UnitPart::PositionTolerance => "POSITION_TOLERANCE()".to_string(),
UnitPart::PreDefinedCharacterGlyph => "PRE_DEFINED_CHARACTER_GLYPH()".to_string(),
UnitPart::PreDefinedColour => "PRE_DEFINED_COLOUR()".to_string(),
UnitPart::PreDefinedCurveFont => "PRE_DEFINED_CURVE_FONT()".to_string(),
UnitPart::PreDefinedItem { name, .. } => { let a: Vec<String> = vec![step_str(name)]; format!("PRE_DEFINED_ITEM({})", a.join(",")) },
UnitPart::PreDefinedMarker => "PRE_DEFINED_MARKER()".to_string(),
UnitPart::PreDefinedPointMarkerSymbol => "PRE_DEFINED_POINT_MARKER_SYMBOL()".to_string(),
UnitPart::PreDefinedPresentationStyle => "PRE_DEFINED_PRESENTATION_STYLE()".to_string(),
UnitPart::PreDefinedSurfaceSideStyle => "PRE_DEFINED_SURFACE_SIDE_STYLE()".to_string(),
UnitPart::PreDefinedSymbol => "PRE_DEFINED_SYMBOL()".to_string(),
UnitPart::PreDefinedTerminatorSymbol => "PRE_DEFINED_TERMINATOR_SYMBOL()".to_string(),
UnitPart::PreDefinedTextFont => "PRE_DEFINED_TEXT_FONT()".to_string(),
UnitPart::PreDefinedTile => "PRE_DEFINED_TILE()".to_string(),
UnitPart::PresentationArea => "PRESENTATION_AREA()".to_string(),
UnitPart::PresentationRepresentation => "PRESENTATION_REPRESENTATION()".to_string(),
UnitPart::PresentationSet => "PRESENTATION_SET()".to_string(),
UnitPart::PresentationStyleAssignment { styles, .. } => { let a: Vec<String> = vec![format!("({})", styles.iter().map(|e| match e { PresentationStyleSelectRef::NullStyle(e) => format!("NULL_STYLE({})", e.token()), other => format!("#{}", self.id_of_ref_presentation_style_select(other)) }).collect::<Vec<_>>().join(","))]; format!("PRESENTATION_STYLE_ASSIGNMENT({})", a.join(",")) },
UnitPart::PresentationStyleByContext { style_context, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_style_context_select(style_context))]; format!("PRESENTATION_STYLE_BY_CONTEXT({})", a.join(",")) },
UnitPart::PresentationView => "PRESENTATION_VIEW()".to_string(),
UnitPart::PresentedItem => "PRESENTED_ITEM()".to_string(),
UnitPart::Product { id, name, description, frame_of_reference, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("({})", frame_of_reference.iter().map(|e| format!("#{}", self.id_of_ref_product_context(e))).collect::<Vec<_>>().join(","))]; format!("PRODUCT({})", a.join(",")) },
UnitPart::ProductCategory { name, description, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("PRODUCT_CATEGORY({})", a.join(",")) },
UnitPart::ProductConcept { id, name, description, market_context, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_concept_context(market_context))]; format!("PRODUCT_CONCEPT({})", a.join(",")) },
UnitPart::ProductConceptFeature { id, name, description, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("PRODUCT_CONCEPT_FEATURE({})", a.join(",")) },
UnitPart::ProductConceptFeatureCategory => "PRODUCT_CONCEPT_FEATURE_CATEGORY()".to_string(),
UnitPart::ProductContext { discipline_type, .. } => { let a: Vec<String> = vec![step_str(discipline_type)]; format!("PRODUCT_CONTEXT({})", a.join(",")) },
UnitPart::ProductDefinition { id, description, formation, frame_of_reference, .. } => { let a: Vec<String> = vec![step_str(id), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_definition_formation(formation)), format!("#{}", self.id_of_ref_product_definition_context(frame_of_reference))]; format!("PRODUCT_DEFINITION({})", a.join(",")) },
UnitPart::ProductDefinitionContext { life_cycle_stage, .. } => { let a: Vec<String> = vec![step_str(life_cycle_stage)]; format!("PRODUCT_DEFINITION_CONTEXT({})", a.join(",")) },
UnitPart::ProductDefinitionEffectivity { usage, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_product_definition_relationship(usage))]; format!("PRODUCT_DEFINITION_EFFECTIVITY({})", a.join(",")) },
UnitPart::ProductDefinitionFormation { id, description, of_product, .. } => { let a: Vec<String> = vec![step_str(id), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product(of_product))]; format!("PRODUCT_DEFINITION_FORMATION({})", a.join(",")) },
UnitPart::ProductDefinitionFormationWithSpecifiedSource { make_or_buy, .. } => { let a: Vec<String> = vec![make_or_buy.token().to_string()]; format!("PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE({})", a.join(",")) },
UnitPart::ProductDefinitionOccurrence { id, name, description, definition, quantity, .. } => { let a: Vec<String> = vec![step_str(id), match name { Some(x) => step_str(x), None => "$".to_string() }, match description { Some(x) => step_str(x), None => "$".to_string() }, match definition { Some(r) => format!("#{}", self.id_of_ref_product_definition_or_reference(r)), None => "$".to_string() }, match quantity { Some(r) => format!("#{}", self.id_of_ref_measure_with_unit(r)), None => "$".to_string() }]; format!("PRODUCT_DEFINITION_OCCURRENCE({})", a.join(",")) },
UnitPart::ProductDefinitionRelationship { id, name, description, relating_product_definition, related_product_definition, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_definition_or_reference(relating_product_definition)), format!("#{}", self.id_of_ref_product_definition_or_reference(related_product_definition))]; format!("PRODUCT_DEFINITION_RELATIONSHIP({})", a.join(",")) },
UnitPart::ProductDefinitionRelationshipRelationship { id, name, description, relating, related, .. } => { let a: Vec<String> = vec![step_str(id), step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_definition_relationship(relating)), format!("#{}", self.id_of_ref_product_definition_relationship(related))]; format!("PRODUCT_DEFINITION_RELATIONSHIP_RELATIONSHIP({})", a.join(",")) },
UnitPart::ProductDefinitionShape => "PRODUCT_DEFINITION_SHAPE()".to_string(),
UnitPart::ProductDefinitionUsage => "PRODUCT_DEFINITION_USAGE()".to_string(),
UnitPart::ProductDefinitionWithAssociatedDocuments { documentation_ids, .. } => { let a: Vec<String> = vec![format!("({})", documentation_ids.iter().map(|e| format!("#{}", self.id_of_ref_document(e))).collect::<Vec<_>>().join(","))]; format!("PRODUCT_DEFINITION_WITH_ASSOCIATED_DOCUMENTS({})", a.join(",")) },
UnitPart::ProductRelatedProductCategory { products, .. } => { let a: Vec<String> = vec![format!("({})", products.iter().map(|e| format!("#{}", self.id_of_ref_product(e))).collect::<Vec<_>>().join(","))]; format!("PRODUCT_RELATED_PRODUCT_CATEGORY({})", a.join(",")) },
UnitPart::ProjectedZoneDefinition { projection_end, projected_length, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_shape_aspect(projection_end)), format!("#{}", self.id_of_ref_length_measure_with_unit(projected_length))]; format!("PROJECTED_ZONE_DEFINITION({})", a.join(",")) },
UnitPart::PropertyDefinition { name, description, definition, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_characterized_definition(definition))]; format!("PROPERTY_DEFINITION({})", a.join(",")) },
UnitPart::PropertyDefinitionRepresentation { definition, used_representation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_represented_definition(definition)), format!("#{}", self.id_of_ref_representation(used_representation))]; format!("PROPERTY_DEFINITION_REPRESENTATION({})", a.join(",")) },
UnitPart::QualifiedRepresentationItem { qualifiers, .. } => { let a: Vec<String> = vec![format!("({})", qualifiers.iter().map(|e| format!("#{}", self.id_of_ref_value_qualifier(e))).collect::<Vec<_>>().join(","))]; format!("QUALIFIED_REPRESENTATION_ITEM({})", a.join(",")) },
UnitPart::QuasiUniformCurve => "QUASI_UNIFORM_CURVE()".to_string(),
UnitPart::QuasiUniformSurface => "QUASI_UNIFORM_SURFACE()".to_string(),
UnitPart::RatioMeasureWithUnit => "RATIO_MEASURE_WITH_UNIT()".to_string(),
UnitPart::RatioUnit => "RATIO_UNIT()".to_string(),
UnitPart::RationalBSplineCurve { weights_data, .. } => { let a: Vec<String> = vec![format!("({})", weights_data.iter().map(|e| real(*e)).collect::<Vec<_>>().join(","))]; format!("RATIONAL_B_SPLINE_CURVE({})", a.join(",")) },
UnitPart::RationalBSplineSurface { weights_data, .. } => { let a: Vec<String> = vec![format!("({})", weights_data.iter().map(|e| { let row: Vec<String> = e.iter().map(|e| real(*e)).collect(); format!("({})", row.join(",")) }).collect::<Vec<_>>().join(","))]; format!("RATIONAL_B_SPLINE_SURFACE({})", a.join(",")) },
UnitPart::RealLiteral => "REAL_LITERAL()".to_string(),
UnitPart::RealRepresentationItem => "REAL_REPRESENTATION_ITEM()".to_string(),
UnitPart::RepositionedTessellatedItem { location, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_axis2_placement3d(location))]; format!("REPOSITIONED_TESSELLATED_ITEM({})", a.join(",")) },
UnitPart::Representation { name, items, context_of_items, .. } => { let a: Vec<String> = vec![step_str(name), format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_representation_item(e))).collect::<Vec<_>>().join(",")), format!("#{}", self.id_of_ref_representation_context(context_of_items))]; format!("REPRESENTATION({})", a.join(",")) },
UnitPart::RepresentationContext { context_identifier, context_type, .. } => { let a: Vec<String> = vec![step_str(context_identifier), step_str(context_type)]; format!("REPRESENTATION_CONTEXT({})", a.join(",")) },
UnitPart::RepresentationItem { name, .. } => { let a: Vec<String> = vec![step_str(name)]; format!("REPRESENTATION_ITEM({})", a.join(",")) },
UnitPart::RepresentationMap { mapping_origin, mapped_representation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_representation_item(mapping_origin)), format!("#{}", self.id_of_ref_representation(mapped_representation))]; format!("REPRESENTATION_MAP({})", a.join(",")) },
UnitPart::RepresentationReference { id, context_of_items, .. } => { let a: Vec<String> = vec![step_str(id), format!("#{}", self.id_of_ref_representation_context_reference(context_of_items))]; format!("REPRESENTATION_REFERENCE({})", a.join(",")) },
UnitPart::RepresentationRelationship { name, description, rep_1, rep_2, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_representation_or_representation_reference(rep_1)), format!("#{}", self.id_of_ref_representation_or_representation_reference(rep_2))]; format!("REPRESENTATION_RELATIONSHIP({})", a.join(",")) },
UnitPart::RepresentationRelationshipWithTransformation { transformation_operator, .. } => { let a: Vec<String> = vec![match transformation_operator { TransformationRef::ListItemDefinedTransformation(vs) => format!("LIST_ITEM_DEFINED_TRANSFORMATION(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_item_defined_transformation(e))).collect::<Vec<_>>().join(",")), TransformationRef::SetItemDefinedTransformation(vs) => format!("SET_ITEM_DEFINED_TRANSFORMATION(({}))", vs.iter().map(|e| format!("#{}", self.id_of_ref_item_defined_transformation(e))).collect::<Vec<_>>().join(",")), other => format!("#{}", self.id_of_ref_transformation(other)) }]; format!("REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION({})", a.join(",")) },
UnitPart::RoundnessTolerance => "ROUNDNESS_TOLERANCE()".to_string(),
UnitPart::SeamCurve => "SEAM_CURVE()".to_string(),
UnitPart::SecurityClassificationAssignment { assigned_security_classification, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_security_classification(assigned_security_classification))]; format!("SECURITY_CLASSIFICATION_ASSIGNMENT({})", a.join(",")) },
UnitPart::ShapeAspect { name, description, of_shape, product_definitional, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_product_definition_shape(of_shape)), match product_definitional { Some(x) => x.token().to_string(), None => "*".to_string() }]; format!("SHAPE_ASPECT({})", a.join(",")) },
UnitPart::ShapeAspectRelationship { name, description, relating_shape_aspect, related_shape_aspect, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }, format!("#{}", self.id_of_ref_shape_aspect(relating_shape_aspect)), format!("#{}", self.id_of_ref_shape_aspect(related_shape_aspect))]; format!("SHAPE_ASPECT_RELATIONSHIP({})", a.join(",")) },
UnitPart::ShapeDefinitionRepresentation => "SHAPE_DEFINITION_REPRESENTATION()".to_string(),
UnitPart::ShapeDimensionRepresentation => "SHAPE_DIMENSION_REPRESENTATION()".to_string(),
UnitPart::ShapeRepresentation => "SHAPE_REPRESENTATION()".to_string(),
UnitPart::ShapeRepresentationRelationship => "SHAPE_REPRESENTATION_RELATIONSHIP()".to_string(),
UnitPart::ShapeRepresentationWithParameters => "SHAPE_REPRESENTATION_WITH_PARAMETERS()".to_string(),
UnitPart::ShellBasedSurfaceModel { sbsm_boundary, .. } => { let a: Vec<String> = vec![format!("({})", sbsm_boundary.iter().map(|e| format!("#{}", self.id_of_ref_shell(e))).collect::<Vec<_>>().join(","))]; format!("SHELL_BASED_SURFACE_MODEL({})", a.join(",")) },
UnitPart::SiUnit { prefix, name, .. } => { let a: Vec<String> = vec![match prefix { Some(x) => x.token().to_string(), None => "$".to_string() }, name.token().to_string()]; format!("SI_UNIT({})", a.join(",")) },
UnitPart::SimpleGenericExpression => "SIMPLE_GENERIC_EXPRESSION()".to_string(),
UnitPart::SimpleNumericExpression => "SIMPLE_NUMERIC_EXPRESSION()".to_string(),
UnitPart::SolidAngleUnit => "SOLID_ANGLE_UNIT()".to_string(),
UnitPart::SolidModel => "SOLID_MODEL()".to_string(),
UnitPart::StartRequest { items, .. } => { let a: Vec<String> = vec![format!("({})", items.iter().map(|e| format!("#{}", self.id_of_ref_start_request_item(e))).collect::<Vec<_>>().join(","))]; format!("START_REQUEST({})", a.join(",")) },
UnitPart::StateObserved { name, description, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("STATE_OBSERVED({})", a.join(",")) },
UnitPart::StateType { name, description, .. } => { let a: Vec<String> = vec![step_str(name), match description { Some(x) => step_str(x), None => "$".to_string() }]; format!("STATE_TYPE({})", a.join(",")) },
UnitPart::StraightnessTolerance => "STRAIGHTNESS_TOLERANCE()".to_string(),
UnitPart::StyledItem { styles, item, .. } => { let a: Vec<String> = vec![format!("({})", styles.iter().map(|e| format!("#{}", self.id_of_ref_presentation_style_assignment(e))).collect::<Vec<_>>().join(",")), format!("#{}", self.id_of_ref_styled_item_target(item))]; format!("STYLED_ITEM({})", a.join(",")) },
UnitPart::Surface => "SURFACE()".to_string(),
UnitPart::SurfaceCurve { curve_3d, associated_geometry, master_representation, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve(curve_3d)), format!("({})", associated_geometry.iter().map(|e| format!("#{}", self.id_of_ref_pcurve_or_surface(e))).collect::<Vec<_>>().join(",")), master_representation.token().to_string()]; format!("SURFACE_CURVE({})", a.join(",")) },
UnitPart::SurfaceProfileTolerance => "SURFACE_PROFILE_TOLERANCE()".to_string(),
UnitPart::SurfaceSideStyle { name, styles, .. } => { let a: Vec<String> = vec![step_str(name), format!("({})", styles.iter().map(|e| format!("#{}", self.id_of_ref_surface_style_element_select(e))).collect::<Vec<_>>().join(","))]; format!("SURFACE_SIDE_STYLE({})", a.join(",")) },
UnitPart::SurfaceStyleBoundary { style_of_boundary, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_or_render(style_of_boundary))]; format!("SURFACE_STYLE_BOUNDARY({})", a.join(",")) },
UnitPart::SurfaceStyleControlGrid { style_of_control_grid, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_or_render(style_of_control_grid))]; format!("SURFACE_STYLE_CONTROL_GRID({})", a.join(",")) },
UnitPart::SurfaceStyleFillArea { fill_area, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_fill_area_style(fill_area))]; format!("SURFACE_STYLE_FILL_AREA({})", a.join(",")) },
UnitPart::SurfaceStyleParameterLine { style_of_parameter_lines, direction_counts, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_or_render(style_of_parameter_lines)), format!("({})", direction_counts.iter().map(|e| int_measure(e)).collect::<Vec<_>>().join(","))]; format!("SURFACE_STYLE_PARAMETER_LINE({})", a.join(",")) },
UnitPart::SurfaceStyleReflectanceAmbient { ambient_reflectance, .. } => { let a: Vec<String> = vec![real(*ambient_reflectance)]; format!("SURFACE_STYLE_REFLECTANCE_AMBIENT({})", a.join(",")) },
UnitPart::SurfaceStyleRendering { rendering_method, surface_colour, .. } => { let a: Vec<String> = vec![rendering_method.token().to_string(), format!("#{}", self.id_of_ref_colour(surface_colour))]; format!("SURFACE_STYLE_RENDERING({})", a.join(",")) },
UnitPart::SurfaceStyleRenderingWithProperties { properties, .. } => { let a: Vec<String> = vec![format!("({})", properties.iter().map(|e| format!("#{}", self.id_of_ref_rendering_properties_select(e))).collect::<Vec<_>>().join(","))]; format!("SURFACE_STYLE_RENDERING_WITH_PROPERTIES({})", a.join(",")) },
UnitPart::SurfaceStyleSegmentationCurve { style_of_segmentation_curve, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_or_render(style_of_segmentation_curve))]; format!("SURFACE_STYLE_SEGMENTATION_CURVE({})", a.join(",")) },
UnitPart::SurfaceStyleSilhouette { style_of_silhouette, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_curve_or_render(style_of_silhouette))]; format!("SURFACE_STYLE_SILHOUETTE({})", a.join(",")) },
UnitPart::SurfaceStyleUsage { side, style, .. } => { let a: Vec<String> = vec![side.token().to_string(), format!("#{}", self.id_of_ref_surface_side_style_select(style))]; format!("SURFACE_STYLE_USAGE({})", a.join(",")) },
UnitPart::SymbolRepresentation => "SYMBOL_REPRESENTATION()".to_string(),
UnitPart::SymbolStyle { name, style_of_symbol, .. } => { let a: Vec<String> = vec![step_str(name), format!("#{}", self.id_of_ref_symbol_style_select(style_of_symbol))]; format!("SYMBOL_STYLE({})", a.join(",")) },
UnitPart::TerminatorSymbol { annotated_curve, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_annotation_curve_occurrence(annotated_curve))]; format!("TERMINATOR_SYMBOL({})", a.join(",")) },
UnitPart::TessellatedGeometricSet { children, .. } => { let a: Vec<String> = vec![format!("({})", children.iter().map(|e| format!("#{}", self.id_of_ref_tessellated_item(e))).collect::<Vec<_>>().join(","))]; format!("TESSELLATED_GEOMETRIC_SET({})", a.join(",")) },
UnitPart::TessellatedItem => "TESSELLATED_ITEM()".to_string(),
UnitPart::TessellatedShapeRepresentation => "TESSELLATED_SHAPE_REPRESENTATION()".to_string(),
UnitPart::TessellatedStructuredItem => "TESSELLATED_STRUCTURED_ITEM()".to_string(),
UnitPart::TextLiteral { literal, placement, alignment, path, font, .. } => { let a: Vec<String> = vec![step_str(literal), format!("#{}", self.id_of_ref_axis2_placement(placement)), step_str(alignment), path.token().to_string(), format!("#{}", self.id_of_ref_font_select(font))]; format!("TEXT_LITERAL({})", a.join(",")) },
UnitPart::TextStyle { name, character_appearance, .. } => { let a: Vec<String> = vec![step_str(name), format!("#{}", self.id_of_ref_character_style_select(character_appearance))]; format!("TEXT_STYLE({})", a.join(",")) },
UnitPart::TextStyleWithBoxCharacteristics { characteristics, .. } => { let a: Vec<String> = vec![format!("({})", characteristics.iter().map(|e| measure(e)).collect::<Vec<_>>().join(","))]; format!("TEXT_STYLE_WITH_BOX_CHARACTERISTICS({})", a.join(",")) },
UnitPart::TextureStyleSpecification => "TEXTURE_STYLE_SPECIFICATION()".to_string(),
UnitPart::TextureStyleTessellationSpecification => "TEXTURE_STYLE_TESSELLATION_SPECIFICATION()".to_string(),
UnitPart::TimeUnit => "TIME_UNIT()".to_string(),
UnitPart::ToleranceZone { defining_tolerance, form, .. } => { let a: Vec<String> = vec![format!("({})", defining_tolerance.iter().map(|e| format!("#{}", self.id_of_ref_tolerance_zone_target(e))).collect::<Vec<_>>().join(",")), format!("#{}", self.id_of_ref_tolerance_zone_form(form))]; format!("TOLERANCE_ZONE({})", a.join(",")) },
UnitPart::ToleranceZoneDefinition { zone, boundaries, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_tolerance_zone(zone)), format!("({})", boundaries.iter().map(|e| format!("#{}", self.id_of_ref_shape_aspect(e))).collect::<Vec<_>>().join(","))]; format!("TOLERANCE_ZONE_DEFINITION({})", a.join(",")) },
UnitPart::ToleranceZoneWithDatum { datum_reference, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_datum_system(datum_reference))]; format!("TOLERANCE_ZONE_WITH_DATUM({})", a.join(",")) },
UnitPart::TopologicalRepresentationItem => "TOPOLOGICAL_REPRESENTATION_ITEM()".to_string(),
UnitPart::ToroidalSurface { major_radius, minor_radius, .. } => { let a: Vec<String> = vec![real(*major_radius), real(*minor_radius)]; format!("TOROIDAL_SURFACE({})", a.join(",")) },
UnitPart::TwoDirectionRepeatFactor { second_repeat_factor, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_vector(second_repeat_factor))]; format!("TWO_DIRECTION_REPEAT_FACTOR({})", a.join(",")) },
UnitPart::UnequallyDisposedGeometricTolerance { displacement, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_length_measure_with_unit(displacement))]; format!("UNEQUALLY_DISPOSED_GEOMETRIC_TOLERANCE({})", a.join(",")) },
UnitPart::UniformCurve => "UNIFORM_CURVE()".to_string(),
UnitPart::UniformSurface => "UNIFORM_SURFACE()".to_string(),
UnitPart::ValueRepresentationItem { value_component, .. } => { let a: Vec<String> = vec![measure(value_component)]; format!("VALUE_REPRESENTATION_ITEM({})", a.join(",")) },
UnitPart::Vector { orientation, magnitude, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_direction(orientation)), real(*magnitude)]; format!("VECTOR({})", a.join(",")) },
UnitPart::Vertex => "VERTEX()".to_string(),
UnitPart::VertexPoint { vertex_geometry, .. } => { let a: Vec<String> = vec![format!("#{}", self.id_of_ref_point(vertex_geometry))]; format!("VERTEX_POINT({})", a.join(",")) },
UnitPart::ViewVolume { projection_type, projection_point, view_plane_distance, front_plane_distance, front_plane_clipping, back_plane_distance, back_plane_clipping, view_volume_sides_clipping, view_window, .. } => { let a: Vec<String> = vec![projection_type.token().to_string(), format!("#{}", self.id_of_ref_cartesian_point(projection_point)), real(*view_plane_distance), real(*front_plane_distance), (if *front_plane_clipping { ".T." } else { ".F." }).to_string(), real(*back_plane_distance), (if *back_plane_clipping { ".T." } else { ".F." }).to_string(), (if *view_volume_sides_clipping { ".T." } else { ".F." }).to_string(), format!("#{}", self.id_of_ref_planar_box(view_window))]; format!("VIEW_VOLUME({})", a.join(",")) },
});
}
format!("#{n} = ( {} );\n", part_txt.join(" "))
}
}
}
pub(crate) fn name_of(any: EntityKey) -> &'static str {
match any {
EntityKey::Action(_) => "ACTION",
EntityKey::ActionAssignment(_) => "ACTION_ASSIGNMENT",
EntityKey::ActionDirective(_) => "ACTION_DIRECTIVE",
EntityKey::ActionMethod(_) => "ACTION_METHOD",
EntityKey::ActionMethodRelationship(_) => "ACTION_METHOD_RELATIONSHIP",
EntityKey::ActionProperty(_) => "ACTION_PROPERTY",
EntityKey::ActionRelationship(_) => "ACTION_RELATIONSHIP",
EntityKey::ActionRequestAssignment(_) => "ACTION_REQUEST_ASSIGNMENT",
EntityKey::ActionRequestSolution(_) => "ACTION_REQUEST_SOLUTION",
EntityKey::ActionResource(_) => "ACTION_RESOURCE",
EntityKey::ActionResourceRelationship(_) => "ACTION_RESOURCE_RELATIONSHIP",
EntityKey::ActionResourceRequirement(_) => "ACTION_RESOURCE_REQUIREMENT",
EntityKey::ActionResourceType(_) => "ACTION_RESOURCE_TYPE",
EntityKey::Address(_) => "ADDRESS",
EntityKey::AdvancedBrepShapeRepresentation(_) => "ADVANCED_BREP_SHAPE_REPRESENTATION",
EntityKey::AdvancedFace(_) => "ADVANCED_FACE",
EntityKey::AllAroundShapeAspect(_) => "ALL_AROUND_SHAPE_ASPECT",
EntityKey::AngularLocation(_) => "ANGULAR_LOCATION",
EntityKey::AngularSize(_) => "ANGULAR_SIZE",
EntityKey::AngularityTolerance(_) => "ANGULARITY_TOLERANCE",
EntityKey::AnnotationCurveOccurrence(_) => "ANNOTATION_CURVE_OCCURRENCE",
EntityKey::AnnotationFillAreaOccurrence(_) => "ANNOTATION_FILL_AREA_OCCURRENCE",
EntityKey::AnnotationOccurrence(_) => "ANNOTATION_OCCURRENCE",
EntityKey::AnnotationOccurrenceAssociativity(_) => {
"ANNOTATION_OCCURRENCE_ASSOCIATIVITY"
}
EntityKey::AnnotationOccurrenceRelationship(_) => "ANNOTATION_OCCURRENCE_RELATIONSHIP",
EntityKey::AnnotationPlaceholderLeaderLine(_) => "ANNOTATION_PLACEHOLDER_LEADER_LINE",
EntityKey::AnnotationPlaceholderOccurrence(_) => "ANNOTATION_PLACEHOLDER_OCCURRENCE",
EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(_) => {
"ANNOTATION_PLACEHOLDER_OCCURRENCE_WITH_LEADER_LINE"
}
EntityKey::AnnotationPlane(_) => "ANNOTATION_PLANE",
EntityKey::AnnotationSymbol(_) => "ANNOTATION_SYMBOL",
EntityKey::AnnotationSymbolOccurrence(_) => "ANNOTATION_SYMBOL_OCCURRENCE",
EntityKey::AnnotationText(_) => "ANNOTATION_TEXT",
EntityKey::AnnotationTextCharacter(_) => "ANNOTATION_TEXT_CHARACTER",
EntityKey::AnnotationTextOccurrence(_) => "ANNOTATION_TEXT_OCCURRENCE",
EntityKey::AnnotationToAnnotationLeaderLine(_) => {
"ANNOTATION_TO_ANNOTATION_LEADER_LINE"
}
EntityKey::AnnotationToModelLeaderLine(_) => "ANNOTATION_TO_MODEL_LEADER_LINE",
EntityKey::ApllPoint(_) => "APLL_POINT",
EntityKey::ApllPointWithSurface(_) => "APLL_POINT_WITH_SURFACE",
EntityKey::ApplicationContext(_) => "APPLICATION_CONTEXT",
EntityKey::ApplicationContextElement(_) => "APPLICATION_CONTEXT_ELEMENT",
EntityKey::ApplicationProtocolDefinition(_) => "APPLICATION_PROTOCOL_DEFINITION",
EntityKey::AppliedApprovalAssignment(_) => "APPLIED_APPROVAL_ASSIGNMENT",
EntityKey::AppliedDateAndTimeAssignment(_) => "APPLIED_DATE_AND_TIME_ASSIGNMENT",
EntityKey::AppliedDocumentReference(_) => "APPLIED_DOCUMENT_REFERENCE",
EntityKey::AppliedExternalIdentificationAssignment(_) => {
"APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT"
}
EntityKey::AppliedGroupAssignment(_) => "APPLIED_GROUP_ASSIGNMENT",
EntityKey::AppliedPersonAndOrganizationAssignment(_) => {
"APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT"
}
EntityKey::AppliedPresentedItem(_) => "APPLIED_PRESENTED_ITEM",
EntityKey::AppliedSecurityClassificationAssignment(_) => {
"APPLIED_SECURITY_CLASSIFICATION_ASSIGNMENT"
}
EntityKey::Approval(_) => "APPROVAL",
EntityKey::ApprovalAssignment(_) => "APPROVAL_ASSIGNMENT",
EntityKey::ApprovalDateTime(_) => "APPROVAL_DATE_TIME",
EntityKey::ApprovalPersonOrganization(_) => "APPROVAL_PERSON_ORGANIZATION",
EntityKey::ApprovalRole(_) => "APPROVAL_ROLE",
EntityKey::ApprovalStatus(_) => "APPROVAL_STATUS",
EntityKey::ApproximationTolerance(_) => "APPROXIMATION_TOLERANCE",
EntityKey::ApproximationToleranceDeviation(_) => "APPROXIMATION_TOLERANCE_DEVIATION",
EntityKey::ApproximationToleranceParameter(_) => "APPROXIMATION_TOLERANCE_PARAMETER",
EntityKey::AreaInSet(_) => "AREA_IN_SET",
EntityKey::AreaUnit(_) => "AREA_UNIT",
EntityKey::AscribableState(_) => "ASCRIBABLE_STATE",
EntityKey::AscribableStateRelationship(_) => "ASCRIBABLE_STATE_RELATIONSHIP",
EntityKey::AssemblyComponentUsage(_) => "ASSEMBLY_COMPONENT_USAGE",
EntityKey::AuxiliaryLeaderLine(_) => "AUXILIARY_LEADER_LINE",
EntityKey::Axis1Placement(_) => "AXIS1_PLACEMENT",
EntityKey::Axis2Placement2d(_) => "AXIS2_PLACEMENT_2D",
EntityKey::Axis2Placement3d(_) => "AXIS2_PLACEMENT_3D",
EntityKey::BSplineCurve(_) => "B_SPLINE_CURVE",
EntityKey::BSplineCurveWithKnots(_) => "B_SPLINE_CURVE_WITH_KNOTS",
EntityKey::BSplineSurface(_) => "B_SPLINE_SURFACE",
EntityKey::BSplineSurfaceWithKnots(_) => "B_SPLINE_SURFACE_WITH_KNOTS",
EntityKey::BezierCurve(_) => "BEZIER_CURVE",
EntityKey::BezierSurface(_) => "BEZIER_SURFACE",
EntityKey::BoundedCurve(_) => "BOUNDED_CURVE",
EntityKey::BoundedPcurve(_) => "BOUNDED_PCURVE",
EntityKey::BoundedSurface(_) => "BOUNDED_SURFACE",
EntityKey::BoundedSurfaceCurve(_) => "BOUNDED_SURFACE_CURVE",
EntityKey::BrepWithVoids(_) => "BREP_WITH_VOIDS",
EntityKey::CalendarDate(_) => "CALENDAR_DATE",
EntityKey::CameraImage(_) => "CAMERA_IMAGE",
EntityKey::CameraImage3dWithScale(_) => "CAMERA_IMAGE_3D_WITH_SCALE",
EntityKey::CameraModel(_) => "CAMERA_MODEL",
EntityKey::CameraModelD3(_) => "CAMERA_MODEL_D3",
EntityKey::CameraModelD3MultiClipping(_) => "CAMERA_MODEL_D3_MULTI_CLIPPING",
EntityKey::CameraModelD3WithHlhsr(_) => "CAMERA_MODEL_D3_WITH_HLHSR",
EntityKey::CameraUsage(_) => "CAMERA_USAGE",
EntityKey::CartesianPoint(_) => "CARTESIAN_POINT",
EntityKey::CcDesignApproval(_) => "CC_DESIGN_APPROVAL",
EntityKey::CcDesignDateAndTimeAssignment(_) => "CC_DESIGN_DATE_AND_TIME_ASSIGNMENT",
EntityKey::CcDesignPersonAndOrganizationAssignment(_) => {
"CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT"
}
EntityKey::CcDesignSecurityClassification(_) => "CC_DESIGN_SECURITY_CLASSIFICATION",
EntityKey::CentreOfSymmetry(_) => "CENTRE_OF_SYMMETRY",
EntityKey::Certification(_) => "CERTIFICATION",
EntityKey::CertificationType(_) => "CERTIFICATION_TYPE",
EntityKey::Change(_) => "CHANGE",
EntityKey::ChangeRequest(_) => "CHANGE_REQUEST",
EntityKey::CharacterGlyphStyleOutline(_) => "CHARACTER_GLYPH_STYLE_OUTLINE",
EntityKey::CharacterGlyphStyleStroke(_) => "CHARACTER_GLYPH_STYLE_STROKE",
EntityKey::CharacterizedItemWithinRepresentation(_) => {
"CHARACTERIZED_ITEM_WITHIN_REPRESENTATION"
}
EntityKey::CharacterizedObject(_) => "CHARACTERIZED_OBJECT",
EntityKey::CharacterizedRepresentation(_) => "CHARACTERIZED_REPRESENTATION",
EntityKey::Circle(_) => "CIRCLE",
EntityKey::CircularRunoutTolerance(_) => "CIRCULAR_RUNOUT_TOLERANCE",
EntityKey::ClosedShell(_) => "CLOSED_SHELL",
EntityKey::CoaxialityTolerance(_) => "COAXIALITY_TOLERANCE",
EntityKey::Colour(_) => "COLOUR",
EntityKey::ColourRgb(_) => "COLOUR_RGB",
EntityKey::ColourSpecification(_) => "COLOUR_SPECIFICATION",
EntityKey::CommonDatum(_) => "COMMON_DATUM",
EntityKey::ComplexTriangulatedFace(_) => "COMPLEX_TRIANGULATED_FACE",
EntityKey::ComplexTriangulatedSurfaceSet(_) => "COMPLEX_TRIANGULATED_SURFACE_SET",
EntityKey::CompositeCurve(_) => "COMPOSITE_CURVE",
EntityKey::CompositeCurveSegment(_) => "COMPOSITE_CURVE_SEGMENT",
EntityKey::CompositeGroupShapeAspect(_) => "COMPOSITE_GROUP_SHAPE_ASPECT",
EntityKey::CompositeShapeAspect(_) => "COMPOSITE_SHAPE_ASPECT",
EntityKey::CompositeText(_) => "COMPOSITE_TEXT",
EntityKey::CompoundRepresentationItem(_) => "COMPOUND_REPRESENTATION_ITEM",
EntityKey::ConcentricityTolerance(_) => "CONCENTRICITY_TOLERANCE",
EntityKey::ConfigurationDesign(_) => "CONFIGURATION_DESIGN",
EntityKey::ConfigurationEffectivity(_) => "CONFIGURATION_EFFECTIVITY",
EntityKey::ConfigurationItem(_) => "CONFIGURATION_ITEM",
EntityKey::Conic(_) => "CONIC",
EntityKey::ConicalSurface(_) => "CONICAL_SURFACE",
EntityKey::ConnectedFaceSet(_) => "CONNECTED_FACE_SET",
EntityKey::ConstructiveGeometryRepresentation(_) => {
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION"
}
EntityKey::ConstructiveGeometryRepresentationRelationship(_) => {
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION_RELATIONSHIP"
}
EntityKey::ContextDependentOverRidingStyledItem(_) => {
"CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM"
}
EntityKey::ContextDependentShapeRepresentation(_) => {
"CONTEXT_DEPENDENT_SHAPE_REPRESENTATION"
}
EntityKey::ContextDependentUnit(_) => "CONTEXT_DEPENDENT_UNIT",
EntityKey::ContinuousShapeAspect(_) => "CONTINUOUS_SHAPE_ASPECT",
EntityKey::Contract(_) => "CONTRACT",
EntityKey::ContractType(_) => "CONTRACT_TYPE",
EntityKey::ConversionBasedUnit(_) => "CONVERSION_BASED_UNIT",
EntityKey::CoordinatedUniversalTimeOffset(_) => "COORDINATED_UNIVERSAL_TIME_OFFSET",
EntityKey::CoordinatesList(_) => "COORDINATES_LIST",
EntityKey::Curve(_) => "CURVE",
EntityKey::CurveStyle(_) => "CURVE_STYLE",
EntityKey::CurveStyleFont(_) => "CURVE_STYLE_FONT",
EntityKey::CurveStyleFontAndScaling(_) => "CURVE_STYLE_FONT_AND_SCALING",
EntityKey::CurveStyleFontPattern(_) => "CURVE_STYLE_FONT_PATTERN",
EntityKey::CurveStyleRendering(_) => "CURVE_STYLE_RENDERING",
EntityKey::CylindricalSurface(_) => "CYLINDRICAL_SURFACE",
EntityKey::CylindricityTolerance(_) => "CYLINDRICITY_TOLERANCE",
EntityKey::Date(_) => "DATE",
EntityKey::DateAndTime(_) => "DATE_AND_TIME",
EntityKey::DateAndTimeAssignment(_) => "DATE_AND_TIME_ASSIGNMENT",
EntityKey::DateRole(_) => "DATE_ROLE",
EntityKey::DateTimeRole(_) => "DATE_TIME_ROLE",
EntityKey::Datum(_) => "DATUM",
EntityKey::DatumFeature(_) => "DATUM_FEATURE",
EntityKey::DatumReference(_) => "DATUM_REFERENCE",
EntityKey::DatumReferenceCompartment(_) => "DATUM_REFERENCE_COMPARTMENT",
EntityKey::DatumReferenceElement(_) => "DATUM_REFERENCE_ELEMENT",
EntityKey::DatumReferenceModifierWithValue(_) => "DATUM_REFERENCE_MODIFIER_WITH_VALUE",
EntityKey::DatumSystem(_) => "DATUM_SYSTEM",
EntityKey::DatumTarget(_) => "DATUM_TARGET",
EntityKey::DefaultModelGeometricView(_) => "DEFAULT_MODEL_GEOMETRIC_VIEW",
EntityKey::DefinedCharacterGlyph(_) => "DEFINED_CHARACTER_GLYPH",
EntityKey::DefinedSymbol(_) => "DEFINED_SYMBOL",
EntityKey::DefinitionalRepresentation(_) => "DEFINITIONAL_REPRESENTATION",
EntityKey::DefinitionalRepresentationRelationship(_) => {
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP"
}
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(_) => {
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP_WITH_SAME_CONTEXT"
}
EntityKey::DegenerateToroidalSurface(_) => "DEGENERATE_TOROIDAL_SURFACE",
EntityKey::DerivedShapeAspect(_) => "DERIVED_SHAPE_ASPECT",
EntityKey::DerivedUnit(_) => "DERIVED_UNIT",
EntityKey::DerivedUnitElement(_) => "DERIVED_UNIT_ELEMENT",
EntityKey::DescriptionAttribute(_) => "DESCRIPTION_ATTRIBUTE",
EntityKey::DescriptiveRepresentationItem(_) => "DESCRIPTIVE_REPRESENTATION_ITEM",
EntityKey::DesignContext(_) => "DESIGN_CONTEXT",
EntityKey::DimensionalCharacteristicRepresentation(_) => {
"DIMENSIONAL_CHARACTERISTIC_REPRESENTATION"
}
EntityKey::DimensionalExponents(_) => "DIMENSIONAL_EXPONENTS",
EntityKey::DimensionalLocation(_) => "DIMENSIONAL_LOCATION",
EntityKey::DimensionalLocationWithPath(_) => "DIMENSIONAL_LOCATION_WITH_PATH",
EntityKey::DimensionalSize(_) => "DIMENSIONAL_SIZE",
EntityKey::DimensionalSizeWithDatumFeature(_) => "DIMENSIONAL_SIZE_WITH_DATUM_FEATURE",
EntityKey::DimensionalSizeWithPath(_) => "DIMENSIONAL_SIZE_WITH_PATH",
EntityKey::DirectedDimensionalLocation(_) => "DIRECTED_DIMENSIONAL_LOCATION",
EntityKey::Direction(_) => "DIRECTION",
EntityKey::Document(_) => "DOCUMENT",
EntityKey::DocumentFile(_) => "DOCUMENT_FILE",
EntityKey::DocumentProductAssociation(_) => "DOCUMENT_PRODUCT_ASSOCIATION",
EntityKey::DocumentProductEquivalence(_) => "DOCUMENT_PRODUCT_EQUIVALENCE",
EntityKey::DocumentReference(_) => "DOCUMENT_REFERENCE",
EntityKey::DocumentRepresentationType(_) => "DOCUMENT_REPRESENTATION_TYPE",
EntityKey::DocumentType(_) => "DOCUMENT_TYPE",
EntityKey::DraughtingAnnotationOccurrence(_) => "DRAUGHTING_ANNOTATION_OCCURRENCE",
EntityKey::DraughtingCallout(_) => "DRAUGHTING_CALLOUT",
EntityKey::DraughtingCalloutRelationship(_) => "DRAUGHTING_CALLOUT_RELATIONSHIP",
EntityKey::DraughtingModel(_) => "DRAUGHTING_MODEL",
EntityKey::DraughtingModelItemAssociation(_) => "DRAUGHTING_MODEL_ITEM_ASSOCIATION",
EntityKey::DraughtingModelItemAssociationWithPlaceholder(_) => {
"DRAUGHTING_MODEL_ITEM_ASSOCIATION_WITH_PLACEHOLDER"
}
EntityKey::DraughtingPreDefinedColour(_) => "DRAUGHTING_PRE_DEFINED_COLOUR",
EntityKey::DraughtingPreDefinedCurveFont(_) => "DRAUGHTING_PRE_DEFINED_CURVE_FONT",
EntityKey::DraughtingPreDefinedTextFont(_) => "DRAUGHTING_PRE_DEFINED_TEXT_FONT",
EntityKey::Edge(_) => "EDGE",
EntityKey::EdgeCurve(_) => "EDGE_CURVE",
EntityKey::EdgeLoop(_) => "EDGE_LOOP",
EntityKey::Effectivity(_) => "EFFECTIVITY",
EntityKey::ElementarySurface(_) => "ELEMENTARY_SURFACE",
EntityKey::Ellipse(_) => "ELLIPSE",
EntityKey::Expression(_) => "EXPRESSION",
EntityKey::ExternalIdentificationAssignment(_) => "EXTERNAL_IDENTIFICATION_ASSIGNMENT",
EntityKey::ExternalSource(_) => "EXTERNAL_SOURCE",
EntityKey::ExternallyDefinedCharacterGlyph(_) => "EXTERNALLY_DEFINED_CHARACTER_GLYPH",
EntityKey::ExternallyDefinedCurveFont(_) => "EXTERNALLY_DEFINED_CURVE_FONT",
EntityKey::ExternallyDefinedHatchStyle(_) => "EXTERNALLY_DEFINED_HATCH_STYLE",
EntityKey::ExternallyDefinedItem(_) => "EXTERNALLY_DEFINED_ITEM",
EntityKey::ExternallyDefinedStyle(_) => "EXTERNALLY_DEFINED_STYLE",
EntityKey::ExternallyDefinedSymbol(_) => "EXTERNALLY_DEFINED_SYMBOL",
EntityKey::ExternallyDefinedTextFont(_) => "EXTERNALLY_DEFINED_TEXT_FONT",
EntityKey::ExternallyDefinedTile(_) => "EXTERNALLY_DEFINED_TILE",
EntityKey::ExternallyDefinedTileStyle(_) => "EXTERNALLY_DEFINED_TILE_STYLE",
EntityKey::Face(_) => "FACE",
EntityKey::FaceBound(_) => "FACE_BOUND",
EntityKey::FaceOuterBound(_) => "FACE_OUTER_BOUND",
EntityKey::FaceSurface(_) => "FACE_SURFACE",
EntityKey::FeatureForDatumTargetRelationship(_) => {
"FEATURE_FOR_DATUM_TARGET_RELATIONSHIP"
}
EntityKey::FillAreaStyle(_) => "FILL_AREA_STYLE",
EntityKey::FillAreaStyleColour(_) => "FILL_AREA_STYLE_COLOUR",
EntityKey::FillAreaStyleHatching(_) => "FILL_AREA_STYLE_HATCHING",
EntityKey::FillAreaStyleTileColouredRegion(_) => "FILL_AREA_STYLE_TILE_COLOURED_REGION",
EntityKey::FillAreaStyleTileCurveWithStyle(_) => {
"FILL_AREA_STYLE_TILE_CURVE_WITH_STYLE"
}
EntityKey::FillAreaStyleTileSymbolWithStyle(_) => {
"FILL_AREA_STYLE_TILE_SYMBOL_WITH_STYLE"
}
EntityKey::FillAreaStyleTiles(_) => "FILL_AREA_STYLE_TILES",
EntityKey::FlatnessTolerance(_) => "FLATNESS_TOLERANCE",
EntityKey::FoundedItem(_) => "FOUNDED_ITEM",
EntityKey::FunctionallyDefinedTransformation(_) => {
"FUNCTIONALLY_DEFINED_TRANSFORMATION"
}
EntityKey::GeneralDatumReference(_) => "GENERAL_DATUM_REFERENCE",
EntityKey::GeneralProperty(_) => "GENERAL_PROPERTY",
EntityKey::GeneralPropertyAssociation(_) => "GENERAL_PROPERTY_ASSOCIATION",
EntityKey::GenericExpression(_) => "GENERIC_EXPRESSION",
EntityKey::GenericLiteral(_) => "GENERIC_LITERAL",
EntityKey::GenericProductDefinitionReference(_) => {
"GENERIC_PRODUCT_DEFINITION_REFERENCE"
}
EntityKey::GeometricCurveSet(_) => "GEOMETRIC_CURVE_SET",
EntityKey::GeometricItemSpecificUsage(_) => "GEOMETRIC_ITEM_SPECIFIC_USAGE",
EntityKey::GeometricRepresentationContext(_) => "GEOMETRIC_REPRESENTATION_CONTEXT",
EntityKey::GeometricRepresentationItem(_) => "GEOMETRIC_REPRESENTATION_ITEM",
EntityKey::GeometricSet(_) => "GEOMETRIC_SET",
EntityKey::GeometricTolerance(_) => "GEOMETRIC_TOLERANCE",
EntityKey::GeometricToleranceRelationship(_) => "GEOMETRIC_TOLERANCE_RELATIONSHIP",
EntityKey::GeometricToleranceWithDatumReference(_) => {
"GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE"
}
EntityKey::GeometricToleranceWithDefinedAreaUnit(_) => {
"GEOMETRIC_TOLERANCE_WITH_DEFINED_AREA_UNIT"
}
EntityKey::GeometricToleranceWithDefinedUnit(_) => {
"GEOMETRIC_TOLERANCE_WITH_DEFINED_UNIT"
}
EntityKey::GeometricToleranceWithMaximumTolerance(_) => {
"GEOMETRIC_TOLERANCE_WITH_MAXIMUM_TOLERANCE"
}
EntityKey::GeometricToleranceWithModifiers(_) => "GEOMETRIC_TOLERANCE_WITH_MODIFIERS",
EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(_) => {
"GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION"
}
EntityKey::GeometricallyBoundedWireframeShapeRepresentation(_) => {
"GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION"
}
EntityKey::GlobalUncertaintyAssignedContext(_) => "GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT",
EntityKey::GlobalUnitAssignedContext(_) => "GLOBAL_UNIT_ASSIGNED_CONTEXT",
EntityKey::Group(_) => "GROUP",
EntityKey::GroupAssignment(_) => "GROUP_ASSIGNMENT",
EntityKey::Hyperbola(_) => "HYPERBOLA",
EntityKey::IdAttribute(_) => "ID_ATTRIBUTE",
EntityKey::IdentificationAssignment(_) => "IDENTIFICATION_ASSIGNMENT",
EntityKey::IdentificationRole(_) => "IDENTIFICATION_ROLE",
EntityKey::IntLiteral(_) => "INT_LITERAL",
EntityKey::IntegerRepresentationItem(_) => "INTEGER_REPRESENTATION_ITEM",
EntityKey::IntersectionCurve(_) => "INTERSECTION_CURVE",
EntityKey::Invisibility(_) => "INVISIBILITY",
EntityKey::ItemDefinedTransformation(_) => "ITEM_DEFINED_TRANSFORMATION",
EntityKey::ItemIdentifiedRepresentationUsage(_) => {
"ITEM_IDENTIFIED_REPRESENTATION_USAGE"
}
EntityKey::LeaderCurve(_) => "LEADER_CURVE",
EntityKey::LeaderDirectedCallout(_) => "LEADER_DIRECTED_CALLOUT",
EntityKey::LeaderTerminator(_) => "LEADER_TERMINATOR",
EntityKey::LengthMeasureWithUnit(_) => "LENGTH_MEASURE_WITH_UNIT",
EntityKey::LengthUnit(_) => "LENGTH_UNIT",
EntityKey::LimitsAndFits(_) => "LIMITS_AND_FITS",
EntityKey::Line(_) => "LINE",
EntityKey::LineProfileTolerance(_) => "LINE_PROFILE_TOLERANCE",
EntityKey::LiteralNumber(_) => "LITERAL_NUMBER",
EntityKey::LocalTime(_) => "LOCAL_TIME",
EntityKey::Loop(_) => "LOOP",
EntityKey::MakeFromUsageOption(_) => "MAKE_FROM_USAGE_OPTION",
EntityKey::ManifoldSolidBrep(_) => "MANIFOLD_SOLID_BREP",
EntityKey::ManifoldSurfaceShapeRepresentation(_) => {
"MANIFOLD_SURFACE_SHAPE_REPRESENTATION"
}
EntityKey::MappedItem(_) => "MAPPED_ITEM",
EntityKey::MassMeasureWithUnit(_) => "MASS_MEASURE_WITH_UNIT",
EntityKey::MassUnit(_) => "MASS_UNIT",
EntityKey::MeasureQualification(_) => "MEASURE_QUALIFICATION",
EntityKey::MeasureRepresentationItem(_) => "MEASURE_REPRESENTATION_ITEM",
EntityKey::MeasureWithUnit(_) => "MEASURE_WITH_UNIT",
EntityKey::MechanicalContext(_) => "MECHANICAL_CONTEXT",
EntityKey::MechanicalDesignAndDraughtingRelationship(_) => {
"MECHANICAL_DESIGN_AND_DRAUGHTING_RELATIONSHIP"
}
EntityKey::MechanicalDesignGeometricPresentationRepresentation(_) => {
"MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION"
}
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(_) => {
"MECHANICAL_DESIGN_PRESENTATION_REPRESENTATION_WITH_DRAUGHTING"
}
EntityKey::MechanicalDesignShadedPresentationRepresentation(_) => {
"MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION"
}
EntityKey::ModelGeometricView(_) => "MODEL_GEOMETRIC_VIEW",
EntityKey::ModifiedGeometricTolerance(_) => "MODIFIED_GEOMETRIC_TOLERANCE",
EntityKey::NameAttribute(_) => "NAME_ATTRIBUTE",
EntityKey::NamedUnit(_) => "NAMED_UNIT",
EntityKey::NextAssemblyUsageOccurrence(_) => "NEXT_ASSEMBLY_USAGE_OCCURRENCE",
EntityKey::NumericExpression(_) => "NUMERIC_EXPRESSION",
EntityKey::ObjectRole(_) => "OBJECT_ROLE",
EntityKey::OffsetSurface(_) => "OFFSET_SURFACE",
EntityKey::OneDirectionRepeatFactor(_) => "ONE_DIRECTION_REPEAT_FACTOR",
EntityKey::OpenShell(_) => "OPEN_SHELL",
EntityKey::Organization(_) => "ORGANIZATION",
EntityKey::OrganizationRelationship(_) => "ORGANIZATION_RELATIONSHIP",
EntityKey::OrganizationRole(_) => "ORGANIZATION_ROLE",
EntityKey::OrganizationType(_) => "ORGANIZATION_TYPE",
EntityKey::OrganizationTypeRole(_) => "ORGANIZATION_TYPE_ROLE",
EntityKey::OrganizationalAddress(_) => "ORGANIZATIONAL_ADDRESS",
EntityKey::OrganizationalProject(_) => "ORGANIZATIONAL_PROJECT",
EntityKey::OrganizationalProjectRelationship(_) => {
"ORGANIZATIONAL_PROJECT_RELATIONSHIP"
}
EntityKey::OrganizationalProjectRole(_) => "ORGANIZATIONAL_PROJECT_ROLE",
EntityKey::OrientedClosedShell(_) => "ORIENTED_CLOSED_SHELL",
EntityKey::OrientedEdge(_) => "ORIENTED_EDGE",
EntityKey::OverRidingStyledItem(_) => "OVER_RIDING_STYLED_ITEM",
EntityKey::ParallelismTolerance(_) => "PARALLELISM_TOLERANCE",
EntityKey::ParametricRepresentationContext(_) => "PARAMETRIC_REPRESENTATION_CONTEXT",
EntityKey::Path(_) => "PATH",
EntityKey::Pcurve(_) => "PCURVE",
EntityKey::PerpendicularityTolerance(_) => "PERPENDICULARITY_TOLERANCE",
EntityKey::Person(_) => "PERSON",
EntityKey::PersonAndOrganization(_) => "PERSON_AND_ORGANIZATION",
EntityKey::PersonAndOrganizationAddress(_) => "PERSON_AND_ORGANIZATION_ADDRESS",
EntityKey::PersonAndOrganizationAssignment(_) => "PERSON_AND_ORGANIZATION_ASSIGNMENT",
EntityKey::PersonAndOrganizationRole(_) => "PERSON_AND_ORGANIZATION_ROLE",
EntityKey::PersonalAddress(_) => "PERSONAL_ADDRESS",
EntityKey::PlacedDatumTargetFeature(_) => "PLACED_DATUM_TARGET_FEATURE",
EntityKey::Placement(_) => "PLACEMENT",
EntityKey::PlanarBox(_) => "PLANAR_BOX",
EntityKey::PlanarExtent(_) => "PLANAR_EXTENT",
EntityKey::Plane(_) => "PLANE",
EntityKey::PlaneAngleMeasureWithUnit(_) => "PLANE_ANGLE_MEASURE_WITH_UNIT",
EntityKey::PlaneAngleUnit(_) => "PLANE_ANGLE_UNIT",
EntityKey::PlusMinusTolerance(_) => "PLUS_MINUS_TOLERANCE",
EntityKey::Point(_) => "POINT",
EntityKey::PointStyle(_) => "POINT_STYLE",
EntityKey::PolyLoop(_) => "POLY_LOOP",
EntityKey::Polyline(_) => "POLYLINE",
EntityKey::PositionTolerance(_) => "POSITION_TOLERANCE",
EntityKey::PreDefinedCharacterGlyph(_) => "PRE_DEFINED_CHARACTER_GLYPH",
EntityKey::PreDefinedColour(_) => "PRE_DEFINED_COLOUR",
EntityKey::PreDefinedCurveFont(_) => "PRE_DEFINED_CURVE_FONT",
EntityKey::PreDefinedItem(_) => "PRE_DEFINED_ITEM",
EntityKey::PreDefinedMarker(_) => "PRE_DEFINED_MARKER",
EntityKey::PreDefinedPointMarkerSymbol(_) => "PRE_DEFINED_POINT_MARKER_SYMBOL",
EntityKey::PreDefinedPresentationStyle(_) => "PRE_DEFINED_PRESENTATION_STYLE",
EntityKey::PreDefinedSurfaceSideStyle(_) => "PRE_DEFINED_SURFACE_SIDE_STYLE",
EntityKey::PreDefinedSymbol(_) => "PRE_DEFINED_SYMBOL",
EntityKey::PreDefinedTerminatorSymbol(_) => "PRE_DEFINED_TERMINATOR_SYMBOL",
EntityKey::PreDefinedTextFont(_) => "PRE_DEFINED_TEXT_FONT",
EntityKey::PreDefinedTile(_) => "PRE_DEFINED_TILE",
EntityKey::PrecisionQualifier(_) => "PRECISION_QUALIFIER",
EntityKey::PresentationArea(_) => "PRESENTATION_AREA",
EntityKey::PresentationLayerAssignment(_) => "PRESENTATION_LAYER_ASSIGNMENT",
EntityKey::PresentationRepresentation(_) => "PRESENTATION_REPRESENTATION",
EntityKey::PresentationSet(_) => "PRESENTATION_SET",
EntityKey::PresentationSize(_) => "PRESENTATION_SIZE",
EntityKey::PresentationStyleAssignment(_) => "PRESENTATION_STYLE_ASSIGNMENT",
EntityKey::PresentationStyleByContext(_) => "PRESENTATION_STYLE_BY_CONTEXT",
EntityKey::PresentationView(_) => "PRESENTATION_VIEW",
EntityKey::PresentedItem(_) => "PRESENTED_ITEM",
EntityKey::PresentedItemRepresentation(_) => "PRESENTED_ITEM_REPRESENTATION",
EntityKey::Product(_) => "PRODUCT",
EntityKey::ProductCategory(_) => "PRODUCT_CATEGORY",
EntityKey::ProductCategoryRelationship(_) => "PRODUCT_CATEGORY_RELATIONSHIP",
EntityKey::ProductConcept(_) => "PRODUCT_CONCEPT",
EntityKey::ProductConceptContext(_) => "PRODUCT_CONCEPT_CONTEXT",
EntityKey::ProductConceptFeature(_) => "PRODUCT_CONCEPT_FEATURE",
EntityKey::ProductConceptFeatureCategory(_) => "PRODUCT_CONCEPT_FEATURE_CATEGORY",
EntityKey::ProductContext(_) => "PRODUCT_CONTEXT",
EntityKey::ProductDefinition(_) => "PRODUCT_DEFINITION",
EntityKey::ProductDefinitionContext(_) => "PRODUCT_DEFINITION_CONTEXT",
EntityKey::ProductDefinitionContextAssociation(_) => {
"PRODUCT_DEFINITION_CONTEXT_ASSOCIATION"
}
EntityKey::ProductDefinitionContextRole(_) => "PRODUCT_DEFINITION_CONTEXT_ROLE",
EntityKey::ProductDefinitionEffectivity(_) => "PRODUCT_DEFINITION_EFFECTIVITY",
EntityKey::ProductDefinitionFormation(_) => "PRODUCT_DEFINITION_FORMATION",
EntityKey::ProductDefinitionFormationWithSpecifiedSource(_) => {
"PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE"
}
EntityKey::ProductDefinitionOccurrence(_) => "PRODUCT_DEFINITION_OCCURRENCE",
EntityKey::ProductDefinitionRelationship(_) => "PRODUCT_DEFINITION_RELATIONSHIP",
EntityKey::ProductDefinitionRelationshipRelationship(_) => {
"PRODUCT_DEFINITION_RELATIONSHIP_RELATIONSHIP"
}
EntityKey::ProductDefinitionShape(_) => "PRODUCT_DEFINITION_SHAPE",
EntityKey::ProductDefinitionSubstitute(_) => "PRODUCT_DEFINITION_SUBSTITUTE",
EntityKey::ProductDefinitionUsage(_) => "PRODUCT_DEFINITION_USAGE",
EntityKey::ProductDefinitionWithAssociatedDocuments(_) => {
"PRODUCT_DEFINITION_WITH_ASSOCIATED_DOCUMENTS"
}
EntityKey::ProductRelatedProductCategory(_) => "PRODUCT_RELATED_PRODUCT_CATEGORY",
EntityKey::ProjectedZoneDefinition(_) => "PROJECTED_ZONE_DEFINITION",
EntityKey::PropertyDefinition(_) => "PROPERTY_DEFINITION",
EntityKey::PropertyDefinitionRelationship(_) => "PROPERTY_DEFINITION_RELATIONSHIP",
EntityKey::PropertyDefinitionRepresentation(_) => "PROPERTY_DEFINITION_REPRESENTATION",
EntityKey::QualifiedRepresentationItem(_) => "QUALIFIED_REPRESENTATION_ITEM",
EntityKey::QuasiUniformCurve(_) => "QUASI_UNIFORM_CURVE",
EntityKey::QuasiUniformSurface(_) => "QUASI_UNIFORM_SURFACE",
EntityKey::RatioMeasureWithUnit(_) => "RATIO_MEASURE_WITH_UNIT",
EntityKey::RatioUnit(_) => "RATIO_UNIT",
EntityKey::RationalBSplineCurve(_) => "RATIONAL_B_SPLINE_CURVE",
EntityKey::RationalBSplineSurface(_) => "RATIONAL_B_SPLINE_SURFACE",
EntityKey::RealLiteral(_) => "REAL_LITERAL",
EntityKey::RealRepresentationItem(_) => "REAL_REPRESENTATION_ITEM",
EntityKey::RepositionedTessellatedItem(_) => "REPOSITIONED_TESSELLATED_ITEM",
EntityKey::Representation(_) => "REPRESENTATION",
EntityKey::RepresentationContext(_) => "REPRESENTATION_CONTEXT",
EntityKey::RepresentationContextReference(_) => "REPRESENTATION_CONTEXT_REFERENCE",
EntityKey::RepresentationItem(_) => "REPRESENTATION_ITEM",
EntityKey::RepresentationMap(_) => "REPRESENTATION_MAP",
EntityKey::RepresentationReference(_) => "REPRESENTATION_REFERENCE",
EntityKey::RepresentationRelationship(_) => "REPRESENTATION_RELATIONSHIP",
EntityKey::RepresentationRelationshipWithTransformation(_) => {
"REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION"
}
EntityKey::ResourceProperty(_) => "RESOURCE_PROPERTY",
EntityKey::ResourceRequirementType(_) => "RESOURCE_REQUIREMENT_TYPE",
EntityKey::RoleAssociation(_) => "ROLE_ASSOCIATION",
EntityKey::RoundnessTolerance(_) => "ROUNDNESS_TOLERANCE",
EntityKey::SeamCurve(_) => "SEAM_CURVE",
EntityKey::SecurityClassification(_) => "SECURITY_CLASSIFICATION",
EntityKey::SecurityClassificationAssignment(_) => "SECURITY_CLASSIFICATION_ASSIGNMENT",
EntityKey::SecurityClassificationLevel(_) => "SECURITY_CLASSIFICATION_LEVEL",
EntityKey::ShapeAspect(_) => "SHAPE_ASPECT",
EntityKey::ShapeAspectAssociativity(_) => "SHAPE_ASPECT_ASSOCIATIVITY",
EntityKey::ShapeAspectDerivingRelationship(_) => "SHAPE_ASPECT_DERIVING_RELATIONSHIP",
EntityKey::ShapeAspectRelationship(_) => "SHAPE_ASPECT_RELATIONSHIP",
EntityKey::ShapeDefinitionRepresentation(_) => "SHAPE_DEFINITION_REPRESENTATION",
EntityKey::ShapeDimensionRepresentation(_) => "SHAPE_DIMENSION_REPRESENTATION",
EntityKey::ShapeRepresentation(_) => "SHAPE_REPRESENTATION",
EntityKey::ShapeRepresentationRelationship(_) => "SHAPE_REPRESENTATION_RELATIONSHIP",
EntityKey::ShapeRepresentationWithParameters(_) => {
"SHAPE_REPRESENTATION_WITH_PARAMETERS"
}
EntityKey::ShellBasedSurfaceModel(_) => "SHELL_BASED_SURFACE_MODEL",
EntityKey::SiUnit(_) => "SI_UNIT",
EntityKey::SimpleGenericExpression(_) => "SIMPLE_GENERIC_EXPRESSION",
EntityKey::SimpleNumericExpression(_) => "SIMPLE_NUMERIC_EXPRESSION",
EntityKey::SolidAngleUnit(_) => "SOLID_ANGLE_UNIT",
EntityKey::SolidModel(_) => "SOLID_MODEL",
EntityKey::SphericalSurface(_) => "SPHERICAL_SURFACE",
EntityKey::StartRequest(_) => "START_REQUEST",
EntityKey::StartWork(_) => "START_WORK",
EntityKey::StateObserved(_) => "STATE_OBSERVED",
EntityKey::StateType(_) => "STATE_TYPE",
EntityKey::StraightnessTolerance(_) => "STRAIGHTNESS_TOLERANCE",
EntityKey::StyledItem(_) => "STYLED_ITEM",
EntityKey::Surface(_) => "SURFACE",
EntityKey::SurfaceCurve(_) => "SURFACE_CURVE",
EntityKey::SurfaceOfLinearExtrusion(_) => "SURFACE_OF_LINEAR_EXTRUSION",
EntityKey::SurfaceOfRevolution(_) => "SURFACE_OF_REVOLUTION",
EntityKey::SurfaceProfileTolerance(_) => "SURFACE_PROFILE_TOLERANCE",
EntityKey::SurfaceRenderingProperties(_) => "SURFACE_RENDERING_PROPERTIES",
EntityKey::SurfaceSideStyle(_) => "SURFACE_SIDE_STYLE",
EntityKey::SurfaceStyleBoundary(_) => "SURFACE_STYLE_BOUNDARY",
EntityKey::SurfaceStyleControlGrid(_) => "SURFACE_STYLE_CONTROL_GRID",
EntityKey::SurfaceStyleFillArea(_) => "SURFACE_STYLE_FILL_AREA",
EntityKey::SurfaceStyleParameterLine(_) => "SURFACE_STYLE_PARAMETER_LINE",
EntityKey::SurfaceStyleReflectanceAmbient(_) => "SURFACE_STYLE_REFLECTANCE_AMBIENT",
EntityKey::SurfaceStyleRendering(_) => "SURFACE_STYLE_RENDERING",
EntityKey::SurfaceStyleRenderingWithProperties(_) => {
"SURFACE_STYLE_RENDERING_WITH_PROPERTIES"
}
EntityKey::SurfaceStyleSegmentationCurve(_) => "SURFACE_STYLE_SEGMENTATION_CURVE",
EntityKey::SurfaceStyleSilhouette(_) => "SURFACE_STYLE_SILHOUETTE",
EntityKey::SurfaceStyleTransparent(_) => "SURFACE_STYLE_TRANSPARENT",
EntityKey::SurfaceStyleUsage(_) => "SURFACE_STYLE_USAGE",
EntityKey::SweptSurface(_) => "SWEPT_SURFACE",
EntityKey::SymbolColour(_) => "SYMBOL_COLOUR",
EntityKey::SymbolRepresentation(_) => "SYMBOL_REPRESENTATION",
EntityKey::SymbolStyle(_) => "SYMBOL_STYLE",
EntityKey::SymbolTarget(_) => "SYMBOL_TARGET",
EntityKey::SymmetryTolerance(_) => "SYMMETRY_TOLERANCE",
EntityKey::TerminatorSymbol(_) => "TERMINATOR_SYMBOL",
EntityKey::TessellatedAnnotationOccurrence(_) => "TESSELLATED_ANNOTATION_OCCURRENCE",
EntityKey::TessellatedCurveSet(_) => "TESSELLATED_CURVE_SET",
EntityKey::TessellatedFace(_) => "TESSELLATED_FACE",
EntityKey::TessellatedGeometricSet(_) => "TESSELLATED_GEOMETRIC_SET",
EntityKey::TessellatedItem(_) => "TESSELLATED_ITEM",
EntityKey::TessellatedShapeRepresentation(_) => "TESSELLATED_SHAPE_REPRESENTATION",
EntityKey::TessellatedShell(_) => "TESSELLATED_SHELL",
EntityKey::TessellatedSolid(_) => "TESSELLATED_SOLID",
EntityKey::TessellatedStructuredItem(_) => "TESSELLATED_STRUCTURED_ITEM",
EntityKey::TessellatedSurfaceSet(_) => "TESSELLATED_SURFACE_SET",
EntityKey::TextFont(_) => "TEXT_FONT",
EntityKey::TextLiteral(_) => "TEXT_LITERAL",
EntityKey::TextStyle(_) => "TEXT_STYLE",
EntityKey::TextStyleForDefinedFont(_) => "TEXT_STYLE_FOR_DEFINED_FONT",
EntityKey::TextStyleWithBoxCharacteristics(_) => "TEXT_STYLE_WITH_BOX_CHARACTERISTICS",
EntityKey::TextureStyleSpecification(_) => "TEXTURE_STYLE_SPECIFICATION",
EntityKey::TextureStyleTessellationSpecification(_) => {
"TEXTURE_STYLE_TESSELLATION_SPECIFICATION"
}
EntityKey::TimeUnit(_) => "TIME_UNIT",
EntityKey::ToleranceValue(_) => "TOLERANCE_VALUE",
EntityKey::ToleranceZone(_) => "TOLERANCE_ZONE",
EntityKey::ToleranceZoneDefinition(_) => "TOLERANCE_ZONE_DEFINITION",
EntityKey::ToleranceZoneForm(_) => "TOLERANCE_ZONE_FORM",
EntityKey::ToleranceZoneWithDatum(_) => "TOLERANCE_ZONE_WITH_DATUM",
EntityKey::TopologicalRepresentationItem(_) => "TOPOLOGICAL_REPRESENTATION_ITEM",
EntityKey::ToroidalSurface(_) => "TOROIDAL_SURFACE",
EntityKey::TotalRunoutTolerance(_) => "TOTAL_RUNOUT_TOLERANCE",
EntityKey::TrimmedCurve(_) => "TRIMMED_CURVE",
EntityKey::TwoDirectionRepeatFactor(_) => "TWO_DIRECTION_REPEAT_FACTOR",
EntityKey::TypeQualifier(_) => "TYPE_QUALIFIER",
EntityKey::UncertaintyMeasureWithUnit(_) => "UNCERTAINTY_MEASURE_WITH_UNIT",
EntityKey::UncertaintyQualifier(_) => "UNCERTAINTY_QUALIFIER",
EntityKey::UnequallyDisposedGeometricTolerance(_) => {
"UNEQUALLY_DISPOSED_GEOMETRIC_TOLERANCE"
}
EntityKey::UniformCurve(_) => "UNIFORM_CURVE",
EntityKey::UniformSurface(_) => "UNIFORM_SURFACE",
EntityKey::ValueFormatTypeQualifier(_) => "VALUE_FORMAT_TYPE_QUALIFIER",
EntityKey::ValueRepresentationItem(_) => "VALUE_REPRESENTATION_ITEM",
EntityKey::Vector(_) => "VECTOR",
EntityKey::VersionedActionRequest(_) => "VERSIONED_ACTION_REQUEST",
EntityKey::Vertex(_) => "VERTEX",
EntityKey::VertexLoop(_) => "VERTEX_LOOP",
EntityKey::VertexPoint(_) => "VERTEX_POINT",
EntityKey::VertexShell(_) => "VERTEX_SHELL",
EntityKey::ViewVolume(_) => "VIEW_VOLUME",
EntityKey::VolumeUnit(_) => "VOLUME_UNIT",
EntityKey::WireShell(_) => "WIRE_SHELL",
EntityKey::ComplexUnit(_) => "",
}
}
fn render_kw(&self, any: EntityKey) -> &'static str {
self.rename
.get(&any)
.copied()
.unwrap_or_else(|| Self::name_of(any))
}
pub(crate) fn all_ids(&self) -> Vec<EntityKey> {
let mut roots: Vec<EntityKey> = Vec::new();
for i in 0..self.model.complex_unit_arena.items.len() {
roots.push(EntityKey::ComplexUnit(ComplexUnitId(i)));
}
for i in 0..self.model.action_arena.items.len() {
roots.push(EntityKey::Action(ActionId(i)));
}
for i in 0..self.model.action_assignment_arena.items.len() {
roots.push(EntityKey::ActionAssignment(ActionAssignmentId(i)));
}
for i in 0..self.model.action_directive_arena.items.len() {
roots.push(EntityKey::ActionDirective(ActionDirectiveId(i)));
}
for i in 0..self.model.action_method_arena.items.len() {
roots.push(EntityKey::ActionMethod(ActionMethodId(i)));
}
for i in 0..self.model.action_method_relationship_arena.items.len() {
roots.push(EntityKey::ActionMethodRelationship(
ActionMethodRelationshipId(i),
));
}
for i in 0..self.model.action_property_arena.items.len() {
roots.push(EntityKey::ActionProperty(ActionPropertyId(i)));
}
for i in 0..self.model.action_relationship_arena.items.len() {
roots.push(EntityKey::ActionRelationship(ActionRelationshipId(i)));
}
for i in 0..self.model.action_request_assignment_arena.items.len() {
roots.push(EntityKey::ActionRequestAssignment(
ActionRequestAssignmentId(i),
));
}
for i in 0..self.model.action_request_solution_arena.items.len() {
roots.push(EntityKey::ActionRequestSolution(ActionRequestSolutionId(i)));
}
for i in 0..self.model.action_resource_arena.items.len() {
roots.push(EntityKey::ActionResource(ActionResourceId(i)));
}
for i in 0..self.model.action_resource_relationship_arena.items.len() {
roots.push(EntityKey::ActionResourceRelationship(
ActionResourceRelationshipId(i),
));
}
for i in 0..self.model.action_resource_requirement_arena.items.len() {
roots.push(EntityKey::ActionResourceRequirement(
ActionResourceRequirementId(i),
));
}
for i in 0..self.model.action_resource_type_arena.items.len() {
roots.push(EntityKey::ActionResourceType(ActionResourceTypeId(i)));
}
for i in 0..self.model.address_arena.items.len() {
roots.push(EntityKey::Address(AddressId(i)));
}
for i in 0..self
.model
.advanced_brep_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::AdvancedBrepShapeRepresentation(
AdvancedBrepShapeRepresentationId(i),
));
}
for i in 0..self.model.advanced_face_arena.items.len() {
roots.push(EntityKey::AdvancedFace(AdvancedFaceId(i)));
}
for i in 0..self.model.all_around_shape_aspect_arena.items.len() {
roots.push(EntityKey::AllAroundShapeAspect(AllAroundShapeAspectId(i)));
}
for i in 0..self.model.angular_location_arena.items.len() {
roots.push(EntityKey::AngularLocation(AngularLocationId(i)));
}
for i in 0..self.model.angular_size_arena.items.len() {
roots.push(EntityKey::AngularSize(AngularSizeId(i)));
}
for i in 0..self.model.angularity_tolerance_arena.items.len() {
roots.push(EntityKey::AngularityTolerance(AngularityToleranceId(i)));
}
for i in 0..self.model.annotation_curve_occurrence_arena.items.len() {
roots.push(EntityKey::AnnotationCurveOccurrence(
AnnotationCurveOccurrenceId(i),
));
}
for i in 0..self.model.annotation_fill_area_occurrence_arena.items.len() {
roots.push(EntityKey::AnnotationFillAreaOccurrence(
AnnotationFillAreaOccurrenceId(i),
));
}
for i in 0..self.model.annotation_occurrence_arena.items.len() {
roots.push(EntityKey::AnnotationOccurrence(AnnotationOccurrenceId(i)));
}
for i in 0..self
.model
.annotation_occurrence_associativity_arena
.items
.len()
{
roots.push(EntityKey::AnnotationOccurrenceAssociativity(
AnnotationOccurrenceAssociativityId(i),
));
}
for i in 0..self
.model
.annotation_occurrence_relationship_arena
.items
.len()
{
roots.push(EntityKey::AnnotationOccurrenceRelationship(
AnnotationOccurrenceRelationshipId(i),
));
}
for i in 0..self
.model
.annotation_placeholder_leader_line_arena
.items
.len()
{
roots.push(EntityKey::AnnotationPlaceholderLeaderLine(
AnnotationPlaceholderLeaderLineId(i),
));
}
for i in 0..self
.model
.annotation_placeholder_occurrence_arena
.items
.len()
{
roots.push(EntityKey::AnnotationPlaceholderOccurrence(
AnnotationPlaceholderOccurrenceId(i),
));
}
for i in 0..self
.model
.annotation_placeholder_occurrence_with_leader_line_arena
.items
.len()
{
roots.push(EntityKey::AnnotationPlaceholderOccurrenceWithLeaderLine(
AnnotationPlaceholderOccurrenceWithLeaderLineId(i),
));
}
for i in 0..self.model.annotation_plane_arena.items.len() {
roots.push(EntityKey::AnnotationPlane(AnnotationPlaneId(i)));
}
for i in 0..self.model.annotation_symbol_arena.items.len() {
roots.push(EntityKey::AnnotationSymbol(AnnotationSymbolId(i)));
}
for i in 0..self.model.annotation_symbol_occurrence_arena.items.len() {
roots.push(EntityKey::AnnotationSymbolOccurrence(
AnnotationSymbolOccurrenceId(i),
));
}
for i in 0..self.model.annotation_text_arena.items.len() {
roots.push(EntityKey::AnnotationText(AnnotationTextId(i)));
}
for i in 0..self.model.annotation_text_character_arena.items.len() {
roots.push(EntityKey::AnnotationTextCharacter(
AnnotationTextCharacterId(i),
));
}
for i in 0..self.model.annotation_text_occurrence_arena.items.len() {
roots.push(EntityKey::AnnotationTextOccurrence(
AnnotationTextOccurrenceId(i),
));
}
for i in 0..self
.model
.annotation_to_annotation_leader_line_arena
.items
.len()
{
roots.push(EntityKey::AnnotationToAnnotationLeaderLine(
AnnotationToAnnotationLeaderLineId(i),
));
}
for i in 0..self.model.annotation_to_model_leader_line_arena.items.len() {
roots.push(EntityKey::AnnotationToModelLeaderLine(
AnnotationToModelLeaderLineId(i),
));
}
for i in 0..self.model.apll_point_arena.items.len() {
roots.push(EntityKey::ApllPoint(ApllPointId(i)));
}
for i in 0..self.model.apll_point_with_surface_arena.items.len() {
roots.push(EntityKey::ApllPointWithSurface(ApllPointWithSurfaceId(i)));
}
for i in 0..self.model.application_context_arena.items.len() {
roots.push(EntityKey::ApplicationContext(ApplicationContextId(i)));
}
for i in 0..self.model.application_context_element_arena.items.len() {
roots.push(EntityKey::ApplicationContextElement(
ApplicationContextElementId(i),
));
}
for i in 0..self.model.application_protocol_definition_arena.items.len() {
roots.push(EntityKey::ApplicationProtocolDefinition(
ApplicationProtocolDefinitionId(i),
));
}
for i in 0..self.model.applied_approval_assignment_arena.items.len() {
roots.push(EntityKey::AppliedApprovalAssignment(
AppliedApprovalAssignmentId(i),
));
}
for i in 0..self
.model
.applied_date_and_time_assignment_arena
.items
.len()
{
roots.push(EntityKey::AppliedDateAndTimeAssignment(
AppliedDateAndTimeAssignmentId(i),
));
}
for i in 0..self.model.applied_document_reference_arena.items.len() {
roots.push(EntityKey::AppliedDocumentReference(
AppliedDocumentReferenceId(i),
));
}
for i in 0..self
.model
.applied_external_identification_assignment_arena
.items
.len()
{
roots.push(EntityKey::AppliedExternalIdentificationAssignment(
AppliedExternalIdentificationAssignmentId(i),
));
}
for i in 0..self.model.applied_group_assignment_arena.items.len() {
roots.push(EntityKey::AppliedGroupAssignment(AppliedGroupAssignmentId(
i,
)));
}
for i in 0..self
.model
.applied_person_and_organization_assignment_arena
.items
.len()
{
roots.push(EntityKey::AppliedPersonAndOrganizationAssignment(
AppliedPersonAndOrganizationAssignmentId(i),
));
}
for i in 0..self.model.applied_presented_item_arena.items.len() {
roots.push(EntityKey::AppliedPresentedItem(AppliedPresentedItemId(i)));
}
for i in 0..self
.model
.applied_security_classification_assignment_arena
.items
.len()
{
roots.push(EntityKey::AppliedSecurityClassificationAssignment(
AppliedSecurityClassificationAssignmentId(i),
));
}
for i in 0..self.model.approval_arena.items.len() {
roots.push(EntityKey::Approval(ApprovalId(i)));
}
for i in 0..self.model.approval_assignment_arena.items.len() {
roots.push(EntityKey::ApprovalAssignment(ApprovalAssignmentId(i)));
}
for i in 0..self.model.approval_date_time_arena.items.len() {
roots.push(EntityKey::ApprovalDateTime(ApprovalDateTimeId(i)));
}
for i in 0..self.model.approval_person_organization_arena.items.len() {
roots.push(EntityKey::ApprovalPersonOrganization(
ApprovalPersonOrganizationId(i),
));
}
for i in 0..self.model.approval_role_arena.items.len() {
roots.push(EntityKey::ApprovalRole(ApprovalRoleId(i)));
}
for i in 0..self.model.approval_status_arena.items.len() {
roots.push(EntityKey::ApprovalStatus(ApprovalStatusId(i)));
}
for i in 0..self.model.approximation_tolerance_arena.items.len() {
roots.push(EntityKey::ApproximationTolerance(ApproximationToleranceId(
i,
)));
}
for i in 0..self
.model
.approximation_tolerance_deviation_arena
.items
.len()
{
roots.push(EntityKey::ApproximationToleranceDeviation(
ApproximationToleranceDeviationId(i),
));
}
for i in 0..self
.model
.approximation_tolerance_parameter_arena
.items
.len()
{
roots.push(EntityKey::ApproximationToleranceParameter(
ApproximationToleranceParameterId(i),
));
}
for i in 0..self.model.area_in_set_arena.items.len() {
roots.push(EntityKey::AreaInSet(AreaInSetId(i)));
}
for i in 0..self.model.area_unit_arena.items.len() {
roots.push(EntityKey::AreaUnit(AreaUnitId(i)));
}
for i in 0..self.model.ascribable_state_arena.items.len() {
roots.push(EntityKey::AscribableState(AscribableStateId(i)));
}
for i in 0..self.model.ascribable_state_relationship_arena.items.len() {
roots.push(EntityKey::AscribableStateRelationship(
AscribableStateRelationshipId(i),
));
}
for i in 0..self.model.assembly_component_usage_arena.items.len() {
roots.push(EntityKey::AssemblyComponentUsage(AssemblyComponentUsageId(
i,
)));
}
for i in 0..self.model.auxiliary_leader_line_arena.items.len() {
roots.push(EntityKey::AuxiliaryLeaderLine(AuxiliaryLeaderLineId(i)));
}
for i in 0..self.model.axis1_placement_arena.items.len() {
roots.push(EntityKey::Axis1Placement(Axis1PlacementId(i)));
}
for i in 0..self.model.axis2_placement2d_arena.items.len() {
roots.push(EntityKey::Axis2Placement2d(Axis2Placement2dId(i)));
}
for i in 0..self.model.axis2_placement3d_arena.items.len() {
roots.push(EntityKey::Axis2Placement3d(Axis2Placement3dId(i)));
}
for i in 0..self.model.b_spline_curve_arena.items.len() {
roots.push(EntityKey::BSplineCurve(BSplineCurveId(i)));
}
for i in 0..self.model.b_spline_curve_with_knots_arena.items.len() {
roots.push(EntityKey::BSplineCurveWithKnots(BSplineCurveWithKnotsId(i)));
}
for i in 0..self.model.b_spline_surface_arena.items.len() {
roots.push(EntityKey::BSplineSurface(BSplineSurfaceId(i)));
}
for i in 0..self.model.b_spline_surface_with_knots_arena.items.len() {
roots.push(EntityKey::BSplineSurfaceWithKnots(
BSplineSurfaceWithKnotsId(i),
));
}
for i in 0..self.model.bezier_curve_arena.items.len() {
roots.push(EntityKey::BezierCurve(BezierCurveId(i)));
}
for i in 0..self.model.bezier_surface_arena.items.len() {
roots.push(EntityKey::BezierSurface(BezierSurfaceId(i)));
}
for i in 0..self.model.bounded_curve_arena.items.len() {
roots.push(EntityKey::BoundedCurve(BoundedCurveId(i)));
}
for i in 0..self.model.bounded_pcurve_arena.items.len() {
roots.push(EntityKey::BoundedPcurve(BoundedPcurveId(i)));
}
for i in 0..self.model.bounded_surface_arena.items.len() {
roots.push(EntityKey::BoundedSurface(BoundedSurfaceId(i)));
}
for i in 0..self.model.bounded_surface_curve_arena.items.len() {
roots.push(EntityKey::BoundedSurfaceCurve(BoundedSurfaceCurveId(i)));
}
for i in 0..self.model.brep_with_voids_arena.items.len() {
roots.push(EntityKey::BrepWithVoids(BrepWithVoidsId(i)));
}
for i in 0..self.model.calendar_date_arena.items.len() {
roots.push(EntityKey::CalendarDate(CalendarDateId(i)));
}
for i in 0..self.model.camera_image_arena.items.len() {
roots.push(EntityKey::CameraImage(CameraImageId(i)));
}
for i in 0..self.model.camera_image3d_with_scale_arena.items.len() {
roots.push(EntityKey::CameraImage3dWithScale(CameraImage3dWithScaleId(
i,
)));
}
for i in 0..self.model.camera_model_arena.items.len() {
roots.push(EntityKey::CameraModel(CameraModelId(i)));
}
for i in 0..self.model.camera_model_d3_arena.items.len() {
roots.push(EntityKey::CameraModelD3(CameraModelD3Id(i)));
}
for i in 0..self.model.camera_model_d3_multi_clipping_arena.items.len() {
roots.push(EntityKey::CameraModelD3MultiClipping(
CameraModelD3MultiClippingId(i),
));
}
for i in 0..self.model.camera_model_d3_with_hlhsr_arena.items.len() {
roots.push(EntityKey::CameraModelD3WithHlhsr(CameraModelD3WithHlhsrId(
i,
)));
}
for i in 0..self.model.camera_usage_arena.items.len() {
roots.push(EntityKey::CameraUsage(CameraUsageId(i)));
}
for i in 0..self.model.cartesian_point_arena.items.len() {
roots.push(EntityKey::CartesianPoint(CartesianPointId(i)));
}
for i in 0..self.model.cc_design_approval_arena.items.len() {
roots.push(EntityKey::CcDesignApproval(CcDesignApprovalId(i)));
}
for i in 0..self
.model
.cc_design_date_and_time_assignment_arena
.items
.len()
{
roots.push(EntityKey::CcDesignDateAndTimeAssignment(
CcDesignDateAndTimeAssignmentId(i),
));
}
for i in 0..self
.model
.cc_design_person_and_organization_assignment_arena
.items
.len()
{
roots.push(EntityKey::CcDesignPersonAndOrganizationAssignment(
CcDesignPersonAndOrganizationAssignmentId(i),
));
}
for i in 0..self
.model
.cc_design_security_classification_arena
.items
.len()
{
roots.push(EntityKey::CcDesignSecurityClassification(
CcDesignSecurityClassificationId(i),
));
}
for i in 0..self.model.centre_of_symmetry_arena.items.len() {
roots.push(EntityKey::CentreOfSymmetry(CentreOfSymmetryId(i)));
}
for i in 0..self.model.certification_arena.items.len() {
roots.push(EntityKey::Certification(CertificationId(i)));
}
for i in 0..self.model.certification_type_arena.items.len() {
roots.push(EntityKey::CertificationType(CertificationTypeId(i)));
}
for i in 0..self.model.change_arena.items.len() {
roots.push(EntityKey::Change(ChangeId(i)));
}
for i in 0..self.model.change_request_arena.items.len() {
roots.push(EntityKey::ChangeRequest(ChangeRequestId(i)));
}
for i in 0..self.model.character_glyph_style_outline_arena.items.len() {
roots.push(EntityKey::CharacterGlyphStyleOutline(
CharacterGlyphStyleOutlineId(i),
));
}
for i in 0..self.model.character_glyph_style_stroke_arena.items.len() {
roots.push(EntityKey::CharacterGlyphStyleStroke(
CharacterGlyphStyleStrokeId(i),
));
}
for i in 0..self
.model
.characterized_item_within_representation_arena
.items
.len()
{
roots.push(EntityKey::CharacterizedItemWithinRepresentation(
CharacterizedItemWithinRepresentationId(i),
));
}
for i in 0..self.model.characterized_object_arena.items.len() {
roots.push(EntityKey::CharacterizedObject(CharacterizedObjectId(i)));
}
for i in 0..self.model.characterized_representation_arena.items.len() {
roots.push(EntityKey::CharacterizedRepresentation(
CharacterizedRepresentationId(i),
));
}
for i in 0..self.model.circle_arena.items.len() {
roots.push(EntityKey::Circle(CircleId(i)));
}
for i in 0..self.model.circular_runout_tolerance_arena.items.len() {
roots.push(EntityKey::CircularRunoutTolerance(
CircularRunoutToleranceId(i),
));
}
for i in 0..self.model.closed_shell_arena.items.len() {
roots.push(EntityKey::ClosedShell(ClosedShellId(i)));
}
for i in 0..self.model.coaxiality_tolerance_arena.items.len() {
roots.push(EntityKey::CoaxialityTolerance(CoaxialityToleranceId(i)));
}
for i in 0..self.model.colour_arena.items.len() {
roots.push(EntityKey::Colour(ColourId(i)));
}
for i in 0..self.model.colour_rgb_arena.items.len() {
roots.push(EntityKey::ColourRgb(ColourRgbId(i)));
}
for i in 0..self.model.colour_specification_arena.items.len() {
roots.push(EntityKey::ColourSpecification(ColourSpecificationId(i)));
}
for i in 0..self.model.common_datum_arena.items.len() {
roots.push(EntityKey::CommonDatum(CommonDatumId(i)));
}
for i in 0..self.model.complex_triangulated_face_arena.items.len() {
roots.push(EntityKey::ComplexTriangulatedFace(
ComplexTriangulatedFaceId(i),
));
}
for i in 0..self
.model
.complex_triangulated_surface_set_arena
.items
.len()
{
roots.push(EntityKey::ComplexTriangulatedSurfaceSet(
ComplexTriangulatedSurfaceSetId(i),
));
}
for i in 0..self.model.composite_curve_arena.items.len() {
roots.push(EntityKey::CompositeCurve(CompositeCurveId(i)));
}
for i in 0..self.model.composite_curve_segment_arena.items.len() {
roots.push(EntityKey::CompositeCurveSegment(CompositeCurveSegmentId(i)));
}
for i in 0..self.model.composite_group_shape_aspect_arena.items.len() {
roots.push(EntityKey::CompositeGroupShapeAspect(
CompositeGroupShapeAspectId(i),
));
}
for i in 0..self.model.composite_shape_aspect_arena.items.len() {
roots.push(EntityKey::CompositeShapeAspect(CompositeShapeAspectId(i)));
}
for i in 0..self.model.composite_text_arena.items.len() {
roots.push(EntityKey::CompositeText(CompositeTextId(i)));
}
for i in 0..self.model.compound_representation_item_arena.items.len() {
roots.push(EntityKey::CompoundRepresentationItem(
CompoundRepresentationItemId(i),
));
}
for i in 0..self.model.concentricity_tolerance_arena.items.len() {
roots.push(EntityKey::ConcentricityTolerance(ConcentricityToleranceId(
i,
)));
}
for i in 0..self.model.configuration_design_arena.items.len() {
roots.push(EntityKey::ConfigurationDesign(ConfigurationDesignId(i)));
}
for i in 0..self.model.configuration_effectivity_arena.items.len() {
roots.push(EntityKey::ConfigurationEffectivity(
ConfigurationEffectivityId(i),
));
}
for i in 0..self.model.configuration_item_arena.items.len() {
roots.push(EntityKey::ConfigurationItem(ConfigurationItemId(i)));
}
for i in 0..self.model.conic_arena.items.len() {
roots.push(EntityKey::Conic(ConicId(i)));
}
for i in 0..self.model.conical_surface_arena.items.len() {
roots.push(EntityKey::ConicalSurface(ConicalSurfaceId(i)));
}
for i in 0..self.model.connected_face_set_arena.items.len() {
roots.push(EntityKey::ConnectedFaceSet(ConnectedFaceSetId(i)));
}
for i in 0..self
.model
.constructive_geometry_representation_arena
.items
.len()
{
roots.push(EntityKey::ConstructiveGeometryRepresentation(
ConstructiveGeometryRepresentationId(i),
));
}
for i in 0..self
.model
.constructive_geometry_representation_relationship_arena
.items
.len()
{
roots.push(EntityKey::ConstructiveGeometryRepresentationRelationship(
ConstructiveGeometryRepresentationRelationshipId(i),
));
}
for i in 0..self
.model
.context_dependent_over_riding_styled_item_arena
.items
.len()
{
roots.push(EntityKey::ContextDependentOverRidingStyledItem(
ContextDependentOverRidingStyledItemId(i),
));
}
for i in 0..self
.model
.context_dependent_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::ContextDependentShapeRepresentation(
ContextDependentShapeRepresentationId(i),
));
}
for i in 0..self.model.context_dependent_unit_arena.items.len() {
roots.push(EntityKey::ContextDependentUnit(ContextDependentUnitId(i)));
}
for i in 0..self.model.continuous_shape_aspect_arena.items.len() {
roots.push(EntityKey::ContinuousShapeAspect(ContinuousShapeAspectId(i)));
}
for i in 0..self.model.contract_arena.items.len() {
roots.push(EntityKey::Contract(ContractId(i)));
}
for i in 0..self.model.contract_type_arena.items.len() {
roots.push(EntityKey::ContractType(ContractTypeId(i)));
}
for i in 0..self.model.conversion_based_unit_arena.items.len() {
roots.push(EntityKey::ConversionBasedUnit(ConversionBasedUnitId(i)));
}
for i in 0..self
.model
.coordinated_universal_time_offset_arena
.items
.len()
{
roots.push(EntityKey::CoordinatedUniversalTimeOffset(
CoordinatedUniversalTimeOffsetId(i),
));
}
for i in 0..self.model.coordinates_list_arena.items.len() {
roots.push(EntityKey::CoordinatesList(CoordinatesListId(i)));
}
for i in 0..self.model.curve_arena.items.len() {
roots.push(EntityKey::Curve(CurveId(i)));
}
for i in 0..self.model.curve_style_arena.items.len() {
roots.push(EntityKey::CurveStyle(CurveStyleId(i)));
}
for i in 0..self.model.curve_style_font_arena.items.len() {
roots.push(EntityKey::CurveStyleFont(CurveStyleFontId(i)));
}
for i in 0..self.model.curve_style_font_and_scaling_arena.items.len() {
roots.push(EntityKey::CurveStyleFontAndScaling(
CurveStyleFontAndScalingId(i),
));
}
for i in 0..self.model.curve_style_font_pattern_arena.items.len() {
roots.push(EntityKey::CurveStyleFontPattern(CurveStyleFontPatternId(i)));
}
for i in 0..self.model.curve_style_rendering_arena.items.len() {
roots.push(EntityKey::CurveStyleRendering(CurveStyleRenderingId(i)));
}
for i in 0..self.model.cylindrical_surface_arena.items.len() {
roots.push(EntityKey::CylindricalSurface(CylindricalSurfaceId(i)));
}
for i in 0..self.model.cylindricity_tolerance_arena.items.len() {
roots.push(EntityKey::CylindricityTolerance(CylindricityToleranceId(i)));
}
for i in 0..self.model.date_arena.items.len() {
roots.push(EntityKey::Date(DateId(i)));
}
for i in 0..self.model.date_and_time_arena.items.len() {
roots.push(EntityKey::DateAndTime(DateAndTimeId(i)));
}
for i in 0..self.model.date_and_time_assignment_arena.items.len() {
roots.push(EntityKey::DateAndTimeAssignment(DateAndTimeAssignmentId(i)));
}
for i in 0..self.model.date_role_arena.items.len() {
roots.push(EntityKey::DateRole(DateRoleId(i)));
}
for i in 0..self.model.date_time_role_arena.items.len() {
roots.push(EntityKey::DateTimeRole(DateTimeRoleId(i)));
}
for i in 0..self.model.datum_arena.items.len() {
roots.push(EntityKey::Datum(DatumId(i)));
}
for i in 0..self.model.datum_feature_arena.items.len() {
roots.push(EntityKey::DatumFeature(DatumFeatureId(i)));
}
for i in 0..self.model.datum_reference_arena.items.len() {
roots.push(EntityKey::DatumReference(DatumReferenceId(i)));
}
for i in 0..self.model.datum_reference_compartment_arena.items.len() {
roots.push(EntityKey::DatumReferenceCompartment(
DatumReferenceCompartmentId(i),
));
}
for i in 0..self.model.datum_reference_element_arena.items.len() {
roots.push(EntityKey::DatumReferenceElement(DatumReferenceElementId(i)));
}
for i in 0..self
.model
.datum_reference_modifier_with_value_arena
.items
.len()
{
roots.push(EntityKey::DatumReferenceModifierWithValue(
DatumReferenceModifierWithValueId(i),
));
}
for i in 0..self.model.datum_system_arena.items.len() {
roots.push(EntityKey::DatumSystem(DatumSystemId(i)));
}
for i in 0..self.model.datum_target_arena.items.len() {
roots.push(EntityKey::DatumTarget(DatumTargetId(i)));
}
for i in 0..self.model.default_model_geometric_view_arena.items.len() {
roots.push(EntityKey::DefaultModelGeometricView(
DefaultModelGeometricViewId(i),
));
}
for i in 0..self.model.defined_character_glyph_arena.items.len() {
roots.push(EntityKey::DefinedCharacterGlyph(DefinedCharacterGlyphId(i)));
}
for i in 0..self.model.defined_symbol_arena.items.len() {
roots.push(EntityKey::DefinedSymbol(DefinedSymbolId(i)));
}
for i in 0..self.model.definitional_representation_arena.items.len() {
roots.push(EntityKey::DefinitionalRepresentation(
DefinitionalRepresentationId(i),
));
}
for i in 0..self
.model
.definitional_representation_relationship_arena
.items
.len()
{
roots.push(EntityKey::DefinitionalRepresentationRelationship(
DefinitionalRepresentationRelationshipId(i),
));
}
for i in 0..self
.model
.definitional_representation_relationship_with_same_context_arena
.items
.len()
{
roots.push(
EntityKey::DefinitionalRepresentationRelationshipWithSameContext(
DefinitionalRepresentationRelationshipWithSameContextId(i),
),
);
}
for i in 0..self.model.degenerate_toroidal_surface_arena.items.len() {
roots.push(EntityKey::DegenerateToroidalSurface(
DegenerateToroidalSurfaceId(i),
));
}
for i in 0..self.model.derived_shape_aspect_arena.items.len() {
roots.push(EntityKey::DerivedShapeAspect(DerivedShapeAspectId(i)));
}
for i in 0..self.model.derived_unit_arena.items.len() {
roots.push(EntityKey::DerivedUnit(DerivedUnitId(i)));
}
for i in 0..self.model.derived_unit_element_arena.items.len() {
roots.push(EntityKey::DerivedUnitElement(DerivedUnitElementId(i)));
}
for i in 0..self.model.description_attribute_arena.items.len() {
roots.push(EntityKey::DescriptionAttribute(DescriptionAttributeId(i)));
}
for i in 0..self.model.descriptive_representation_item_arena.items.len() {
roots.push(EntityKey::DescriptiveRepresentationItem(
DescriptiveRepresentationItemId(i),
));
}
for i in 0..self.model.design_context_arena.items.len() {
roots.push(EntityKey::DesignContext(DesignContextId(i)));
}
for i in 0..self
.model
.dimensional_characteristic_representation_arena
.items
.len()
{
roots.push(EntityKey::DimensionalCharacteristicRepresentation(
DimensionalCharacteristicRepresentationId(i),
));
}
for i in 0..self.model.dimensional_exponents_arena.items.len() {
roots.push(EntityKey::DimensionalExponents(DimensionalExponentsId(i)));
}
for i in 0..self.model.dimensional_location_arena.items.len() {
roots.push(EntityKey::DimensionalLocation(DimensionalLocationId(i)));
}
for i in 0..self.model.dimensional_location_with_path_arena.items.len() {
roots.push(EntityKey::DimensionalLocationWithPath(
DimensionalLocationWithPathId(i),
));
}
for i in 0..self.model.dimensional_size_arena.items.len() {
roots.push(EntityKey::DimensionalSize(DimensionalSizeId(i)));
}
for i in 0..self
.model
.dimensional_size_with_datum_feature_arena
.items
.len()
{
roots.push(EntityKey::DimensionalSizeWithDatumFeature(
DimensionalSizeWithDatumFeatureId(i),
));
}
for i in 0..self.model.dimensional_size_with_path_arena.items.len() {
roots.push(EntityKey::DimensionalSizeWithPath(
DimensionalSizeWithPathId(i),
));
}
for i in 0..self.model.directed_dimensional_location_arena.items.len() {
roots.push(EntityKey::DirectedDimensionalLocation(
DirectedDimensionalLocationId(i),
));
}
for i in 0..self.model.direction_arena.items.len() {
roots.push(EntityKey::Direction(DirectionId(i)));
}
for i in 0..self.model.document_arena.items.len() {
roots.push(EntityKey::Document(DocumentId(i)));
}
for i in 0..self.model.document_file_arena.items.len() {
roots.push(EntityKey::DocumentFile(DocumentFileId(i)));
}
for i in 0..self.model.document_product_association_arena.items.len() {
roots.push(EntityKey::DocumentProductAssociation(
DocumentProductAssociationId(i),
));
}
for i in 0..self.model.document_product_equivalence_arena.items.len() {
roots.push(EntityKey::DocumentProductEquivalence(
DocumentProductEquivalenceId(i),
));
}
for i in 0..self.model.document_reference_arena.items.len() {
roots.push(EntityKey::DocumentReference(DocumentReferenceId(i)));
}
for i in 0..self.model.document_representation_type_arena.items.len() {
roots.push(EntityKey::DocumentRepresentationType(
DocumentRepresentationTypeId(i),
));
}
for i in 0..self.model.document_type_arena.items.len() {
roots.push(EntityKey::DocumentType(DocumentTypeId(i)));
}
for i in 0..self
.model
.draughting_annotation_occurrence_arena
.items
.len()
{
roots.push(EntityKey::DraughtingAnnotationOccurrence(
DraughtingAnnotationOccurrenceId(i),
));
}
for i in 0..self.model.draughting_callout_arena.items.len() {
roots.push(EntityKey::DraughtingCallout(DraughtingCalloutId(i)));
}
for i in 0..self.model.draughting_callout_relationship_arena.items.len() {
roots.push(EntityKey::DraughtingCalloutRelationship(
DraughtingCalloutRelationshipId(i),
));
}
for i in 0..self.model.draughting_model_arena.items.len() {
roots.push(EntityKey::DraughtingModel(DraughtingModelId(i)));
}
for i in 0..self
.model
.draughting_model_item_association_arena
.items
.len()
{
roots.push(EntityKey::DraughtingModelItemAssociation(
DraughtingModelItemAssociationId(i),
));
}
for i in 0..self
.model
.draughting_model_item_association_with_placeholder_arena
.items
.len()
{
roots.push(EntityKey::DraughtingModelItemAssociationWithPlaceholder(
DraughtingModelItemAssociationWithPlaceholderId(i),
));
}
for i in 0..self.model.draughting_pre_defined_colour_arena.items.len() {
roots.push(EntityKey::DraughtingPreDefinedColour(
DraughtingPreDefinedColourId(i),
));
}
for i in 0..self
.model
.draughting_pre_defined_curve_font_arena
.items
.len()
{
roots.push(EntityKey::DraughtingPreDefinedCurveFont(
DraughtingPreDefinedCurveFontId(i),
));
}
for i in 0..self
.model
.draughting_pre_defined_text_font_arena
.items
.len()
{
roots.push(EntityKey::DraughtingPreDefinedTextFont(
DraughtingPreDefinedTextFontId(i),
));
}
for i in 0..self.model.edge_arena.items.len() {
roots.push(EntityKey::Edge(EdgeId(i)));
}
for i in 0..self.model.edge_curve_arena.items.len() {
roots.push(EntityKey::EdgeCurve(EdgeCurveId(i)));
}
for i in 0..self.model.edge_loop_arena.items.len() {
roots.push(EntityKey::EdgeLoop(EdgeLoopId(i)));
}
for i in 0..self.model.effectivity_arena.items.len() {
roots.push(EntityKey::Effectivity(EffectivityId(i)));
}
for i in 0..self.model.elementary_surface_arena.items.len() {
roots.push(EntityKey::ElementarySurface(ElementarySurfaceId(i)));
}
for i in 0..self.model.ellipse_arena.items.len() {
roots.push(EntityKey::Ellipse(EllipseId(i)));
}
for i in 0..self.model.expression_arena.items.len() {
roots.push(EntityKey::Expression(ExpressionId(i)));
}
for i in 0..self
.model
.external_identification_assignment_arena
.items
.len()
{
roots.push(EntityKey::ExternalIdentificationAssignment(
ExternalIdentificationAssignmentId(i),
));
}
for i in 0..self.model.external_source_arena.items.len() {
roots.push(EntityKey::ExternalSource(ExternalSourceId(i)));
}
for i in 0..self
.model
.externally_defined_character_glyph_arena
.items
.len()
{
roots.push(EntityKey::ExternallyDefinedCharacterGlyph(
ExternallyDefinedCharacterGlyphId(i),
));
}
for i in 0..self.model.externally_defined_curve_font_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedCurveFont(
ExternallyDefinedCurveFontId(i),
));
}
for i in 0..self.model.externally_defined_hatch_style_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedHatchStyle(
ExternallyDefinedHatchStyleId(i),
));
}
for i in 0..self.model.externally_defined_item_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedItem(ExternallyDefinedItemId(i)));
}
for i in 0..self.model.externally_defined_style_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedStyle(ExternallyDefinedStyleId(
i,
)));
}
for i in 0..self.model.externally_defined_symbol_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedSymbol(
ExternallyDefinedSymbolId(i),
));
}
for i in 0..self.model.externally_defined_text_font_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedTextFont(
ExternallyDefinedTextFontId(i),
));
}
for i in 0..self.model.externally_defined_tile_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedTile(ExternallyDefinedTileId(i)));
}
for i in 0..self.model.externally_defined_tile_style_arena.items.len() {
roots.push(EntityKey::ExternallyDefinedTileStyle(
ExternallyDefinedTileStyleId(i),
));
}
for i in 0..self.model.face_arena.items.len() {
roots.push(EntityKey::Face(FaceId(i)));
}
for i in 0..self.model.face_bound_arena.items.len() {
roots.push(EntityKey::FaceBound(FaceBoundId(i)));
}
for i in 0..self.model.face_outer_bound_arena.items.len() {
roots.push(EntityKey::FaceOuterBound(FaceOuterBoundId(i)));
}
for i in 0..self.model.face_surface_arena.items.len() {
roots.push(EntityKey::FaceSurface(FaceSurfaceId(i)));
}
for i in 0..self
.model
.feature_for_datum_target_relationship_arena
.items
.len()
{
roots.push(EntityKey::FeatureForDatumTargetRelationship(
FeatureForDatumTargetRelationshipId(i),
));
}
for i in 0..self.model.fill_area_style_arena.items.len() {
roots.push(EntityKey::FillAreaStyle(FillAreaStyleId(i)));
}
for i in 0..self.model.fill_area_style_colour_arena.items.len() {
roots.push(EntityKey::FillAreaStyleColour(FillAreaStyleColourId(i)));
}
for i in 0..self.model.fill_area_style_hatching_arena.items.len() {
roots.push(EntityKey::FillAreaStyleHatching(FillAreaStyleHatchingId(i)));
}
for i in 0..self
.model
.fill_area_style_tile_coloured_region_arena
.items
.len()
{
roots.push(EntityKey::FillAreaStyleTileColouredRegion(
FillAreaStyleTileColouredRegionId(i),
));
}
for i in 0..self
.model
.fill_area_style_tile_curve_with_style_arena
.items
.len()
{
roots.push(EntityKey::FillAreaStyleTileCurveWithStyle(
FillAreaStyleTileCurveWithStyleId(i),
));
}
for i in 0..self
.model
.fill_area_style_tile_symbol_with_style_arena
.items
.len()
{
roots.push(EntityKey::FillAreaStyleTileSymbolWithStyle(
FillAreaStyleTileSymbolWithStyleId(i),
));
}
for i in 0..self.model.fill_area_style_tiles_arena.items.len() {
roots.push(EntityKey::FillAreaStyleTiles(FillAreaStyleTilesId(i)));
}
for i in 0..self.model.flatness_tolerance_arena.items.len() {
roots.push(EntityKey::FlatnessTolerance(FlatnessToleranceId(i)));
}
for i in 0..self.model.founded_item_arena.items.len() {
roots.push(EntityKey::FoundedItem(FoundedItemId(i)));
}
for i in 0..self
.model
.functionally_defined_transformation_arena
.items
.len()
{
roots.push(EntityKey::FunctionallyDefinedTransformation(
FunctionallyDefinedTransformationId(i),
));
}
for i in 0..self.model.general_datum_reference_arena.items.len() {
roots.push(EntityKey::GeneralDatumReference(GeneralDatumReferenceId(i)));
}
for i in 0..self.model.general_property_arena.items.len() {
roots.push(EntityKey::GeneralProperty(GeneralPropertyId(i)));
}
for i in 0..self.model.general_property_association_arena.items.len() {
roots.push(EntityKey::GeneralPropertyAssociation(
GeneralPropertyAssociationId(i),
));
}
for i in 0..self.model.generic_expression_arena.items.len() {
roots.push(EntityKey::GenericExpression(GenericExpressionId(i)));
}
for i in 0..self.model.generic_literal_arena.items.len() {
roots.push(EntityKey::GenericLiteral(GenericLiteralId(i)));
}
for i in 0..self
.model
.generic_product_definition_reference_arena
.items
.len()
{
roots.push(EntityKey::GenericProductDefinitionReference(
GenericProductDefinitionReferenceId(i),
));
}
for i in 0..self.model.geometric_curve_set_arena.items.len() {
roots.push(EntityKey::GeometricCurveSet(GeometricCurveSetId(i)));
}
for i in 0..self.model.geometric_item_specific_usage_arena.items.len() {
roots.push(EntityKey::GeometricItemSpecificUsage(
GeometricItemSpecificUsageId(i),
));
}
for i in 0..self
.model
.geometric_representation_context_arena
.items
.len()
{
roots.push(EntityKey::GeometricRepresentationContext(
GeometricRepresentationContextId(i),
));
}
for i in 0..self.model.geometric_representation_item_arena.items.len() {
roots.push(EntityKey::GeometricRepresentationItem(
GeometricRepresentationItemId(i),
));
}
for i in 0..self.model.geometric_set_arena.items.len() {
roots.push(EntityKey::GeometricSet(GeometricSetId(i)));
}
for i in 0..self.model.geometric_tolerance_arena.items.len() {
roots.push(EntityKey::GeometricTolerance(GeometricToleranceId(i)));
}
for i in 0..self
.model
.geometric_tolerance_relationship_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceRelationship(
GeometricToleranceRelationshipId(i),
));
}
for i in 0..self
.model
.geometric_tolerance_with_datum_reference_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceWithDatumReference(
GeometricToleranceWithDatumReferenceId(i),
));
}
for i in 0..self
.model
.geometric_tolerance_with_defined_area_unit_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceWithDefinedAreaUnit(
GeometricToleranceWithDefinedAreaUnitId(i),
));
}
for i in 0..self
.model
.geometric_tolerance_with_defined_unit_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceWithDefinedUnit(
GeometricToleranceWithDefinedUnitId(i),
));
}
for i in 0..self
.model
.geometric_tolerance_with_maximum_tolerance_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceWithMaximumTolerance(
GeometricToleranceWithMaximumToleranceId(i),
));
}
for i in 0..self
.model
.geometric_tolerance_with_modifiers_arena
.items
.len()
{
roots.push(EntityKey::GeometricToleranceWithModifiers(
GeometricToleranceWithModifiersId(i),
));
}
for i in 0..self
.model
.geometrically_bounded_surface_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::GeometricallyBoundedSurfaceShapeRepresentation(
GeometricallyBoundedSurfaceShapeRepresentationId(i),
));
}
for i in 0..self
.model
.geometrically_bounded_wireframe_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::GeometricallyBoundedWireframeShapeRepresentation(
GeometricallyBoundedWireframeShapeRepresentationId(i),
));
}
for i in 0..self
.model
.global_uncertainty_assigned_context_arena
.items
.len()
{
roots.push(EntityKey::GlobalUncertaintyAssignedContext(
GlobalUncertaintyAssignedContextId(i),
));
}
for i in 0..self.model.global_unit_assigned_context_arena.items.len() {
roots.push(EntityKey::GlobalUnitAssignedContext(
GlobalUnitAssignedContextId(i),
));
}
for i in 0..self.model.group_arena.items.len() {
roots.push(EntityKey::Group(GroupId(i)));
}
for i in 0..self.model.group_assignment_arena.items.len() {
roots.push(EntityKey::GroupAssignment(GroupAssignmentId(i)));
}
for i in 0..self.model.hyperbola_arena.items.len() {
roots.push(EntityKey::Hyperbola(HyperbolaId(i)));
}
for i in 0..self.model.id_attribute_arena.items.len() {
roots.push(EntityKey::IdAttribute(IdAttributeId(i)));
}
for i in 0..self.model.identification_assignment_arena.items.len() {
roots.push(EntityKey::IdentificationAssignment(
IdentificationAssignmentId(i),
));
}
for i in 0..self.model.identification_role_arena.items.len() {
roots.push(EntityKey::IdentificationRole(IdentificationRoleId(i)));
}
for i in 0..self.model.int_literal_arena.items.len() {
roots.push(EntityKey::IntLiteral(IntLiteralId(i)));
}
for i in 0..self.model.integer_representation_item_arena.items.len() {
roots.push(EntityKey::IntegerRepresentationItem(
IntegerRepresentationItemId(i),
));
}
for i in 0..self.model.intersection_curve_arena.items.len() {
roots.push(EntityKey::IntersectionCurve(IntersectionCurveId(i)));
}
for i in 0..self.model.invisibility_arena.items.len() {
roots.push(EntityKey::Invisibility(InvisibilityId(i)));
}
for i in 0..self.model.item_defined_transformation_arena.items.len() {
roots.push(EntityKey::ItemDefinedTransformation(
ItemDefinedTransformationId(i),
));
}
for i in 0..self
.model
.item_identified_representation_usage_arena
.items
.len()
{
roots.push(EntityKey::ItemIdentifiedRepresentationUsage(
ItemIdentifiedRepresentationUsageId(i),
));
}
for i in 0..self.model.leader_curve_arena.items.len() {
roots.push(EntityKey::LeaderCurve(LeaderCurveId(i)));
}
for i in 0..self.model.leader_directed_callout_arena.items.len() {
roots.push(EntityKey::LeaderDirectedCallout(LeaderDirectedCalloutId(i)));
}
for i in 0..self.model.leader_terminator_arena.items.len() {
roots.push(EntityKey::LeaderTerminator(LeaderTerminatorId(i)));
}
for i in 0..self.model.length_measure_with_unit_arena.items.len() {
roots.push(EntityKey::LengthMeasureWithUnit(LengthMeasureWithUnitId(i)));
}
for i in 0..self.model.length_unit_arena.items.len() {
roots.push(EntityKey::LengthUnit(LengthUnitId(i)));
}
for i in 0..self.model.limits_and_fits_arena.items.len() {
roots.push(EntityKey::LimitsAndFits(LimitsAndFitsId(i)));
}
for i in 0..self.model.line_arena.items.len() {
roots.push(EntityKey::Line(LineId(i)));
}
for i in 0..self.model.line_profile_tolerance_arena.items.len() {
roots.push(EntityKey::LineProfileTolerance(LineProfileToleranceId(i)));
}
for i in 0..self.model.literal_number_arena.items.len() {
roots.push(EntityKey::LiteralNumber(LiteralNumberId(i)));
}
for i in 0..self.model.local_time_arena.items.len() {
roots.push(EntityKey::LocalTime(LocalTimeId(i)));
}
for i in 0..self.model.loop_arena.items.len() {
roots.push(EntityKey::Loop(LoopId(i)));
}
for i in 0..self.model.make_from_usage_option_arena.items.len() {
roots.push(EntityKey::MakeFromUsageOption(MakeFromUsageOptionId(i)));
}
for i in 0..self.model.manifold_solid_brep_arena.items.len() {
roots.push(EntityKey::ManifoldSolidBrep(ManifoldSolidBrepId(i)));
}
for i in 0..self
.model
.manifold_surface_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::ManifoldSurfaceShapeRepresentation(
ManifoldSurfaceShapeRepresentationId(i),
));
}
for i in 0..self.model.mapped_item_arena.items.len() {
roots.push(EntityKey::MappedItem(MappedItemId(i)));
}
for i in 0..self.model.mass_measure_with_unit_arena.items.len() {
roots.push(EntityKey::MassMeasureWithUnit(MassMeasureWithUnitId(i)));
}
for i in 0..self.model.mass_unit_arena.items.len() {
roots.push(EntityKey::MassUnit(MassUnitId(i)));
}
for i in 0..self.model.measure_qualification_arena.items.len() {
roots.push(EntityKey::MeasureQualification(MeasureQualificationId(i)));
}
for i in 0..self.model.measure_representation_item_arena.items.len() {
roots.push(EntityKey::MeasureRepresentationItem(
MeasureRepresentationItemId(i),
));
}
for i in 0..self.model.measure_with_unit_arena.items.len() {
roots.push(EntityKey::MeasureWithUnit(MeasureWithUnitId(i)));
}
for i in 0..self.model.mechanical_context_arena.items.len() {
roots.push(EntityKey::MechanicalContext(MechanicalContextId(i)));
}
for i in 0..self
.model
.mechanical_design_and_draughting_relationship_arena
.items
.len()
{
roots.push(EntityKey::MechanicalDesignAndDraughtingRelationship(
MechanicalDesignAndDraughtingRelationshipId(i),
));
}
for i in 0..self
.model
.mechanical_design_geometric_presentation_representation_arena
.items
.len()
{
roots.push(
EntityKey::MechanicalDesignGeometricPresentationRepresentation(
MechanicalDesignGeometricPresentationRepresentationId(i),
),
);
}
for i in 0..self
.model
.mechanical_design_presentation_representation_with_draughting_arena
.items
.len()
{
roots.push(
EntityKey::MechanicalDesignPresentationRepresentationWithDraughting(
MechanicalDesignPresentationRepresentationWithDraughtingId(i),
),
);
}
for i in 0..self
.model
.mechanical_design_shaded_presentation_representation_arena
.items
.len()
{
roots.push(EntityKey::MechanicalDesignShadedPresentationRepresentation(
MechanicalDesignShadedPresentationRepresentationId(i),
));
}
for i in 0..self.model.model_geometric_view_arena.items.len() {
roots.push(EntityKey::ModelGeometricView(ModelGeometricViewId(i)));
}
for i in 0..self.model.modified_geometric_tolerance_arena.items.len() {
roots.push(EntityKey::ModifiedGeometricTolerance(
ModifiedGeometricToleranceId(i),
));
}
for i in 0..self.model.name_attribute_arena.items.len() {
roots.push(EntityKey::NameAttribute(NameAttributeId(i)));
}
for i in 0..self.model.named_unit_arena.items.len() {
roots.push(EntityKey::NamedUnit(NamedUnitId(i)));
}
for i in 0..self.model.next_assembly_usage_occurrence_arena.items.len() {
roots.push(EntityKey::NextAssemblyUsageOccurrence(
NextAssemblyUsageOccurrenceId(i),
));
}
for i in 0..self.model.numeric_expression_arena.items.len() {
roots.push(EntityKey::NumericExpression(NumericExpressionId(i)));
}
for i in 0..self.model.object_role_arena.items.len() {
roots.push(EntityKey::ObjectRole(ObjectRoleId(i)));
}
for i in 0..self.model.offset_surface_arena.items.len() {
roots.push(EntityKey::OffsetSurface(OffsetSurfaceId(i)));
}
for i in 0..self.model.one_direction_repeat_factor_arena.items.len() {
roots.push(EntityKey::OneDirectionRepeatFactor(
OneDirectionRepeatFactorId(i),
));
}
for i in 0..self.model.open_shell_arena.items.len() {
roots.push(EntityKey::OpenShell(OpenShellId(i)));
}
for i in 0..self.model.organization_arena.items.len() {
roots.push(EntityKey::Organization(OrganizationId(i)));
}
for i in 0..self.model.organization_relationship_arena.items.len() {
roots.push(EntityKey::OrganizationRelationship(
OrganizationRelationshipId(i),
));
}
for i in 0..self.model.organization_role_arena.items.len() {
roots.push(EntityKey::OrganizationRole(OrganizationRoleId(i)));
}
for i in 0..self.model.organization_type_arena.items.len() {
roots.push(EntityKey::OrganizationType(OrganizationTypeId(i)));
}
for i in 0..self.model.organization_type_role_arena.items.len() {
roots.push(EntityKey::OrganizationTypeRole(OrganizationTypeRoleId(i)));
}
for i in 0..self.model.organizational_address_arena.items.len() {
roots.push(EntityKey::OrganizationalAddress(OrganizationalAddressId(i)));
}
for i in 0..self.model.organizational_project_arena.items.len() {
roots.push(EntityKey::OrganizationalProject(OrganizationalProjectId(i)));
}
for i in 0..self
.model
.organizational_project_relationship_arena
.items
.len()
{
roots.push(EntityKey::OrganizationalProjectRelationship(
OrganizationalProjectRelationshipId(i),
));
}
for i in 0..self.model.organizational_project_role_arena.items.len() {
roots.push(EntityKey::OrganizationalProjectRole(
OrganizationalProjectRoleId(i),
));
}
for i in 0..self.model.oriented_closed_shell_arena.items.len() {
roots.push(EntityKey::OrientedClosedShell(OrientedClosedShellId(i)));
}
for i in 0..self.model.oriented_edge_arena.items.len() {
roots.push(EntityKey::OrientedEdge(OrientedEdgeId(i)));
}
for i in 0..self.model.over_riding_styled_item_arena.items.len() {
roots.push(EntityKey::OverRidingStyledItem(OverRidingStyledItemId(i)));
}
for i in 0..self.model.parallelism_tolerance_arena.items.len() {
roots.push(EntityKey::ParallelismTolerance(ParallelismToleranceId(i)));
}
for i in 0..self
.model
.parametric_representation_context_arena
.items
.len()
{
roots.push(EntityKey::ParametricRepresentationContext(
ParametricRepresentationContextId(i),
));
}
for i in 0..self.model.path_arena.items.len() {
roots.push(EntityKey::Path(PathId(i)));
}
for i in 0..self.model.pcurve_arena.items.len() {
roots.push(EntityKey::Pcurve(PcurveId(i)));
}
for i in 0..self.model.perpendicularity_tolerance_arena.items.len() {
roots.push(EntityKey::PerpendicularityTolerance(
PerpendicularityToleranceId(i),
));
}
for i in 0..self.model.person_arena.items.len() {
roots.push(EntityKey::Person(PersonId(i)));
}
for i in 0..self.model.person_and_organization_arena.items.len() {
roots.push(EntityKey::PersonAndOrganization(PersonAndOrganizationId(i)));
}
for i in 0..self.model.person_and_organization_address_arena.items.len() {
roots.push(EntityKey::PersonAndOrganizationAddress(
PersonAndOrganizationAddressId(i),
));
}
for i in 0..self
.model
.person_and_organization_assignment_arena
.items
.len()
{
roots.push(EntityKey::PersonAndOrganizationAssignment(
PersonAndOrganizationAssignmentId(i),
));
}
for i in 0..self.model.person_and_organization_role_arena.items.len() {
roots.push(EntityKey::PersonAndOrganizationRole(
PersonAndOrganizationRoleId(i),
));
}
for i in 0..self.model.personal_address_arena.items.len() {
roots.push(EntityKey::PersonalAddress(PersonalAddressId(i)));
}
for i in 0..self.model.placed_datum_target_feature_arena.items.len() {
roots.push(EntityKey::PlacedDatumTargetFeature(
PlacedDatumTargetFeatureId(i),
));
}
for i in 0..self.model.placement_arena.items.len() {
roots.push(EntityKey::Placement(PlacementId(i)));
}
for i in 0..self.model.planar_box_arena.items.len() {
roots.push(EntityKey::PlanarBox(PlanarBoxId(i)));
}
for i in 0..self.model.planar_extent_arena.items.len() {
roots.push(EntityKey::PlanarExtent(PlanarExtentId(i)));
}
for i in 0..self.model.plane_arena.items.len() {
roots.push(EntityKey::Plane(PlaneId(i)));
}
for i in 0..self.model.plane_angle_measure_with_unit_arena.items.len() {
roots.push(EntityKey::PlaneAngleMeasureWithUnit(
PlaneAngleMeasureWithUnitId(i),
));
}
for i in 0..self.model.plane_angle_unit_arena.items.len() {
roots.push(EntityKey::PlaneAngleUnit(PlaneAngleUnitId(i)));
}
for i in 0..self.model.plus_minus_tolerance_arena.items.len() {
roots.push(EntityKey::PlusMinusTolerance(PlusMinusToleranceId(i)));
}
for i in 0..self.model.point_arena.items.len() {
roots.push(EntityKey::Point(PointId(i)));
}
for i in 0..self.model.point_style_arena.items.len() {
roots.push(EntityKey::PointStyle(PointStyleId(i)));
}
for i in 0..self.model.poly_loop_arena.items.len() {
roots.push(EntityKey::PolyLoop(PolyLoopId(i)));
}
for i in 0..self.model.polyline_arena.items.len() {
roots.push(EntityKey::Polyline(PolylineId(i)));
}
for i in 0..self.model.position_tolerance_arena.items.len() {
roots.push(EntityKey::PositionTolerance(PositionToleranceId(i)));
}
for i in 0..self.model.pre_defined_character_glyph_arena.items.len() {
roots.push(EntityKey::PreDefinedCharacterGlyph(
PreDefinedCharacterGlyphId(i),
));
}
for i in 0..self.model.pre_defined_colour_arena.items.len() {
roots.push(EntityKey::PreDefinedColour(PreDefinedColourId(i)));
}
for i in 0..self.model.pre_defined_curve_font_arena.items.len() {
roots.push(EntityKey::PreDefinedCurveFont(PreDefinedCurveFontId(i)));
}
for i in 0..self.model.pre_defined_item_arena.items.len() {
roots.push(EntityKey::PreDefinedItem(PreDefinedItemId(i)));
}
for i in 0..self.model.pre_defined_marker_arena.items.len() {
roots.push(EntityKey::PreDefinedMarker(PreDefinedMarkerId(i)));
}
for i in 0..self.model.pre_defined_point_marker_symbol_arena.items.len() {
roots.push(EntityKey::PreDefinedPointMarkerSymbol(
PreDefinedPointMarkerSymbolId(i),
));
}
for i in 0..self.model.pre_defined_presentation_style_arena.items.len() {
roots.push(EntityKey::PreDefinedPresentationStyle(
PreDefinedPresentationStyleId(i),
));
}
for i in 0..self.model.pre_defined_surface_side_style_arena.items.len() {
roots.push(EntityKey::PreDefinedSurfaceSideStyle(
PreDefinedSurfaceSideStyleId(i),
));
}
for i in 0..self.model.pre_defined_symbol_arena.items.len() {
roots.push(EntityKey::PreDefinedSymbol(PreDefinedSymbolId(i)));
}
for i in 0..self.model.pre_defined_terminator_symbol_arena.items.len() {
roots.push(EntityKey::PreDefinedTerminatorSymbol(
PreDefinedTerminatorSymbolId(i),
));
}
for i in 0..self.model.pre_defined_text_font_arena.items.len() {
roots.push(EntityKey::PreDefinedTextFont(PreDefinedTextFontId(i)));
}
for i in 0..self.model.pre_defined_tile_arena.items.len() {
roots.push(EntityKey::PreDefinedTile(PreDefinedTileId(i)));
}
for i in 0..self.model.precision_qualifier_arena.items.len() {
roots.push(EntityKey::PrecisionQualifier(PrecisionQualifierId(i)));
}
for i in 0..self.model.presentation_area_arena.items.len() {
roots.push(EntityKey::PresentationArea(PresentationAreaId(i)));
}
for i in 0..self.model.presentation_layer_assignment_arena.items.len() {
roots.push(EntityKey::PresentationLayerAssignment(
PresentationLayerAssignmentId(i),
));
}
for i in 0..self.model.presentation_representation_arena.items.len() {
roots.push(EntityKey::PresentationRepresentation(
PresentationRepresentationId(i),
));
}
for i in 0..self.model.presentation_set_arena.items.len() {
roots.push(EntityKey::PresentationSet(PresentationSetId(i)));
}
for i in 0..self.model.presentation_size_arena.items.len() {
roots.push(EntityKey::PresentationSize(PresentationSizeId(i)));
}
for i in 0..self.model.presentation_style_assignment_arena.items.len() {
roots.push(EntityKey::PresentationStyleAssignment(
PresentationStyleAssignmentId(i),
));
}
for i in 0..self.model.presentation_style_by_context_arena.items.len() {
roots.push(EntityKey::PresentationStyleByContext(
PresentationStyleByContextId(i),
));
}
for i in 0..self.model.presentation_view_arena.items.len() {
roots.push(EntityKey::PresentationView(PresentationViewId(i)));
}
for i in 0..self.model.presented_item_arena.items.len() {
roots.push(EntityKey::PresentedItem(PresentedItemId(i)));
}
for i in 0..self.model.presented_item_representation_arena.items.len() {
roots.push(EntityKey::PresentedItemRepresentation(
PresentedItemRepresentationId(i),
));
}
for i in 0..self.model.product_arena.items.len() {
roots.push(EntityKey::Product(ProductId(i)));
}
for i in 0..self.model.product_category_arena.items.len() {
roots.push(EntityKey::ProductCategory(ProductCategoryId(i)));
}
for i in 0..self.model.product_category_relationship_arena.items.len() {
roots.push(EntityKey::ProductCategoryRelationship(
ProductCategoryRelationshipId(i),
));
}
for i in 0..self.model.product_concept_arena.items.len() {
roots.push(EntityKey::ProductConcept(ProductConceptId(i)));
}
for i in 0..self.model.product_concept_context_arena.items.len() {
roots.push(EntityKey::ProductConceptContext(ProductConceptContextId(i)));
}
for i in 0..self.model.product_concept_feature_arena.items.len() {
roots.push(EntityKey::ProductConceptFeature(ProductConceptFeatureId(i)));
}
for i in 0..self
.model
.product_concept_feature_category_arena
.items
.len()
{
roots.push(EntityKey::ProductConceptFeatureCategory(
ProductConceptFeatureCategoryId(i),
));
}
for i in 0..self.model.product_context_arena.items.len() {
roots.push(EntityKey::ProductContext(ProductContextId(i)));
}
for i in 0..self.model.product_definition_arena.items.len() {
roots.push(EntityKey::ProductDefinition(ProductDefinitionId(i)));
}
for i in 0..self.model.product_definition_context_arena.items.len() {
roots.push(EntityKey::ProductDefinitionContext(
ProductDefinitionContextId(i),
));
}
for i in 0..self
.model
.product_definition_context_association_arena
.items
.len()
{
roots.push(EntityKey::ProductDefinitionContextAssociation(
ProductDefinitionContextAssociationId(i),
));
}
for i in 0..self.model.product_definition_context_role_arena.items.len() {
roots.push(EntityKey::ProductDefinitionContextRole(
ProductDefinitionContextRoleId(i),
));
}
for i in 0..self.model.product_definition_effectivity_arena.items.len() {
roots.push(EntityKey::ProductDefinitionEffectivity(
ProductDefinitionEffectivityId(i),
));
}
for i in 0..self.model.product_definition_formation_arena.items.len() {
roots.push(EntityKey::ProductDefinitionFormation(
ProductDefinitionFormationId(i),
));
}
for i in 0..self
.model
.product_definition_formation_with_specified_source_arena
.items
.len()
{
roots.push(EntityKey::ProductDefinitionFormationWithSpecifiedSource(
ProductDefinitionFormationWithSpecifiedSourceId(i),
));
}
for i in 0..self.model.product_definition_occurrence_arena.items.len() {
roots.push(EntityKey::ProductDefinitionOccurrence(
ProductDefinitionOccurrenceId(i),
));
}
for i in 0..self.model.product_definition_relationship_arena.items.len() {
roots.push(EntityKey::ProductDefinitionRelationship(
ProductDefinitionRelationshipId(i),
));
}
for i in 0..self
.model
.product_definition_relationship_relationship_arena
.items
.len()
{
roots.push(EntityKey::ProductDefinitionRelationshipRelationship(
ProductDefinitionRelationshipRelationshipId(i),
));
}
for i in 0..self.model.product_definition_shape_arena.items.len() {
roots.push(EntityKey::ProductDefinitionShape(ProductDefinitionShapeId(
i,
)));
}
for i in 0..self.model.product_definition_substitute_arena.items.len() {
roots.push(EntityKey::ProductDefinitionSubstitute(
ProductDefinitionSubstituteId(i),
));
}
for i in 0..self.model.product_definition_usage_arena.items.len() {
roots.push(EntityKey::ProductDefinitionUsage(ProductDefinitionUsageId(
i,
)));
}
for i in 0..self
.model
.product_definition_with_associated_documents_arena
.items
.len()
{
roots.push(EntityKey::ProductDefinitionWithAssociatedDocuments(
ProductDefinitionWithAssociatedDocumentsId(i),
));
}
for i in 0..self
.model
.product_related_product_category_arena
.items
.len()
{
roots.push(EntityKey::ProductRelatedProductCategory(
ProductRelatedProductCategoryId(i),
));
}
for i in 0..self.model.projected_zone_definition_arena.items.len() {
roots.push(EntityKey::ProjectedZoneDefinition(
ProjectedZoneDefinitionId(i),
));
}
for i in 0..self.model.property_definition_arena.items.len() {
roots.push(EntityKey::PropertyDefinition(PropertyDefinitionId(i)));
}
for i in 0..self
.model
.property_definition_relationship_arena
.items
.len()
{
roots.push(EntityKey::PropertyDefinitionRelationship(
PropertyDefinitionRelationshipId(i),
));
}
for i in 0..self
.model
.property_definition_representation_arena
.items
.len()
{
roots.push(EntityKey::PropertyDefinitionRepresentation(
PropertyDefinitionRepresentationId(i),
));
}
for i in 0..self.model.qualified_representation_item_arena.items.len() {
roots.push(EntityKey::QualifiedRepresentationItem(
QualifiedRepresentationItemId(i),
));
}
for i in 0..self.model.quasi_uniform_curve_arena.items.len() {
roots.push(EntityKey::QuasiUniformCurve(QuasiUniformCurveId(i)));
}
for i in 0..self.model.quasi_uniform_surface_arena.items.len() {
roots.push(EntityKey::QuasiUniformSurface(QuasiUniformSurfaceId(i)));
}
for i in 0..self.model.ratio_measure_with_unit_arena.items.len() {
roots.push(EntityKey::RatioMeasureWithUnit(RatioMeasureWithUnitId(i)));
}
for i in 0..self.model.ratio_unit_arena.items.len() {
roots.push(EntityKey::RatioUnit(RatioUnitId(i)));
}
for i in 0..self.model.rational_b_spline_curve_arena.items.len() {
roots.push(EntityKey::RationalBSplineCurve(RationalBSplineCurveId(i)));
}
for i in 0..self.model.rational_b_spline_surface_arena.items.len() {
roots.push(EntityKey::RationalBSplineSurface(RationalBSplineSurfaceId(
i,
)));
}
for i in 0..self.model.real_literal_arena.items.len() {
roots.push(EntityKey::RealLiteral(RealLiteralId(i)));
}
for i in 0..self.model.real_representation_item_arena.items.len() {
roots.push(EntityKey::RealRepresentationItem(RealRepresentationItemId(
i,
)));
}
for i in 0..self.model.repositioned_tessellated_item_arena.items.len() {
roots.push(EntityKey::RepositionedTessellatedItem(
RepositionedTessellatedItemId(i),
));
}
for i in 0..self.model.representation_arena.items.len() {
roots.push(EntityKey::Representation(RepresentationId(i)));
}
for i in 0..self.model.representation_context_arena.items.len() {
roots.push(EntityKey::RepresentationContext(RepresentationContextId(i)));
}
for i in 0..self
.model
.representation_context_reference_arena
.items
.len()
{
roots.push(EntityKey::RepresentationContextReference(
RepresentationContextReferenceId(i),
));
}
for i in 0..self.model.representation_item_arena.items.len() {
roots.push(EntityKey::RepresentationItem(RepresentationItemId(i)));
}
for i in 0..self.model.representation_map_arena.items.len() {
roots.push(EntityKey::RepresentationMap(RepresentationMapId(i)));
}
for i in 0..self.model.representation_reference_arena.items.len() {
roots.push(EntityKey::RepresentationReference(
RepresentationReferenceId(i),
));
}
for i in 0..self.model.representation_relationship_arena.items.len() {
roots.push(EntityKey::RepresentationRelationship(
RepresentationRelationshipId(i),
));
}
for i in 0..self
.model
.representation_relationship_with_transformation_arena
.items
.len()
{
roots.push(EntityKey::RepresentationRelationshipWithTransformation(
RepresentationRelationshipWithTransformationId(i),
));
}
for i in 0..self.model.resource_property_arena.items.len() {
roots.push(EntityKey::ResourceProperty(ResourcePropertyId(i)));
}
for i in 0..self.model.resource_requirement_type_arena.items.len() {
roots.push(EntityKey::ResourceRequirementType(
ResourceRequirementTypeId(i),
));
}
for i in 0..self.model.role_association_arena.items.len() {
roots.push(EntityKey::RoleAssociation(RoleAssociationId(i)));
}
for i in 0..self.model.roundness_tolerance_arena.items.len() {
roots.push(EntityKey::RoundnessTolerance(RoundnessToleranceId(i)));
}
for i in 0..self.model.seam_curve_arena.items.len() {
roots.push(EntityKey::SeamCurve(SeamCurveId(i)));
}
for i in 0..self.model.security_classification_arena.items.len() {
roots.push(EntityKey::SecurityClassification(SecurityClassificationId(
i,
)));
}
for i in 0..self
.model
.security_classification_assignment_arena
.items
.len()
{
roots.push(EntityKey::SecurityClassificationAssignment(
SecurityClassificationAssignmentId(i),
));
}
for i in 0..self.model.security_classification_level_arena.items.len() {
roots.push(EntityKey::SecurityClassificationLevel(
SecurityClassificationLevelId(i),
));
}
for i in 0..self.model.shape_aspect_arena.items.len() {
roots.push(EntityKey::ShapeAspect(ShapeAspectId(i)));
}
for i in 0..self.model.shape_aspect_associativity_arena.items.len() {
roots.push(EntityKey::ShapeAspectAssociativity(
ShapeAspectAssociativityId(i),
));
}
for i in 0..self
.model
.shape_aspect_deriving_relationship_arena
.items
.len()
{
roots.push(EntityKey::ShapeAspectDerivingRelationship(
ShapeAspectDerivingRelationshipId(i),
));
}
for i in 0..self.model.shape_aspect_relationship_arena.items.len() {
roots.push(EntityKey::ShapeAspectRelationship(
ShapeAspectRelationshipId(i),
));
}
for i in 0..self.model.shape_definition_representation_arena.items.len() {
roots.push(EntityKey::ShapeDefinitionRepresentation(
ShapeDefinitionRepresentationId(i),
));
}
for i in 0..self.model.shape_dimension_representation_arena.items.len() {
roots.push(EntityKey::ShapeDimensionRepresentation(
ShapeDimensionRepresentationId(i),
));
}
for i in 0..self.model.shape_representation_arena.items.len() {
roots.push(EntityKey::ShapeRepresentation(ShapeRepresentationId(i)));
}
for i in 0..self
.model
.shape_representation_relationship_arena
.items
.len()
{
roots.push(EntityKey::ShapeRepresentationRelationship(
ShapeRepresentationRelationshipId(i),
));
}
for i in 0..self
.model
.shape_representation_with_parameters_arena
.items
.len()
{
roots.push(EntityKey::ShapeRepresentationWithParameters(
ShapeRepresentationWithParametersId(i),
));
}
for i in 0..self.model.shell_based_surface_model_arena.items.len() {
roots.push(EntityKey::ShellBasedSurfaceModel(ShellBasedSurfaceModelId(
i,
)));
}
for i in 0..self.model.si_unit_arena.items.len() {
roots.push(EntityKey::SiUnit(SiUnitId(i)));
}
for i in 0..self.model.simple_generic_expression_arena.items.len() {
roots.push(EntityKey::SimpleGenericExpression(
SimpleGenericExpressionId(i),
));
}
for i in 0..self.model.simple_numeric_expression_arena.items.len() {
roots.push(EntityKey::SimpleNumericExpression(
SimpleNumericExpressionId(i),
));
}
for i in 0..self.model.solid_angle_unit_arena.items.len() {
roots.push(EntityKey::SolidAngleUnit(SolidAngleUnitId(i)));
}
for i in 0..self.model.solid_model_arena.items.len() {
roots.push(EntityKey::SolidModel(SolidModelId(i)));
}
for i in 0..self.model.spherical_surface_arena.items.len() {
roots.push(EntityKey::SphericalSurface(SphericalSurfaceId(i)));
}
for i in 0..self.model.start_request_arena.items.len() {
roots.push(EntityKey::StartRequest(StartRequestId(i)));
}
for i in 0..self.model.start_work_arena.items.len() {
roots.push(EntityKey::StartWork(StartWorkId(i)));
}
for i in 0..self.model.state_observed_arena.items.len() {
roots.push(EntityKey::StateObserved(StateObservedId(i)));
}
for i in 0..self.model.state_type_arena.items.len() {
roots.push(EntityKey::StateType(StateTypeId(i)));
}
for i in 0..self.model.straightness_tolerance_arena.items.len() {
roots.push(EntityKey::StraightnessTolerance(StraightnessToleranceId(i)));
}
for i in 0..self.model.styled_item_arena.items.len() {
roots.push(EntityKey::StyledItem(StyledItemId(i)));
}
for i in 0..self.model.surface_arena.items.len() {
roots.push(EntityKey::Surface(SurfaceId(i)));
}
for i in 0..self.model.surface_curve_arena.items.len() {
roots.push(EntityKey::SurfaceCurve(SurfaceCurveId(i)));
}
for i in 0..self.model.surface_of_linear_extrusion_arena.items.len() {
roots.push(EntityKey::SurfaceOfLinearExtrusion(
SurfaceOfLinearExtrusionId(i),
));
}
for i in 0..self.model.surface_of_revolution_arena.items.len() {
roots.push(EntityKey::SurfaceOfRevolution(SurfaceOfRevolutionId(i)));
}
for i in 0..self.model.surface_profile_tolerance_arena.items.len() {
roots.push(EntityKey::SurfaceProfileTolerance(
SurfaceProfileToleranceId(i),
));
}
for i in 0..self.model.surface_rendering_properties_arena.items.len() {
roots.push(EntityKey::SurfaceRenderingProperties(
SurfaceRenderingPropertiesId(i),
));
}
for i in 0..self.model.surface_side_style_arena.items.len() {
roots.push(EntityKey::SurfaceSideStyle(SurfaceSideStyleId(i)));
}
for i in 0..self.model.surface_style_boundary_arena.items.len() {
roots.push(EntityKey::SurfaceStyleBoundary(SurfaceStyleBoundaryId(i)));
}
for i in 0..self.model.surface_style_control_grid_arena.items.len() {
roots.push(EntityKey::SurfaceStyleControlGrid(
SurfaceStyleControlGridId(i),
));
}
for i in 0..self.model.surface_style_fill_area_arena.items.len() {
roots.push(EntityKey::SurfaceStyleFillArea(SurfaceStyleFillAreaId(i)));
}
for i in 0..self.model.surface_style_parameter_line_arena.items.len() {
roots.push(EntityKey::SurfaceStyleParameterLine(
SurfaceStyleParameterLineId(i),
));
}
for i in 0..self
.model
.surface_style_reflectance_ambient_arena
.items
.len()
{
roots.push(EntityKey::SurfaceStyleReflectanceAmbient(
SurfaceStyleReflectanceAmbientId(i),
));
}
for i in 0..self.model.surface_style_rendering_arena.items.len() {
roots.push(EntityKey::SurfaceStyleRendering(SurfaceStyleRenderingId(i)));
}
for i in 0..self
.model
.surface_style_rendering_with_properties_arena
.items
.len()
{
roots.push(EntityKey::SurfaceStyleRenderingWithProperties(
SurfaceStyleRenderingWithPropertiesId(i),
));
}
for i in 0..self
.model
.surface_style_segmentation_curve_arena
.items
.len()
{
roots.push(EntityKey::SurfaceStyleSegmentationCurve(
SurfaceStyleSegmentationCurveId(i),
));
}
for i in 0..self.model.surface_style_silhouette_arena.items.len() {
roots.push(EntityKey::SurfaceStyleSilhouette(SurfaceStyleSilhouetteId(
i,
)));
}
for i in 0..self.model.surface_style_transparent_arena.items.len() {
roots.push(EntityKey::SurfaceStyleTransparent(
SurfaceStyleTransparentId(i),
));
}
for i in 0..self.model.surface_style_usage_arena.items.len() {
roots.push(EntityKey::SurfaceStyleUsage(SurfaceStyleUsageId(i)));
}
for i in 0..self.model.swept_surface_arena.items.len() {
roots.push(EntityKey::SweptSurface(SweptSurfaceId(i)));
}
for i in 0..self.model.symbol_colour_arena.items.len() {
roots.push(EntityKey::SymbolColour(SymbolColourId(i)));
}
for i in 0..self.model.symbol_representation_arena.items.len() {
roots.push(EntityKey::SymbolRepresentation(SymbolRepresentationId(i)));
}
for i in 0..self.model.symbol_style_arena.items.len() {
roots.push(EntityKey::SymbolStyle(SymbolStyleId(i)));
}
for i in 0..self.model.symbol_target_arena.items.len() {
roots.push(EntityKey::SymbolTarget(SymbolTargetId(i)));
}
for i in 0..self.model.symmetry_tolerance_arena.items.len() {
roots.push(EntityKey::SymmetryTolerance(SymmetryToleranceId(i)));
}
for i in 0..self.model.terminator_symbol_arena.items.len() {
roots.push(EntityKey::TerminatorSymbol(TerminatorSymbolId(i)));
}
for i in 0..self
.model
.tessellated_annotation_occurrence_arena
.items
.len()
{
roots.push(EntityKey::TessellatedAnnotationOccurrence(
TessellatedAnnotationOccurrenceId(i),
));
}
for i in 0..self.model.tessellated_curve_set_arena.items.len() {
roots.push(EntityKey::TessellatedCurveSet(TessellatedCurveSetId(i)));
}
for i in 0..self.model.tessellated_face_arena.items.len() {
roots.push(EntityKey::TessellatedFace(TessellatedFaceId(i)));
}
for i in 0..self.model.tessellated_geometric_set_arena.items.len() {
roots.push(EntityKey::TessellatedGeometricSet(
TessellatedGeometricSetId(i),
));
}
for i in 0..self.model.tessellated_item_arena.items.len() {
roots.push(EntityKey::TessellatedItem(TessellatedItemId(i)));
}
for i in 0..self
.model
.tessellated_shape_representation_arena
.items
.len()
{
roots.push(EntityKey::TessellatedShapeRepresentation(
TessellatedShapeRepresentationId(i),
));
}
for i in 0..self.model.tessellated_shell_arena.items.len() {
roots.push(EntityKey::TessellatedShell(TessellatedShellId(i)));
}
for i in 0..self.model.tessellated_solid_arena.items.len() {
roots.push(EntityKey::TessellatedSolid(TessellatedSolidId(i)));
}
for i in 0..self.model.tessellated_structured_item_arena.items.len() {
roots.push(EntityKey::TessellatedStructuredItem(
TessellatedStructuredItemId(i),
));
}
for i in 0..self.model.tessellated_surface_set_arena.items.len() {
roots.push(EntityKey::TessellatedSurfaceSet(TessellatedSurfaceSetId(i)));
}
for i in 0..self.model.text_font_arena.items.len() {
roots.push(EntityKey::TextFont(TextFontId(i)));
}
for i in 0..self.model.text_literal_arena.items.len() {
roots.push(EntityKey::TextLiteral(TextLiteralId(i)));
}
for i in 0..self.model.text_style_arena.items.len() {
roots.push(EntityKey::TextStyle(TextStyleId(i)));
}
for i in 0..self.model.text_style_for_defined_font_arena.items.len() {
roots.push(EntityKey::TextStyleForDefinedFont(
TextStyleForDefinedFontId(i),
));
}
for i in 0..self
.model
.text_style_with_box_characteristics_arena
.items
.len()
{
roots.push(EntityKey::TextStyleWithBoxCharacteristics(
TextStyleWithBoxCharacteristicsId(i),
));
}
for i in 0..self.model.texture_style_specification_arena.items.len() {
roots.push(EntityKey::TextureStyleSpecification(
TextureStyleSpecificationId(i),
));
}
for i in 0..self
.model
.texture_style_tessellation_specification_arena
.items
.len()
{
roots.push(EntityKey::TextureStyleTessellationSpecification(
TextureStyleTessellationSpecificationId(i),
));
}
for i in 0..self.model.time_unit_arena.items.len() {
roots.push(EntityKey::TimeUnit(TimeUnitId(i)));
}
for i in 0..self.model.tolerance_value_arena.items.len() {
roots.push(EntityKey::ToleranceValue(ToleranceValueId(i)));
}
for i in 0..self.model.tolerance_zone_arena.items.len() {
roots.push(EntityKey::ToleranceZone(ToleranceZoneId(i)));
}
for i in 0..self.model.tolerance_zone_definition_arena.items.len() {
roots.push(EntityKey::ToleranceZoneDefinition(
ToleranceZoneDefinitionId(i),
));
}
for i in 0..self.model.tolerance_zone_form_arena.items.len() {
roots.push(EntityKey::ToleranceZoneForm(ToleranceZoneFormId(i)));
}
for i in 0..self.model.tolerance_zone_with_datum_arena.items.len() {
roots.push(EntityKey::ToleranceZoneWithDatum(ToleranceZoneWithDatumId(
i,
)));
}
for i in 0..self.model.topological_representation_item_arena.items.len() {
roots.push(EntityKey::TopologicalRepresentationItem(
TopologicalRepresentationItemId(i),
));
}
for i in 0..self.model.toroidal_surface_arena.items.len() {
roots.push(EntityKey::ToroidalSurface(ToroidalSurfaceId(i)));
}
for i in 0..self.model.total_runout_tolerance_arena.items.len() {
roots.push(EntityKey::TotalRunoutTolerance(TotalRunoutToleranceId(i)));
}
for i in 0..self.model.trimmed_curve_arena.items.len() {
roots.push(EntityKey::TrimmedCurve(TrimmedCurveId(i)));
}
for i in 0..self.model.two_direction_repeat_factor_arena.items.len() {
roots.push(EntityKey::TwoDirectionRepeatFactor(
TwoDirectionRepeatFactorId(i),
));
}
for i in 0..self.model.type_qualifier_arena.items.len() {
roots.push(EntityKey::TypeQualifier(TypeQualifierId(i)));
}
for i in 0..self.model.uncertainty_measure_with_unit_arena.items.len() {
roots.push(EntityKey::UncertaintyMeasureWithUnit(
UncertaintyMeasureWithUnitId(i),
));
}
for i in 0..self.model.uncertainty_qualifier_arena.items.len() {
roots.push(EntityKey::UncertaintyQualifier(UncertaintyQualifierId(i)));
}
for i in 0..self
.model
.unequally_disposed_geometric_tolerance_arena
.items
.len()
{
roots.push(EntityKey::UnequallyDisposedGeometricTolerance(
UnequallyDisposedGeometricToleranceId(i),
));
}
for i in 0..self.model.uniform_curve_arena.items.len() {
roots.push(EntityKey::UniformCurve(UniformCurveId(i)));
}
for i in 0..self.model.uniform_surface_arena.items.len() {
roots.push(EntityKey::UniformSurface(UniformSurfaceId(i)));
}
for i in 0..self.model.value_format_type_qualifier_arena.items.len() {
roots.push(EntityKey::ValueFormatTypeQualifier(
ValueFormatTypeQualifierId(i),
));
}
for i in 0..self.model.value_representation_item_arena.items.len() {
roots.push(EntityKey::ValueRepresentationItem(
ValueRepresentationItemId(i),
));
}
for i in 0..self.model.vector_arena.items.len() {
roots.push(EntityKey::Vector(VectorId(i)));
}
for i in 0..self.model.versioned_action_request_arena.items.len() {
roots.push(EntityKey::VersionedActionRequest(VersionedActionRequestId(
i,
)));
}
for i in 0..self.model.vertex_arena.items.len() {
roots.push(EntityKey::Vertex(VertexId(i)));
}
for i in 0..self.model.vertex_loop_arena.items.len() {
roots.push(EntityKey::VertexLoop(VertexLoopId(i)));
}
for i in 0..self.model.vertex_point_arena.items.len() {
roots.push(EntityKey::VertexPoint(VertexPointId(i)));
}
for i in 0..self.model.vertex_shell_arena.items.len() {
roots.push(EntityKey::VertexShell(VertexShellId(i)));
}
for i in 0..self.model.view_volume_arena.items.len() {
roots.push(EntityKey::ViewVolume(ViewVolumeId(i)));
}
for i in 0..self.model.volume_unit_arena.items.len() {
roots.push(EntityKey::VolumeUnit(VolumeUnitId(i)));
}
for i in 0..self.model.wire_shell_arena.items.len() {
roots.push(EntityKey::WireShell(WireShellId(i)));
}
roots
}
pub(crate) fn part_name(p: &UnitPart) -> &'static str {
match p {
UnitPart::Action { .. } => "ACTION",
UnitPart::ActionMethod { .. } => "ACTION_METHOD",
UnitPart::ActionMethodRelationship { .. } => "ACTION_METHOD_RELATIONSHIP",
UnitPart::ActionRelationship { .. } => "ACTION_RELATIONSHIP",
UnitPart::ActionRequestAssignment { .. } => "ACTION_REQUEST_ASSIGNMENT",
UnitPart::ActionResource { .. } => "ACTION_RESOURCE",
UnitPart::ActionResourceRequirement { .. } => "ACTION_RESOURCE_REQUIREMENT",
UnitPart::Address { .. } => "ADDRESS",
UnitPart::AdvancedBrepShapeRepresentation => "ADVANCED_BREP_SHAPE_REPRESENTATION",
UnitPart::AdvancedFace => "ADVANCED_FACE",
UnitPart::AnnotationCurveOccurrence => "ANNOTATION_CURVE_OCCURRENCE",
UnitPart::AnnotationFillAreaOccurrence { .. } => "ANNOTATION_FILL_AREA_OCCURRENCE",
UnitPart::AnnotationOccurrence => "ANNOTATION_OCCURRENCE",
UnitPart::AnnotationOccurrenceAssociativity => "ANNOTATION_OCCURRENCE_ASSOCIATIVITY",
UnitPart::AnnotationOccurrenceRelationship { .. } => {
"ANNOTATION_OCCURRENCE_RELATIONSHIP"
}
UnitPart::AnnotationPlaceholderOccurrence { .. } => "ANNOTATION_PLACEHOLDER_OCCURRENCE",
UnitPart::AnnotationPlaceholderOccurrenceWithLeaderLine { .. } => {
"ANNOTATION_PLACEHOLDER_OCCURRENCE_WITH_LEADER_LINE"
}
UnitPart::AnnotationPlane { .. } => "ANNOTATION_PLANE",
UnitPart::AnnotationSymbol => "ANNOTATION_SYMBOL",
UnitPart::AnnotationSymbolOccurrence => "ANNOTATION_SYMBOL_OCCURRENCE",
UnitPart::AnnotationText => "ANNOTATION_TEXT",
UnitPart::AnnotationTextCharacter { .. } => "ANNOTATION_TEXT_CHARACTER",
UnitPart::AnnotationTextOccurrence => "ANNOTATION_TEXT_OCCURRENCE",
UnitPart::ApplicationContextElement { .. } => "APPLICATION_CONTEXT_ELEMENT",
UnitPart::AppliedApprovalAssignment { .. } => "APPLIED_APPROVAL_ASSIGNMENT",
UnitPart::AppliedDateAndTimeAssignment { .. } => "APPLIED_DATE_AND_TIME_ASSIGNMENT",
UnitPart::AppliedDocumentReference { .. } => "APPLIED_DOCUMENT_REFERENCE",
UnitPart::AppliedExternalIdentificationAssignment { .. } => {
"APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT"
}
UnitPart::AppliedGroupAssignment { .. } => "APPLIED_GROUP_ASSIGNMENT",
UnitPart::AppliedPersonAndOrganizationAssignment { .. } => {
"APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT"
}
UnitPart::AppliedPresentedItem { .. } => "APPLIED_PRESENTED_ITEM",
UnitPart::AppliedSecurityClassificationAssignment { .. } => {
"APPLIED_SECURITY_CLASSIFICATION_ASSIGNMENT"
}
UnitPart::ApprovalAssignment { .. } => "APPROVAL_ASSIGNMENT",
UnitPart::AreaInSet { .. } => "AREA_IN_SET",
UnitPart::AscribableStateRelationship { .. } => "ASCRIBABLE_STATE_RELATIONSHIP",
UnitPart::AssemblyComponentUsage { .. } => "ASSEMBLY_COMPONENT_USAGE",
UnitPart::BSplineCurve { .. } => "B_SPLINE_CURVE",
UnitPart::BSplineCurveWithKnots { .. } => "B_SPLINE_CURVE_WITH_KNOTS",
UnitPart::BSplineSurface { .. } => "B_SPLINE_SURFACE",
UnitPart::BSplineSurfaceWithKnots { .. } => "B_SPLINE_SURFACE_WITH_KNOTS",
UnitPart::BezierCurve => "BEZIER_CURVE",
UnitPart::BezierSurface => "BEZIER_SURFACE",
UnitPart::BoundedCurve => "BOUNDED_CURVE",
UnitPart::BoundedPcurve => "BOUNDED_PCURVE",
UnitPart::BoundedSurface => "BOUNDED_SURFACE",
UnitPart::BoundedSurfaceCurve => "BOUNDED_SURFACE_CURVE",
UnitPart::BrepWithVoids { .. } => "BREP_WITH_VOIDS",
UnitPart::CameraImage => "CAMERA_IMAGE",
UnitPart::CameraImage3dWithScale => "CAMERA_IMAGE_3D_WITH_SCALE",
UnitPart::CameraModel => "CAMERA_MODEL",
UnitPart::CameraModelD3 { .. } => "CAMERA_MODEL_D3",
UnitPart::CameraModelD3MultiClipping { .. } => "CAMERA_MODEL_D3_MULTI_CLIPPING",
UnitPart::CameraModelD3WithHlhsr { .. } => "CAMERA_MODEL_D3_WITH_HLHSR",
UnitPart::CameraUsage => "CAMERA_USAGE",
UnitPart::CcDesignApproval { .. } => "CC_DESIGN_APPROVAL",
UnitPart::CcDesignDateAndTimeAssignment { .. } => "CC_DESIGN_DATE_AND_TIME_ASSIGNMENT",
UnitPart::CcDesignPersonAndOrganizationAssignment { .. } => {
"CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT"
}
UnitPart::CcDesignSecurityClassification { .. } => "CC_DESIGN_SECURITY_CLASSIFICATION",
UnitPart::ChangeRequest { .. } => "CHANGE_REQUEST",
UnitPart::CharacterGlyphStyleOutline { .. } => "CHARACTER_GLYPH_STYLE_OUTLINE",
UnitPart::CharacterGlyphStyleStroke { .. } => "CHARACTER_GLYPH_STYLE_STROKE",
UnitPart::CharacterizedItemWithinRepresentation { .. } => {
"CHARACTERIZED_ITEM_WITHIN_REPRESENTATION"
}
UnitPart::CharacterizedObject { .. } => "CHARACTERIZED_OBJECT",
UnitPart::CharacterizedRepresentation => "CHARACTERIZED_REPRESENTATION",
UnitPart::CircularRunoutTolerance => "CIRCULAR_RUNOUT_TOLERANCE",
UnitPart::ClosedShell => "CLOSED_SHELL",
UnitPart::Colour => "COLOUR",
UnitPart::ColourRgb { .. } => "COLOUR_RGB",
UnitPart::ColourSpecification { .. } => "COLOUR_SPECIFICATION",
UnitPart::CommonDatum => "COMMON_DATUM",
UnitPart::CompositeCurve { .. } => "COMPOSITE_CURVE",
UnitPart::CompositeCurveSegment { .. } => "COMPOSITE_CURVE_SEGMENT",
UnitPart::CompositeGroupShapeAspect => "COMPOSITE_GROUP_SHAPE_ASPECT",
UnitPart::CompositeShapeAspect => "COMPOSITE_SHAPE_ASPECT",
UnitPart::CompositeText { .. } => "COMPOSITE_TEXT",
UnitPart::CompoundRepresentationItem { .. } => "COMPOUND_REPRESENTATION_ITEM",
UnitPart::ConfigurationEffectivity { .. } => "CONFIGURATION_EFFECTIVITY",
UnitPart::ConfigurationItem { .. } => "CONFIGURATION_ITEM",
UnitPart::ConnectedFaceSet { .. } => "CONNECTED_FACE_SET",
UnitPart::ConstructiveGeometryRepresentationRelationship => {
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION_RELATIONSHIP"
}
UnitPart::ContextDependentOverRidingStyledItem { .. } => {
"CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM"
}
UnitPart::ContextDependentUnit { .. } => "CONTEXT_DEPENDENT_UNIT",
UnitPart::ConversionBasedUnit { .. } => "CONVERSION_BASED_UNIT",
UnitPart::Curve => "CURVE",
UnitPart::CurveStyle { .. } => "CURVE_STYLE",
UnitPart::CurveStyleFont { .. } => "CURVE_STYLE_FONT",
UnitPart::CurveStyleFontAndScaling { .. } => "CURVE_STYLE_FONT_AND_SCALING",
UnitPart::CurveStyleFontPattern { .. } => "CURVE_STYLE_FONT_PATTERN",
UnitPart::CylindricityTolerance => "CYLINDRICITY_TOLERANCE",
UnitPart::Date { .. } => "DATE",
UnitPart::DateAndTime { .. } => "DATE_AND_TIME",
UnitPart::DateAndTimeAssignment { .. } => "DATE_AND_TIME_ASSIGNMENT",
UnitPart::Datum { .. } => "DATUM",
UnitPart::DatumFeature => "DATUM_FEATURE",
UnitPart::DatumReference { .. } => "DATUM_REFERENCE",
UnitPart::DatumSystem { .. } => "DATUM_SYSTEM",
UnitPart::DatumTarget { .. } => "DATUM_TARGET",
UnitPart::DefaultModelGeometricView => "DEFAULT_MODEL_GEOMETRIC_VIEW",
UnitPart::DefinitionalRepresentation => "DEFINITIONAL_REPRESENTATION",
UnitPart::DefinitionalRepresentationRelationship => {
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP"
}
UnitPart::DefinitionalRepresentationRelationshipWithSameContext => {
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP_WITH_SAME_CONTEXT"
}
UnitPart::DegenerateToroidalSurface { .. } => "DEGENERATE_TOROIDAL_SURFACE",
UnitPart::DerivedUnit { .. } => "DERIVED_UNIT",
UnitPart::DesignContext => "DESIGN_CONTEXT",
UnitPart::DimensionalSize { .. } => "DIMENSIONAL_SIZE",
UnitPart::Direction { .. } => "DIRECTION",
UnitPart::Document { .. } => "DOCUMENT",
UnitPart::DocumentFile => "DOCUMENT_FILE",
UnitPart::DocumentProductAssociation { .. } => "DOCUMENT_PRODUCT_ASSOCIATION",
UnitPart::DocumentProductEquivalence => "DOCUMENT_PRODUCT_EQUIVALENCE",
UnitPart::DocumentReference { .. } => "DOCUMENT_REFERENCE",
UnitPart::DraughtingAnnotationOccurrence => "DRAUGHTING_ANNOTATION_OCCURRENCE",
UnitPart::DraughtingCallout { .. } => "DRAUGHTING_CALLOUT",
UnitPart::DraughtingCalloutRelationship { .. } => "DRAUGHTING_CALLOUT_RELATIONSHIP",
UnitPart::DraughtingModel => "DRAUGHTING_MODEL",
UnitPart::DraughtingModelItemAssociation => "DRAUGHTING_MODEL_ITEM_ASSOCIATION",
UnitPart::DraughtingModelItemAssociationWithPlaceholder { .. } => {
"DRAUGHTING_MODEL_ITEM_ASSOCIATION_WITH_PLACEHOLDER"
}
UnitPart::DraughtingPreDefinedColour => "DRAUGHTING_PRE_DEFINED_COLOUR",
UnitPart::DraughtingPreDefinedCurveFont => "DRAUGHTING_PRE_DEFINED_CURVE_FONT",
UnitPart::DraughtingPreDefinedTextFont => "DRAUGHTING_PRE_DEFINED_TEXT_FONT",
UnitPart::Edge { .. } => "EDGE",
UnitPart::EdgeCurve { .. } => "EDGE_CURVE",
UnitPart::EdgeLoop => "EDGE_LOOP",
UnitPart::Effectivity { .. } => "EFFECTIVITY",
UnitPart::ElementarySurface { .. } => "ELEMENTARY_SURFACE",
UnitPart::Expression => "EXPRESSION",
UnitPart::ExternalIdentificationAssignment { .. } => {
"EXTERNAL_IDENTIFICATION_ASSIGNMENT"
}
UnitPart::ExternalSource { .. } => "EXTERNAL_SOURCE",
UnitPart::ExternallyDefinedCharacterGlyph => "EXTERNALLY_DEFINED_CHARACTER_GLYPH",
UnitPart::ExternallyDefinedCurveFont => "EXTERNALLY_DEFINED_CURVE_FONT",
UnitPart::ExternallyDefinedHatchStyle => "EXTERNALLY_DEFINED_HATCH_STYLE",
UnitPart::ExternallyDefinedItem { .. } => "EXTERNALLY_DEFINED_ITEM",
UnitPart::ExternallyDefinedStyle => "EXTERNALLY_DEFINED_STYLE",
UnitPart::ExternallyDefinedSymbol => "EXTERNALLY_DEFINED_SYMBOL",
UnitPart::ExternallyDefinedTextFont => "EXTERNALLY_DEFINED_TEXT_FONT",
UnitPart::ExternallyDefinedTile => "EXTERNALLY_DEFINED_TILE",
UnitPart::ExternallyDefinedTileStyle => "EXTERNALLY_DEFINED_TILE_STYLE",
UnitPart::Face { .. } => "FACE",
UnitPart::FaceBound { .. } => "FACE_BOUND",
UnitPart::FaceOuterBound => "FACE_OUTER_BOUND",
UnitPart::FaceSurface { .. } => "FACE_SURFACE",
UnitPart::FillAreaStyle { .. } => "FILL_AREA_STYLE",
UnitPart::FillAreaStyleHatching { .. } => "FILL_AREA_STYLE_HATCHING",
UnitPart::FillAreaStyleTileSymbolWithStyle { .. } => {
"FILL_AREA_STYLE_TILE_SYMBOL_WITH_STYLE"
}
UnitPart::FillAreaStyleTiles { .. } => "FILL_AREA_STYLE_TILES",
UnitPart::FlatnessTolerance => "FLATNESS_TOLERANCE",
UnitPart::FoundedItem => "FOUNDED_ITEM",
UnitPart::FunctionallyDefinedTransformation { .. } => {
"FUNCTIONALLY_DEFINED_TRANSFORMATION"
}
UnitPart::GeneralDatumReference { .. } => "GENERAL_DATUM_REFERENCE",
UnitPart::GeneralProperty { .. } => "GENERAL_PROPERTY",
UnitPart::GenericExpression => "GENERIC_EXPRESSION",
UnitPart::GenericLiteral => "GENERIC_LITERAL",
UnitPart::GenericProductDefinitionReference { .. } => {
"GENERIC_PRODUCT_DEFINITION_REFERENCE"
}
UnitPart::GeometricCurveSet => "GEOMETRIC_CURVE_SET",
UnitPart::GeometricItemSpecificUsage => "GEOMETRIC_ITEM_SPECIFIC_USAGE",
UnitPart::GeometricRepresentationContext { .. } => "GEOMETRIC_REPRESENTATION_CONTEXT",
UnitPart::GeometricRepresentationItem => "GEOMETRIC_REPRESENTATION_ITEM",
UnitPart::GeometricSet { .. } => "GEOMETRIC_SET",
UnitPart::GeometricTolerance { .. } => "GEOMETRIC_TOLERANCE",
UnitPart::GeometricToleranceWithDatumReference { .. } => {
"GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE"
}
UnitPart::GeometricToleranceWithDefinedAreaUnit { .. } => {
"GEOMETRIC_TOLERANCE_WITH_DEFINED_AREA_UNIT"
}
UnitPart::GeometricToleranceWithDefinedUnit { .. } => {
"GEOMETRIC_TOLERANCE_WITH_DEFINED_UNIT"
}
UnitPart::GeometricToleranceWithMaximumTolerance { .. } => {
"GEOMETRIC_TOLERANCE_WITH_MAXIMUM_TOLERANCE"
}
UnitPart::GeometricToleranceWithModifiers { .. } => {
"GEOMETRIC_TOLERANCE_WITH_MODIFIERS"
}
UnitPart::GeometricallyBoundedSurfaceShapeRepresentation => {
"GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION"
}
UnitPart::GeometricallyBoundedWireframeShapeRepresentation => {
"GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION"
}
UnitPart::GlobalUncertaintyAssignedContext { .. } => {
"GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT"
}
UnitPart::GlobalUnitAssignedContext { .. } => "GLOBAL_UNIT_ASSIGNED_CONTEXT",
UnitPart::Group { .. } => "GROUP",
UnitPart::GroupAssignment { .. } => "GROUP_ASSIGNMENT",
UnitPart::IdentificationAssignment { .. } => "IDENTIFICATION_ASSIGNMENT",
UnitPart::IntLiteral => "INT_LITERAL",
UnitPart::IntegerRepresentationItem => "INTEGER_REPRESENTATION_ITEM",
UnitPart::IntersectionCurve => "INTERSECTION_CURVE",
UnitPart::Invisibility { .. } => "INVISIBILITY",
UnitPart::ItemDefinedTransformation { .. } => "ITEM_DEFINED_TRANSFORMATION",
UnitPart::ItemIdentifiedRepresentationUsage { .. } => {
"ITEM_IDENTIFIED_REPRESENTATION_USAGE"
}
UnitPart::LeaderCurve => "LEADER_CURVE",
UnitPart::LeaderDirectedCallout => "LEADER_DIRECTED_CALLOUT",
UnitPart::LeaderTerminator => "LEADER_TERMINATOR",
UnitPart::LengthMeasureWithUnit => "LENGTH_MEASURE_WITH_UNIT",
UnitPart::LengthUnit => "LENGTH_UNIT",
UnitPart::LineProfileTolerance => "LINE_PROFILE_TOLERANCE",
UnitPart::LiteralNumber { .. } => "LITERAL_NUMBER",
UnitPart::Loop => "LOOP",
UnitPart::ManifoldSolidBrep { .. } => "MANIFOLD_SOLID_BREP",
UnitPart::ManifoldSurfaceShapeRepresentation => "MANIFOLD_SURFACE_SHAPE_REPRESENTATION",
UnitPart::MappedItem { .. } => "MAPPED_ITEM",
UnitPart::MassUnit => "MASS_UNIT",
UnitPart::MeasureRepresentationItem => "MEASURE_REPRESENTATION_ITEM",
UnitPart::MeasureWithUnit { .. } => "MEASURE_WITH_UNIT",
UnitPart::MechanicalContext => "MECHANICAL_CONTEXT",
UnitPart::MechanicalDesignAndDraughtingRelationship => {
"MECHANICAL_DESIGN_AND_DRAUGHTING_RELATIONSHIP"
}
UnitPart::ModelGeometricView => "MODEL_GEOMETRIC_VIEW",
UnitPart::ModifiedGeometricTolerance { .. } => "MODIFIED_GEOMETRIC_TOLERANCE",
UnitPart::NamedUnit { .. } => "NAMED_UNIT",
UnitPart::NextAssemblyUsageOccurrence => "NEXT_ASSEMBLY_USAGE_OCCURRENCE",
UnitPart::NumericExpression => "NUMERIC_EXPRESSION",
UnitPart::OneDirectionRepeatFactor { .. } => "ONE_DIRECTION_REPEAT_FACTOR",
UnitPart::OpenShell => "OPEN_SHELL",
UnitPart::OrganizationalAddress { .. } => "ORGANIZATIONAL_ADDRESS",
UnitPart::OrientedClosedShell { .. } => "ORIENTED_CLOSED_SHELL",
UnitPart::OrientedEdge { .. } => "ORIENTED_EDGE",
UnitPart::OverRidingStyledItem { .. } => "OVER_RIDING_STYLED_ITEM",
UnitPart::ParallelismTolerance => "PARALLELISM_TOLERANCE",
UnitPart::ParametricRepresentationContext => "PARAMETRIC_REPRESENTATION_CONTEXT",
UnitPart::Path { .. } => "PATH",
UnitPart::Pcurve { .. } => "PCURVE",
UnitPart::PerpendicularityTolerance => "PERPENDICULARITY_TOLERANCE",
UnitPart::PersonAndOrganizationAddress => "PERSON_AND_ORGANIZATION_ADDRESS",
UnitPart::PersonAndOrganizationAssignment { .. } => {
"PERSON_AND_ORGANIZATION_ASSIGNMENT"
}
UnitPart::PersonalAddress { .. } => "PERSONAL_ADDRESS",
UnitPart::PlacedDatumTargetFeature => "PLACED_DATUM_TARGET_FEATURE",
UnitPart::Placement { .. } => "PLACEMENT",
UnitPart::PlanarBox { .. } => "PLANAR_BOX",
UnitPart::PlanarExtent { .. } => "PLANAR_EXTENT",
UnitPart::PlaneAngleMeasureWithUnit => "PLANE_ANGLE_MEASURE_WITH_UNIT",
UnitPart::PlaneAngleUnit => "PLANE_ANGLE_UNIT",
UnitPart::Point => "POINT",
UnitPart::PointStyle { .. } => "POINT_STYLE",
UnitPart::PolyLoop { .. } => "POLY_LOOP",
UnitPart::PositionTolerance => "POSITION_TOLERANCE",
UnitPart::PreDefinedCharacterGlyph => "PRE_DEFINED_CHARACTER_GLYPH",
UnitPart::PreDefinedColour => "PRE_DEFINED_COLOUR",
UnitPart::PreDefinedCurveFont => "PRE_DEFINED_CURVE_FONT",
UnitPart::PreDefinedItem { .. } => "PRE_DEFINED_ITEM",
UnitPart::PreDefinedMarker => "PRE_DEFINED_MARKER",
UnitPart::PreDefinedPointMarkerSymbol => "PRE_DEFINED_POINT_MARKER_SYMBOL",
UnitPart::PreDefinedPresentationStyle => "PRE_DEFINED_PRESENTATION_STYLE",
UnitPart::PreDefinedSurfaceSideStyle => "PRE_DEFINED_SURFACE_SIDE_STYLE",
UnitPart::PreDefinedSymbol => "PRE_DEFINED_SYMBOL",
UnitPart::PreDefinedTerminatorSymbol => "PRE_DEFINED_TERMINATOR_SYMBOL",
UnitPart::PreDefinedTextFont => "PRE_DEFINED_TEXT_FONT",
UnitPart::PreDefinedTile => "PRE_DEFINED_TILE",
UnitPart::PresentationArea => "PRESENTATION_AREA",
UnitPart::PresentationRepresentation => "PRESENTATION_REPRESENTATION",
UnitPart::PresentationSet => "PRESENTATION_SET",
UnitPart::PresentationStyleAssignment { .. } => "PRESENTATION_STYLE_ASSIGNMENT",
UnitPart::PresentationStyleByContext { .. } => "PRESENTATION_STYLE_BY_CONTEXT",
UnitPart::PresentationView => "PRESENTATION_VIEW",
UnitPart::PresentedItem => "PRESENTED_ITEM",
UnitPart::Product { .. } => "PRODUCT",
UnitPart::ProductCategory { .. } => "PRODUCT_CATEGORY",
UnitPart::ProductConcept { .. } => "PRODUCT_CONCEPT",
UnitPart::ProductConceptFeature { .. } => "PRODUCT_CONCEPT_FEATURE",
UnitPart::ProductConceptFeatureCategory => "PRODUCT_CONCEPT_FEATURE_CATEGORY",
UnitPart::ProductContext { .. } => "PRODUCT_CONTEXT",
UnitPart::ProductDefinition { .. } => "PRODUCT_DEFINITION",
UnitPart::ProductDefinitionContext { .. } => "PRODUCT_DEFINITION_CONTEXT",
UnitPart::ProductDefinitionEffectivity { .. } => "PRODUCT_DEFINITION_EFFECTIVITY",
UnitPart::ProductDefinitionFormation { .. } => "PRODUCT_DEFINITION_FORMATION",
UnitPart::ProductDefinitionFormationWithSpecifiedSource { .. } => {
"PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE"
}
UnitPart::ProductDefinitionOccurrence { .. } => "PRODUCT_DEFINITION_OCCURRENCE",
UnitPart::ProductDefinitionRelationship { .. } => "PRODUCT_DEFINITION_RELATIONSHIP",
UnitPart::ProductDefinitionRelationshipRelationship { .. } => {
"PRODUCT_DEFINITION_RELATIONSHIP_RELATIONSHIP"
}
UnitPart::ProductDefinitionShape => "PRODUCT_DEFINITION_SHAPE",
UnitPart::ProductDefinitionUsage => "PRODUCT_DEFINITION_USAGE",
UnitPart::ProductDefinitionWithAssociatedDocuments { .. } => {
"PRODUCT_DEFINITION_WITH_ASSOCIATED_DOCUMENTS"
}
UnitPart::ProductRelatedProductCategory { .. } => "PRODUCT_RELATED_PRODUCT_CATEGORY",
UnitPart::ProjectedZoneDefinition { .. } => "PROJECTED_ZONE_DEFINITION",
UnitPart::PropertyDefinition { .. } => "PROPERTY_DEFINITION",
UnitPart::PropertyDefinitionRepresentation { .. } => {
"PROPERTY_DEFINITION_REPRESENTATION"
}
UnitPart::QualifiedRepresentationItem { .. } => "QUALIFIED_REPRESENTATION_ITEM",
UnitPart::QuasiUniformCurve => "QUASI_UNIFORM_CURVE",
UnitPart::QuasiUniformSurface => "QUASI_UNIFORM_SURFACE",
UnitPart::RatioMeasureWithUnit => "RATIO_MEASURE_WITH_UNIT",
UnitPart::RatioUnit => "RATIO_UNIT",
UnitPart::RationalBSplineCurve { .. } => "RATIONAL_B_SPLINE_CURVE",
UnitPart::RationalBSplineSurface { .. } => "RATIONAL_B_SPLINE_SURFACE",
UnitPart::RealLiteral => "REAL_LITERAL",
UnitPart::RealRepresentationItem => "REAL_REPRESENTATION_ITEM",
UnitPart::RepositionedTessellatedItem { .. } => "REPOSITIONED_TESSELLATED_ITEM",
UnitPart::Representation { .. } => "REPRESENTATION",
UnitPart::RepresentationContext { .. } => "REPRESENTATION_CONTEXT",
UnitPart::RepresentationItem { .. } => "REPRESENTATION_ITEM",
UnitPart::RepresentationMap { .. } => "REPRESENTATION_MAP",
UnitPart::RepresentationReference { .. } => "REPRESENTATION_REFERENCE",
UnitPart::RepresentationRelationship { .. } => "REPRESENTATION_RELATIONSHIP",
UnitPart::RepresentationRelationshipWithTransformation { .. } => {
"REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION"
}
UnitPart::RoundnessTolerance => "ROUNDNESS_TOLERANCE",
UnitPart::SeamCurve => "SEAM_CURVE",
UnitPart::SecurityClassificationAssignment { .. } => {
"SECURITY_CLASSIFICATION_ASSIGNMENT"
}
UnitPart::ShapeAspect { .. } => "SHAPE_ASPECT",
UnitPart::ShapeAspectRelationship { .. } => "SHAPE_ASPECT_RELATIONSHIP",
UnitPart::ShapeDefinitionRepresentation => "SHAPE_DEFINITION_REPRESENTATION",
UnitPart::ShapeDimensionRepresentation => "SHAPE_DIMENSION_REPRESENTATION",
UnitPart::ShapeRepresentation => "SHAPE_REPRESENTATION",
UnitPart::ShapeRepresentationRelationship => "SHAPE_REPRESENTATION_RELATIONSHIP",
UnitPart::ShapeRepresentationWithParameters => "SHAPE_REPRESENTATION_WITH_PARAMETERS",
UnitPart::ShellBasedSurfaceModel { .. } => "SHELL_BASED_SURFACE_MODEL",
UnitPart::SiUnit { .. } => "SI_UNIT",
UnitPart::SimpleGenericExpression => "SIMPLE_GENERIC_EXPRESSION",
UnitPart::SimpleNumericExpression => "SIMPLE_NUMERIC_EXPRESSION",
UnitPart::SolidAngleUnit => "SOLID_ANGLE_UNIT",
UnitPart::SolidModel => "SOLID_MODEL",
UnitPart::StartRequest { .. } => "START_REQUEST",
UnitPart::StateObserved { .. } => "STATE_OBSERVED",
UnitPart::StateType { .. } => "STATE_TYPE",
UnitPart::StraightnessTolerance => "STRAIGHTNESS_TOLERANCE",
UnitPart::StyledItem { .. } => "STYLED_ITEM",
UnitPart::Surface => "SURFACE",
UnitPart::SurfaceCurve { .. } => "SURFACE_CURVE",
UnitPart::SurfaceProfileTolerance => "SURFACE_PROFILE_TOLERANCE",
UnitPart::SurfaceSideStyle { .. } => "SURFACE_SIDE_STYLE",
UnitPart::SurfaceStyleBoundary { .. } => "SURFACE_STYLE_BOUNDARY",
UnitPart::SurfaceStyleControlGrid { .. } => "SURFACE_STYLE_CONTROL_GRID",
UnitPart::SurfaceStyleFillArea { .. } => "SURFACE_STYLE_FILL_AREA",
UnitPart::SurfaceStyleParameterLine { .. } => "SURFACE_STYLE_PARAMETER_LINE",
UnitPart::SurfaceStyleReflectanceAmbient { .. } => "SURFACE_STYLE_REFLECTANCE_AMBIENT",
UnitPart::SurfaceStyleRendering { .. } => "SURFACE_STYLE_RENDERING",
UnitPart::SurfaceStyleRenderingWithProperties { .. } => {
"SURFACE_STYLE_RENDERING_WITH_PROPERTIES"
}
UnitPart::SurfaceStyleSegmentationCurve { .. } => "SURFACE_STYLE_SEGMENTATION_CURVE",
UnitPart::SurfaceStyleSilhouette { .. } => "SURFACE_STYLE_SILHOUETTE",
UnitPart::SurfaceStyleUsage { .. } => "SURFACE_STYLE_USAGE",
UnitPart::SymbolRepresentation => "SYMBOL_REPRESENTATION",
UnitPart::SymbolStyle { .. } => "SYMBOL_STYLE",
UnitPart::TerminatorSymbol { .. } => "TERMINATOR_SYMBOL",
UnitPart::TessellatedGeometricSet { .. } => "TESSELLATED_GEOMETRIC_SET",
UnitPart::TessellatedItem => "TESSELLATED_ITEM",
UnitPart::TessellatedShapeRepresentation => "TESSELLATED_SHAPE_REPRESENTATION",
UnitPart::TessellatedStructuredItem => "TESSELLATED_STRUCTURED_ITEM",
UnitPart::TextLiteral { .. } => "TEXT_LITERAL",
UnitPart::TextStyle { .. } => "TEXT_STYLE",
UnitPart::TextStyleWithBoxCharacteristics { .. } => {
"TEXT_STYLE_WITH_BOX_CHARACTERISTICS"
}
UnitPart::TextureStyleSpecification => "TEXTURE_STYLE_SPECIFICATION",
UnitPart::TextureStyleTessellationSpecification => {
"TEXTURE_STYLE_TESSELLATION_SPECIFICATION"
}
UnitPart::TimeUnit => "TIME_UNIT",
UnitPart::ToleranceZone { .. } => "TOLERANCE_ZONE",
UnitPart::ToleranceZoneDefinition { .. } => "TOLERANCE_ZONE_DEFINITION",
UnitPart::ToleranceZoneWithDatum { .. } => "TOLERANCE_ZONE_WITH_DATUM",
UnitPart::TopologicalRepresentationItem => "TOPOLOGICAL_REPRESENTATION_ITEM",
UnitPart::ToroidalSurface { .. } => "TOROIDAL_SURFACE",
UnitPart::TwoDirectionRepeatFactor { .. } => "TWO_DIRECTION_REPEAT_FACTOR",
UnitPart::UnequallyDisposedGeometricTolerance { .. } => {
"UNEQUALLY_DISPOSED_GEOMETRIC_TOLERANCE"
}
UnitPart::UniformCurve => "UNIFORM_CURVE",
UnitPart::UniformSurface => "UNIFORM_SURFACE",
UnitPart::ValueRepresentationItem { .. } => "VALUE_REPRESENTATION_ITEM",
UnitPart::Vector { .. } => "VECTOR",
UnitPart::Vertex => "VERTEX",
UnitPart::VertexPoint { .. } => "VERTEX_POINT",
UnitPart::ViewVolume { .. } => "VIEW_VOLUME",
}
}
pub(crate) fn complex_legal(&self, id: ComplexUnitId, legal: &[&str]) -> bool {
self.model
.complex_unit_arena
.get(id.0)
.parts
.iter()
.all(|p| legal.binary_search(&Self::part_name(p)).is_ok())
}
pub fn emit_all(self) -> String {
let roots = self.all_ids();
self.dfs_render(roots, &std::collections::HashSet::new())
}
/// Per-schema emit: `dropped` EntityKeys are skipped (never numbered/rendered),
/// `rename` overrides the keyword (downgrade). Caller (projection) guarantees
/// the kept set is referentially closed, so no survivor refs a dropped id.
pub fn emit_all_with_plan(
mut self,
dropped: &std::collections::HashSet<EntityKey>,
rename: std::collections::HashMap<EntityKey, &'static str>,
) -> String {
self.rename = rename;
let roots = self.all_ids();
self.dfs_render(roots, dropped)
}
fn dfs_render(
mut self,
roots: Vec<EntityKey>,
dropped: &std::collections::HashSet<EntityKey>,
) -> String {
let mut order: Vec<EntityKey> = Vec::new();
let mut stack: Vec<(EntityKey, bool)> = Vec::new();
let mut on_path: std::collections::HashSet<EntityKey> = std::collections::HashSet::new();
for root in roots {
if dropped.contains(&root) {
continue;
}
if self.get_id(root).is_some() {
continue;
}
stack.push((root, false));
while let Some((any, post)) = stack.pop() {
if post {
on_path.remove(&any);
if self.get_id(any).is_none() {
let n = self.fresh();
self.set_id(any, n);
order.push(any);
}
continue;
}
if self.get_id(any).is_some() {
continue;
}
if on_path.contains(&any) {
// multi-node cycle back-edge: pre-number as a forward-ref.
let n = self.fresh();
self.set_id(any, n);
order.push(any);
continue;
}
on_path.insert(any);
stack.push((any, true));
let mut deps: Vec<EntityKey> = Vec::new();
self.deps_of(any, &mut deps);
for d in deps.into_iter().rev() {
if d == any {
continue;
}
if dropped.contains(&d) {
continue;
}
if self.get_id(d).is_some() {
continue;
}
stack.push((d, false));
}
}
}
for any in &order {
let line = self.render_one(*any);
self.out.push_str(&line);
}
self.out
}
}
pub fn wrap_step(data_body: &str) -> String {
format!(
"ISO-10303-21;\nHEADER;\nFILE_DESCRIPTION((''),'2;1');\n\
FILE_NAME('','',(''),(''),'','','');\n\
FILE_SCHEMA(('AUTOMOTIVE_DESIGN'));\nENDSEC;\nDATA;\n{data_body}ENDSEC;\n\
END-ISO-10303-21;\n"
)
}