Lines Matching refs:a
14 * an ATN configuration is valid. It's either a single predicate,
15 * a conjunction `p1&&p2`, or a sum of products `p1 || p2`.
25 * a predicate of the form `{true}?`.
34 public static function andContext(?self $a, ?self $b) : ?self
36 if ($a === null || $a === self::none()) {
41 return $a;
44 $result = new AndOperator($a, $b);
49 public static function orContext(?self $a, ?self $b) : ?self
51 if ($a === null) {
56 return $a;
59 if ($a === self::none() || $b === self::none()) {
63 $result = new OrOperator($a, $b);
69 * For context independent predicates, we evaluate them without a local
72 * opposed to the parser, which creates them naturally). In a practical
73 * sense, this avoids a cast exception from RuleContext to myruleContext.
75 * For context dependent predicates, we must pass in a local context so that
96 * as a result of precedence predicate evaluation.