1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
Most Filter members forward requests received by the Parser to Rule or Expr
objects. The following members directly handle Parser requests:
rulesFile - called from Parser::rulesFile
defines Rules for every new Rules file or returns the
address of an already loaded Rules
(d_rules).
- d_ruleVect: ptr to the currectly active Rule object
- d_exprVect: ptr to the currectly active Expr objects in
the currently active Rule
startIf - called from Parser::startIf after matching 'if' resetting
Condition and the above mentioned pointers
done - called from Parser::action, returns true if d_rules->matched
and performs the requested mail handling
Condition:
==========
The Filter's d_condition object receives the Rules associated with the
current rules-file, and keeps track of the bool value of the conditions of
if-statements.
d_condition() - called by Filter::condition() from Parser::condTerm():
true if the conditions are true so far. Once false no
further evaluations are performed (but parsing
continues)
update(Truth) - called by Filter::currentCondition() from
Parser::condTerm(); updates d_condition using the
condition's [not], returining the resulting bool.
the resulting
Once a condition has been processed the term's condition is update
|