AnalysisValidation

Type Alias AnalysisValidation 

Source
pub type AnalysisValidation<T> = Validation<T, AnalysisErrors>;
Expand description

Validation type for debtmap validations.

This type alias uses stillwater’s Validation with:

  • Success type T (the validated value)
  • Error type NonEmptyVec<AnalysisError> (accumulated errors)

Unlike Result, Validation accumulates ALL errors instead of short-circuiting at the first failure. This is useful for:

  • Configuration validation (report all issues at once)
  • Input validation (show all problems to the user)
  • Analysis validation (collect all findings)

§Usage

use debtmap::effects::{AnalysisValidation, validation_success, validation_failure};
use debtmap::errors::AnalysisError;

fn validate_name(name: &str) -> AnalysisValidation<String> {
    if name.is_empty() {
        validation_failure(AnalysisError::validation("Name cannot be empty"))
    } else {
        validation_success(name.to_string())
    }
}

Aliased Type§

pub enum AnalysisValidation<T> {
    Success(T),
    Failure(NonEmptyVec<AnalysisError>),
}

Variants§

§

Success(T)

Successful validation with a value

§

Failure(NonEmptyVec<AnalysisError>)

Failed validation with accumulated errors