This module defines a class scope_c which keeps track of all variables in a formula. It is currently implemented simply as a list of variables, but e.g. a hash table would also be possible. There are no instances of this class, all methods are declared as static.
static void reset(void)
;static var_c* find(str_t name_ptr, str_t name_end)
;static var_t first(void)
;next
below,
this function offers the possibility to loop over all variables
in the current list.
This is e.g. needed when a rule for a query is constructed
and the answer variables are not explicitly specified.
The variables are returned in the sequence they were created
by a call to find
above.
The function returns NIL if the current variable list is empty.
static var_t next(void)
;first
above.
In this way one gets the first variable
(or NIL if the list is empty).
After that,
one calls this function next
to retrieve the variables one by one
until it returns NIL.
static void print(void)
;