BIMIFC Parser - High-performance IFC parser
This crate provides a fast, memory-efficient parser for IFC (STEP) files.
It implements the traits defined in bimifc-model for a clean abstraction.
Features
- Fast tokenization using
nomcombinators - SIMD-accelerated scanning using
memchr - Lazy entity decoding - only parse entities when needed
- Arc-based caching - efficient memory sharing
- Progress reporting for large files
Example
use bimifc_parser::StepParser;
use bimifc_model::IfcParser;
let parser = StepParser::new();
let model = parser.parse(ifc_content)?;
// Access entities
let walls = model.resolver().find_by_type_name("IFCWALL");
println!("Found {} walls", walls.len());