Crunch
A Message Definition Language for Getting Things Right
Loading...
Searching...
No Matches
Crunch::Validator Concept Reference

Concept defining a value validator. More...

#include <crunch_validators.hpp>

Concept definition

template<typename V, typename T>
concept Crunch::Validator = requires(T value, FieldId field_id) {
{ V::Check(value, field_id) } -> std::same_as<std::optional<Error>>;
}
Concept defining a value validator.
Definition: crunch_validators.hpp:17
int32_t FieldId
Unique identifier for a field within a Crunch message.
Definition: crunch_types.hpp:11

Detailed Description

Concept defining a value validator.

Validators implement a static Check method that validates a value and returns std::nullopt on success or an Error on failure.