pcre-less-0.2.0: Text/Regex/Less/RECtOpts.hs
{- copyright (c) sreservoir.
license bsd three-clause. -}
module Text.Regex.Less.RECtOpts (reCtOpts,RECtOpts(..)) where
import qualified Text.Regex.PCRE as R
-- compile options.
data RECtOpts = CtAnchored | CtAutoCallout | CtBlank | CtCaseless
| CtDollarEndOnly | CtDotAll | CtExtended | CtExtra
| CtFirstLine | CtMultiLine | CtNoAutoCapture | CtNoUtf8Check
| CtUtf8 | CtUngreedy
deriving (Eq,Show)
-- translates lists of compile option constructors.
reCtOpts :: [RECtOpts] -> R.CompOption
reCtOpts = sum . map reCtOpt1
-- translates a compile option constructor.
reCtOpt1 :: RECtOpts -> R.CompOption
reCtOpt1 CtAnchored = R.compAnchored
reCtOpt1 CtAutoCallout = R.compAutoCallout
reCtOpt1 CtBlank = R.compBlank
reCtOpt1 CtCaseless = R.compCaseless
reCtOpt1 CtDollarEndOnly = R.compDollarEndOnly
reCtOpt1 CtDotAll = R.compDotAll
reCtOpt1 CtExtended = R.compExtended
reCtOpt1 CtExtra = R.compExtra
reCtOpt1 CtFirstLine = R.compFirstLine
reCtOpt1 CtMultiLine = R.compMultiline
reCtOpt1 CtNoAutoCapture = R.compNoAutoCapture
reCtOpt1 CtNoUtf8Check = R.compNoUTF8Check
reCtOpt1 CtUtf8 = R.compUTF8
reCtOpt1 CtUngreedy = R.compUngreedy