Trait DirectiveValidator

Source
pub trait DirectiveValidator: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn validate(&self, directive: &ParsedDirective) -> DirectiveValidationResult;
    fn expected_arguments(&self) -> Vec<String>;
    fn valid_options(&self) -> Vec<String>;
    fn requires_content(&self) -> bool;
    fn allows_content(&self) -> bool;

    // Provided method
    fn get_suggestions(&self, directive: &ParsedDirective) -> Vec<String> { ... }
}
Expand description

Trait for implementing directive validators

Required Methods§

Source

fn name(&self) -> &str

Returns the name of the directive this validator handles

Source

fn validate(&self, directive: &ParsedDirective) -> DirectiveValidationResult

Validates a parsed directive

Source

fn expected_arguments(&self) -> Vec<String>

Returns expected arguments for this directive

Source

fn valid_options(&self) -> Vec<String>

Returns valid options for this directive

Source

fn requires_content(&self) -> bool

Returns whether this directive requires content

Source

fn allows_content(&self) -> bool

Returns whether this directive allows content

Provided Methods§

Source

fn get_suggestions(&self, directive: &ParsedDirective) -> Vec<String>

Provides suggestions for fixing directive issues

Implementors§