static S ctxParsingRules() { ret [[ = ruleid = ruleid = ruleid - = ruleid RULE ( ) = rule // e.g. (MATCH1==MATCH5) = = = comp = expX // bracketing combines top and bottom ( ) = bracket = expX // primitive expressions are at top level = expX // as is negation ! = neg = expX // now come the lower levels = exp3 & & = and = exp2 = exp2 | | = or = exp1 = exp1 // lowest level = exp ]]; }