pub struct MergedStats {
pub models: usize,
pub written: usize,
pub federated_model_count: usize,
pub unmerged_model_count: usize,
pub unit_rescale_required: bool,
pub dropped_container_count: usize,
pub warnings: Vec<String>,
}Expand description
Coverage stats for a merged export.
Fields§
§models: usizeNumber of input models.
written: usizeEntity lines written.
federated_model_count: usizeModels federated as their own IfcProject (incompatible units under
Auto / Normalize).
unmerged_model_count: usizeModels left unmerged because placing them would overflow the u32 EXPRESS-id space. Non-zero means the merge stopped early to avoid wrapping ids; the caller should route the whole set to a wider-id path if this is hit.
unit_rescale_required: boolTrue when a Normalize export encountered an incompatible-unit model
that was federated rather than rescaled — the caller should route that
case to the JS path if true single-project normalization is required.
dropped_container_count: usizeSpatial containers dropped for holding nothing, counted in the merged
model (a container unified across three inputs counts once). Always 0
unless MergedOptions::drop_empty_containers is set.
warnings: Vec<String>Human-readable notes (e.g. federation relaxing IfcSingleProjectInstance).
Auto Trait Implementations§
impl Freeze for MergedStats
impl RefUnwindSafe for MergedStats
impl Send for MergedStats
impl Sync for MergedStats
impl Unpin for MergedStats
impl UnwindSafe for MergedStats
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.