src/widget/one_rule/algebra/conditions.c File Reference src/widget/one_rule/algebra/conditions.c Algebra of rule conditions. #include "../../../../include/util.h"#include "../../../../include/fsm.h"#include "../../../../include/widget.h"#include "../../../../include/signal.h"#include <stdio.h>#include <stdlib.h> Functions void * widget_get_selected_rule_conditions_list_btt () Builds and presents the conditions list of a rule.
Detailed Description Algebra of rule conditions. This file is part of Gem-graph. It hosts the functions needed to describe the conditions under which a rule is applied.
Function Documentation
widget_get_selected_rule_conditions_list_btt() widget_get_selected_rule_conditions_list_bttconditions.c conditions.cwidget_get_selected_rule_conditions_list_btt void * widget_get_selected_rule_conditions_list_btt ( ) Builds and presents the conditions list of a rule. This list sets out all the conditions that the rule must meet in order to be applied. Today, an arbitrary presentation with no link to the XML model and no verification of compliance with the meta-rules. (see below) TODO |- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - > No conditions should be repeated. No condition may contradict another (== a unique condition per address in rule workspace) Completeness is not required (== there does not need to be one condition per address in the rule workspace) (NB The following applies to server workers) Two rules cannot share the same set of conditions. If several rules apply to the same set of local conditions - which can happen if several different actions are possible from the same situation - they must each include an additional condition determining their probability of execution in the event of a conflict. If two rules share the same local set of conditions, they must both be evaluated. If all the conditions of one rule are included in the conditions of another rule, then the other rule must be evaluated first. < - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -| Since 2024-08 See also src/widget/one_rule/algebra/utilities/widget_set_item_text() src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?) src/widget/one_rule/algebra/dispatch() Returns the conditions list