| 205 | p(std::move(p)), then(std::move(then)), els(std::move(els)) {} |
| 206 | |
| 207 | TacticResult exec(const Goal &goal) const override { |
| 208 | bool probe = p.check(goal); |
| 209 | dbg() << "\nProbe " << p.name << (probe ? " is true\n" : " is false\n"); |
| 210 | return (probe ? then : els)->exec(goal); |
| 211 | } |
| 212 | }; |
| 213 | |
| 214 |