valguard

Types

Key/Value pair for encoding validation errors. Key indicates the name of the field that failed validation and Value is the error message.

pub type ValidationError {
  ValidationError(key: String, value: String)
}

Constructors

  • ValidationError(key: String, value: String)

Values

pub fn append_error(
  result: Result(Nil, ValidationError),
  list: List(ValidationError),
) -> List(ValidationError)

Takes a validation result and list of validation errors If result is error, it adds it to the list

pub fn collect_errors(
  inputs: List(Result(Nil, ValidationError)),
) -> List(ValidationError)

Takes a list of validation results and returns a list of the errors Returns an empty list if no errors

pub fn list(
  key: String,
  list: List(fn() -> Result(Nil, String)),
) -> Result(Nil, ValidationError)

Validates a list of requirements lazily.

Takes a key and list of validation functions.

Returns Ok(Nil) if success or Error(String) at first issue

pub fn prepare(
  errors: List(ValidationError),
) -> Result(Nil, List(ValidationError))

Takes a list of validation errors and converts it to a result Returns ok if list is empty

pub fn prepare_with(
  errors: List(ValidationError),
  custom_type: fn(List(ValidationError)) -> custom_type,
) -> Result(Nil, custom_type)

Takes a list of validation errors and converts it to a result wrapping the errors in a custom type. Returns Ok(Nil) if list is empty.

This functions similar to valguard.prepare.

pub fn with(
  key: String,
  value: value,
  list: List(fn(value) -> Result(Nil, String)),
) -> Result(Nil, ValidationError)

Validates a list of requirements lazily.

Takes a key, value and list of validation functions.

Runs validation functions lazily and returns the result. Returns Ok(Nil) if success or Error(String) at first issue

pub fn with_optional(
  key: String,
  option: option.Option(value),
  list: List(fn(value) -> Result(Nil, String)),
) -> Result(Nil, ValidationError)

Validates a list of requirements lazily.

Takes a key, an optional value and list of validation functions.

Runs validation functions lazily and returns the result. Returns Ok(Nil) if optional value is None or all validations are successful. Returns Error(String) at first issue.

Search Document