Indeed. And if you have or-patterns in depth, you will have to do the backtracking in depth as well. For example, reusing an example suggested above, (range @ Range { start: 0 | 1, end: 5 | 6 }) if valid(range)
would result in (at most) four tests.
If I saw this I would assume it was performing a bitwise or and then matching. This is a gotcha on the level of switch-case fallthrough.
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.