-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Text-based PCRE API for regex-base
--   
--   The PCRE/Text backend to accompany regex-base; needs regex-pcre and
--   regex-tdfa-text
@package regex-pcre-text
@version 0.94.0.1

module Text.Regex.PCRE.Text

-- | A compiled regular expression
data Regex

-- | 0 based index from start of source, or (-1) for unused
type MatchOffset = Int

-- | non-negative length of a match
type MatchLength = Int
newtype CompOption
CompOption :: CInt -> CompOption
newtype ExecOption
ExecOption :: CInt -> ExecOption
data ReturnCode
type WrapError = (ReturnCode, String)
unusedOffset :: MatchOffset

-- | return version of pcre used or Nothing if pcre is not available.
getVersion :: Maybe String

-- | Compiles a regular expression
compile :: CompOption -> ExecOption -> Text -> IO (Either (MatchOffset, String) Regex)

-- | Matches a regular expression against a string
execute :: Regex -> Text -> IO (Either WrapError (Maybe (Array Int (MatchOffset, MatchLength))))

-- | Matches a regular expression against a string
regexec :: Regex -> Text -> IO (Either WrapError (Maybe (Text, Text, Text, [Text])))
compBlank :: CompOption
compAnchored :: CompOption
compAutoCallout :: CompOption
compCaseless :: CompOption
compDollarEndOnly :: CompOption
compDotAll :: CompOption
compExtended :: CompOption
compExtra :: CompOption
compFirstLine :: CompOption
compMultiline :: CompOption
compNoAutoCapture :: CompOption
compUngreedy :: CompOption
compUTF8 :: CompOption
compNoUTF8Check :: CompOption
execBlank :: ExecOption
execAnchored :: ExecOption
execNotBOL :: ExecOption
execNotEOL :: ExecOption
execNotEmpty :: ExecOption
execNoUTF8Check :: ExecOption
execPartial :: ExecOption
instance Text.Regex.Base.RegexLike.RegexContext Text.Regex.PCRE.Wrap.Regex Data.Text.Internal.Text Data.Text.Internal.Text
instance Text.Regex.Base.RegexLike.RegexMaker Text.Regex.PCRE.Wrap.Regex Text.Regex.PCRE.Wrap.CompOption Text.Regex.PCRE.Wrap.ExecOption Data.Text.Internal.Text
instance Text.Regex.Base.RegexLike.RegexLike Text.Regex.PCRE.Wrap.Regex Data.Text.Internal.Text

module Text.Regex.PCRE.Text.Lazy

-- | A compiled regular expression
data Regex

-- | 0 based index from start of source, or (-1) for unused
type MatchOffset = Int

-- | non-negative length of a match
type MatchLength = Int
newtype CompOption
CompOption :: CInt -> CompOption
newtype ExecOption
ExecOption :: CInt -> ExecOption
data ReturnCode
type WrapError = (ReturnCode, String)
unusedOffset :: MatchOffset

-- | return version of pcre used or Nothing if pcre is not available.
getVersion :: Maybe String

-- | Compiles a regular expression
compile :: CompOption -> ExecOption -> Text -> IO (Either (MatchOffset, String) Regex)

-- | Matches a regular expression against a string
execute :: Regex -> Text -> IO (Either WrapError (Maybe (Array Int (MatchOffset, MatchLength))))

-- | Matches a regular expression against a string
regexec :: Regex -> Text -> IO (Either WrapError (Maybe (Text, Text, Text, [Text])))
compBlank :: CompOption
compAnchored :: CompOption
compAutoCallout :: CompOption
compCaseless :: CompOption
compDollarEndOnly :: CompOption
compDotAll :: CompOption
compExtended :: CompOption
compExtra :: CompOption
compFirstLine :: CompOption
compMultiline :: CompOption
compNoAutoCapture :: CompOption
compUngreedy :: CompOption
compUTF8 :: CompOption
compNoUTF8Check :: CompOption
execBlank :: ExecOption
execAnchored :: ExecOption
execNotBOL :: ExecOption
execNotEOL :: ExecOption
execNotEmpty :: ExecOption
execNoUTF8Check :: ExecOption
execPartial :: ExecOption
instance Text.Regex.Base.RegexLike.RegexContext Text.Regex.PCRE.Wrap.Regex Data.Text.Internal.Lazy.Text Data.Text.Internal.Lazy.Text
instance Text.Regex.Base.RegexLike.RegexMaker Text.Regex.PCRE.Wrap.Regex Text.Regex.PCRE.Wrap.CompOption Text.Regex.PCRE.Wrap.ExecOption Data.Text.Internal.Lazy.Text
instance Text.Regex.Base.RegexLike.RegexLike Text.Regex.PCRE.Wrap.Regex Data.Text.Internal.Lazy.Text
