Akira Yoshiyama c9c5aab2c2 Fixes combined "and" and "or" rule handling
The text parser handles rules like below:

- A or B or C [or D...]
- A and B and C [and D...]

But it doesn't ones below:

- A or B and C
- A and B or C

So, this patch fixes them with:

- for "A and B or C": adds @reducer('and_expr', 'or', 'check') to
  _make_or_expr().

- for "A or B and C": adds _mix_or_and_expr() method. It pops the last
  check (B) from OrCheck rule list [A, B] and append AndCheck with
  rule list [B, C] to the Or Check rule list. So, finally we will get
  "OrCheck[A, AndCheck[B, C]]".

Change-Id: Iaaee4864356411374ee7e7c5c0c05b98889e0f4e
Closes-Bug: #1523030
2015-12-13 21:39:15 +09:00
..
2015-02-05 20:44:18 +00:00