regex-base- Replaces/Enhances Text.Regex

Portabilitynon-portable (Text.Regex.Base needs MPTC+FD)



Helper functions for defining certain instances of RegexContext. These help when defining instances of RegexContext with repeated types:

 instance (RegexLike regex source) => RegexContext regex source source where

runs into overlapping restrictions. To avoid this I have each backend define, for its own Regex type:

 instance RegexContext Regex String String where
   match = polymatch
   matchM = polymatchM
 instance RegexContext Regex ByteString ByteString where
   match = polymatch
   matchM = polymatchM


polymatch :: RegexLike a b => a -> b -> bSource

polymatchM :: (RegexLike a b, Monad m) => a -> b -> m bSource