7 , id(restriction->id.value.value)
8 , expression(
Expression(restriction->expression.value.value,attributeRegistry))
11 if ( restriction->
scope.has_value() ) {
12 if ( restriction->scope->get().value.value ==
"entry" ) {
15 else if ( restriction->
scope->get().value.value ==
"exit" ) {
21template <
typename DataType>
24 return feasible.has_value() && feasible.value();
Class representing a mathematical expression.
std::optional< BPMNOS::number > execute(const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
const Expression expression
bool isSatisfied(const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
Check if the restriction is satisfied using an expression applied on status and data attribute values...
Restriction(XML::bpmnos::tRestriction *restriction, const AttributeRegistry &attributeRegistry)
std::optional< std::reference_wrapper< Attribute > > scope
Attribute value can be expected to be of type 'std::string'.