Simple compile-time Regular Expression matcher of Scala 3 Match Types.
summon[
Match[
AST[".*abc.*"],
"auaoeuaoeu__abc__khaoukrsao"
] =:= true
]
summon[
AST[
"(ab(c|d)|e*)*"
] =:= Star[
Alt[
Con[
Con[
Lit["a"], Lit["b"]
],
Alt[
Lit["c"], Lit["d"]
]
],
Star[Lit["e"]]
]
]
]
See also EvalTest.scala for more examples.