nth_attribute_is_present

Function nth_attribute_is_present 

Source
pub fn nth_attribute_is_present(record: &[u8], index: usize) -> bool
Expand description

Whether the top-level attribute at index (0-based, first attribute after the () of a STEP record holds a value: it exists, it is not $, and it is not an empty slot (,,). Attributes are split by StepListItems, so nesting, strings and comments follow its rule, and whitespace is the STEP set (is_step_space), including the vertical tab and form feed that u8::is_ascii_whitespace leaves out.

false for anything the record does not settle: an argument list that never opens or never closes, a comment or string literal that never closes, an index past the last attribute. false is the “no geometry” side for every caller, so an unreadable record is skipped rather than meshed.

Callers use it to check attribute 6 (Representation, stable across every IfcProduct subtype) before deciding an otherwise-excluded spatial container exceptionally carries geometry (#1910), companion to is_representationless_spatial_container_by_name.