regex-base-0.93.2: Replaces/Enhances Text.Regex

Copyright(c) Chris Kuklewicz 2006
LicenseBSD-style (see the file LICENSE)
Maintainerlibraries@haskell.org, textregexlazy@personal.mightyreason.com
Stabilityexperimental
Portabilitynon-portable (Text.Regex.Base needs MPTC+FD)
Safe HaskellSafe
LanguageHaskell98

Text.Regex.Base.Impl

Description

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

Documentation

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

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