36 { S::path } -> std::convertible_to<std::string_view>;
37 typename S::value_type;
38 { S::default_value() } -> std::same_as<typename S::value_type>;
44 { S::env_override } -> std::convertible_to<std::string_view>;
50 { S::validator() } -> std::same_as<Validator<typename S::value_type>>;
58 return S::env_override;
70 return S::validator();
73 return AlwaysValid<typename S::value_type>();
Type-erased validator that can hold any validation function.
Definition validator.h:33
Concept constraining types that can be used as configuration values.
Definition traits.h:48
Concept for settings with environment variable override.
Definition setting.h:43
Concept for settings with custom validator.
Definition setting.h:49
Concept for valid setting types.
Definition setting.h:35
C++20 compile-time type-safe configuration library.
Definition conf.h:13
auto GetSettingValidator() -> Validator< typename S::value_type >
Helper to get validator for a setting (always-valid if not defined).
Definition setting.h:67
constexpr auto GetEnvOverride() -> std::string_view
Helper to get environment override for a setting (empty if not defined).
Definition setting.h:55