pub struct RuleEntry {
pub id: &'static str,
pub entity: Option<&'static str>,
pub releases: &'static [SchemaVersion],
pub support: Support,
}Expand description
One registered rule.
The entry is the rule’s whole scope: it applies to instances of
Self::entity and of its subtypes, and only under the
Self::releases whose EXPRESS declares it under this id. The engine
reads both from here, so a rule cannot run on a narrower set of
instances, or under more releases, than its entry states.
Fields§
§id: &'static strStable rule id: <declaring entity>.<label> exactly as the schema
writes it (e.g. IfcExternalReference.WR1), or global.<name> for a
file-wide rule.
entity: Option<&'static str>The entity declaring the rule, or None for a global rule.
Instances of its subtypes are constrained too: EXPRESS WHERE rules are inherited.
releases: &'static [SchemaVersion]The releases whose EXPRESS declares this rule under Self::id.
support: SupportWhether it is evaluated.
Implementations§
Trait Implementations§
impl Copy for RuleEntry
impl Eq for RuleEntry
impl StructuralPartialEq for RuleEntry
Auto Trait Implementations§
impl Freeze for RuleEntry
impl RefUnwindSafe for RuleEntry
impl Send for RuleEntry
impl Sync for RuleEntry
impl Unpin for RuleEntry
impl UnsafeUnpin for RuleEntry
impl UnwindSafe for RuleEntry
Blanket Implementations§
Source§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
Mutably borrows from an owned value. Read more