BuiltinMatcher
Explanation added as comments in code Using plain `Lazy<Option<GlobMatcher>>` is just better