pub struct ValidationEngine { /* private fields */ }Expand description
Validation engine for executing rules against schemas
Implementations§
Source§impl ValidationEngine
impl ValidationEngine
Sourcepub fn new(config: ValidationEngineConfig) -> Self
pub fn new(config: ValidationEngineConfig) -> Self
Create a new validation engine
Sourcepub fn add_rule(&mut self, rule: ValidationRule)
pub fn add_rule(&mut self, rule: ValidationRule)
Add a global rule
Sourcepub fn add_rules(&mut self, rules: impl IntoIterator<Item = ValidationRule>)
pub fn add_rules(&mut self, rules: impl IntoIterator<Item = ValidationRule>)
Add multiple global rules
Sourcepub fn add_subject_rule(&mut self, subject: &str, rule: ValidationRule)
pub fn add_subject_rule(&mut self, subject: &str, rule: ValidationRule)
Add a rule for a specific subject
Sourcepub fn remove_rule(&mut self, name: &str) -> bool
pub fn remove_rule(&mut self, name: &str) -> bool
Remove a rule by name
Sourcepub fn rules(&self) -> &[ValidationRule]
pub fn rules(&self) -> &[ValidationRule]
Get all rules
Sourcepub fn list_rules(&self) -> Vec<ValidationRule>
pub fn list_rules(&self) -> Vec<ValidationRule>
List all rules (alias for rules(), returns owned Vec)
Sourcepub fn subject_rules(&self, subject: &str) -> Option<&[ValidationRule]>
pub fn subject_rules(&self, subject: &str) -> Option<&[ValidationRule]>
Get rules for a subject
Sourcepub fn validate(
&self,
schema_type: SchemaType,
subject: &str,
schema: &str,
) -> SchemaResult<ValidationReport>
pub fn validate( &self, schema_type: SchemaType, subject: &str, schema: &str, ) -> SchemaResult<ValidationReport>
Validate a schema against all applicable rules
Auto Trait Implementations§
impl !Freeze for ValidationEngine
impl !RefUnwindSafe for ValidationEngine
impl Send for ValidationEngine
impl Sync for ValidationEngine
impl Unpin for ValidationEngine
impl UnsafeUnpin for ValidationEngine
impl UnwindSafe for ValidationEngine
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