Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Journey supported OR tokens right from the start (using the pipe character), they are translated into proper AST nodes. However, the rule for translating them into a regular expression was missing, so I added it.
I don't understand the router well enough (yet) to check if that's all that's needed to make them generally work. The code I actually started looking at, was the code for generating URLs, not sure if that works properly with OR literals in there. @tenderlove informed me, that he has some refactoring of said code pending, so I refrained from diving into it.
My main motivation for looking into this in the first place, was a conversation I had with @amatsuda about doing a spike on using Mustermann in Rails to see if it would speed up url_helpers (it's really fast at expanding a URL pattern into a full URL).