(Frag f1, boolean nongreedy)
| 153 | |
| 154 | // Given a fragment a, returns a fragment for a* or a*? (if nongreedy) |
| 155 | private Frag star(Frag f1, boolean nongreedy) { |
| 156 | if (f1.nullable) { |
| 157 | return quest(plus(f1, nongreedy), nongreedy); |
| 158 | } |
| 159 | return loop(f1, nongreedy); |
| 160 | } |
| 161 | |
| 162 | // Given a fragment for a, returns a fragment for a+ or a+? (if nongreedy) |
| 163 | private Frag plus(Frag f1, boolean nongreedy) { |