DPMatchGrammar
enum DPMatchGrammar =
`
DPMATCH:
PatternList < PatternListElement+
PatternListElement < "|" Pattern "->" PatternHandler
Pattern < VariantPattern
VariantPattern < VariantPatternName VariantPatternBindings
VariantPatternBindings < (:"(" VariantPatternName ("," VariantPatternName)* :")")?
VariantPatternArgs < "()" / :"(" VariantPattern ("," VariantPattern)* :")"
VariantPatternName <~ !Keyword [a-zA-Z_] [a-zA-Z0-9_]*
PatternHandler <~ :"<""{" (!"}>" .)* "}":">"
Keyword <~ "match"
`;
dpmatch parser
classesenumsfunctionsinterfacesmanifest constants