pub trait ValidateExecutor: Send + Sync {
// Required method
fn execute_validation(
&self,
task: &ValidationTask<'_>,
context: &ExecutionContext<'_>,
) -> Result<bool, AamlError>;
// Provided method
fn execute_batch(
&self,
tasks: &[ValidationTask<'_>],
context: &ExecutionContext<'_>,
) -> TaskExecutionResult { ... }
}Expand description
Trait for executing validation tasks.
A ValidateExecutor takes a stream of ValidationTasks and executes them,
returning aggregated results suitable for LSP integration.
Required Methods§
Sourcefn execute_validation(
&self,
task: &ValidationTask<'_>,
context: &ExecutionContext<'_>,
) -> Result<bool, AamlError>
fn execute_validation( &self, task: &ValidationTask<'_>, context: &ExecutionContext<'_>, ) -> Result<bool, AamlError>
Provided Methods§
Sourcefn execute_batch(
&self,
tasks: &[ValidationTask<'_>],
context: &ExecutionContext<'_>,
) -> TaskExecutionResult
fn execute_batch( &self, tasks: &[ValidationTask<'_>], context: &ExecutionContext<'_>, ) -> TaskExecutionResult
Executes multiple validation tasks and aggregates results.
This method is the main entry point for validation execution. It collects errors from multiple failing tasks rather than stopping at the first error, which is critical for LSP support.
§Arguments
tasks: All validation tasks to executecontext: The execution context
§Returns
TaskExecutionResultcontaining success status and error collection
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".