#[non_exhaustive]pub struct Rule {
pub id: RuleId,
pub object_type: ObjectTypeName,
pub deferred: bool,
pub tags: Vec<Identifier>,
pub description: BoundedText,
pub test: RuleExpr,
pub error: ErrorTemplate,
pub references: Vec<SpecReference>,
}Expand description
Validation rule.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: RuleIdRule id.
object_type: ObjectTypeNameObject type targeted by this rule.
deferred: boolWhether this rule runs after traversal.
Rule tags.
description: BoundedTextHuman-readable rule description.
test: RuleExprBounded rule expression.
error: ErrorTemplateError template used for failed assertions.
references: Vec<SpecReference>Specification citations associated with this rule.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Rule
impl<'de> Deserialize<'de> for Rule
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Rule
impl RefUnwindSafe for Rule
impl Send for Rule
impl Sync for Rule
impl Unpin for Rule
impl UnsafeUnpin for Rule
impl UnwindSafe for Rule
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