From 48ed9602b8fe155e241353a0f2c7d20f2a6bb5cc Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 Date: Fri, 6 May 2022 14:15:25 +0200 Subject: [PATCH] Add MinMaxValue with runtime parameters --- src/configconstraints_base.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/configconstraints_base.h b/src/configconstraints_base.h index e71ffd4..f854206 100644 --- a/src/configconstraints_base.h +++ b/src/configconstraints_base.h @@ -94,6 +94,14 @@ ConfigConstraintReturnType MinMaxValue(typename ConfigWrapper::value_t val) return {}; } +template +ConfigConstraintReturnType MinMaxValue(typename ConfigWrapper::value_t val, T MIN_VALUE, T MAX_VALUE) +{ + if (val < MIN_VALUE || val > MAX_VALUE) + return tl::make_unexpected(fmt::format("Value {} exceeds range {} to {}", val, MIN_VALUE, MAX_VALUE)); + return {}; +} + template ConfigConstraintReturnType MinMaxOrZeroValue(typename ConfigWrapper::value_t val) {