2#ifndef IV_SRC_LOGIC_LOGICEXPRESSIONMAP_HPP_
3#define IV_SRC_LOGIC_LOGICEXPRESSIONMAP_HPP_
34 std::string &errorMessage)
36 if (not logicExpression.
compile(errorMessage))
41 m_logicExpressions.emplace_back(logicExpression, value);
48 std::optional<T> result {std::nullopt};
50 for (
auto &[logicExpression, value]: m_logicExpressions)
52 auto exprValue = logicExpression.evaluate();
53 if (not exprValue.has_value())
58 if (exprValue.value())
Definition LogicExpressionMap.hpp:15
bool addLogicExpression(LogicExpression &logicExpression, const T &value, std::string &errorMessage)
Definition LogicExpressionMap.hpp:33
LogicExpressionMap(LogicExpressionMap &&other) noexcept=default
LogicExpressionMap(const LogicExpressionMap &other)=default
std::vector< std::pair< LogicExpression, T > > m_logicExpressions
Definition LogicExpressionMap.hpp:29
LogicExpressionMap()=default
std::optional< T > getResult()
Definition LogicExpressionMap.hpp:46
LogicExpressionMap & operator=(LogicExpressionMap &&other) noexcept=default
~LogicExpressionMap()=default
LogicExpressionMap & operator=(const LogicExpressionMap &other)=default
Definition LogicExpression.hpp:14
bool compile(std::string &errorMessage)
Definition LogicExpression.cpp:130
Definition LogicExpression.cpp:6