openbim_ifcx/compose/
mod.rs

1//! Layer composition, following upstream `src/ifcx-core/composition` of
2//! buildingSMART/IFC5-development for the `ifcx_alpha` draft.
3//!
4//! Composition has three phases upstream: federation puts the nodes of all
5//! layers into one list in layer order, flattening merges the nodes that
6//! share a path ([`flatten`]), and composition expands `inherits` and
7//! `children` into a tree ([`compose`]).
8
9mod flatten;
10mod tree;
11
12pub use flatten::{flatten, flatten_owned, FlatNode};
13pub use tree::{compose, ComposeError, ComposedNode, Composition};