regex-pcre-0.95.0.0: PCRE Backend for "Text.Regex" (regex-base)

Safe HaskellNone
LanguageHaskell2010

Text.Regex.PCRE.Wrap

Contents

Description

This will fail or error only if allocation fails or a nullPtr is passed in.

Synopsis

High-level interface

data Regex Source #

A compiled regular expression

Instances
RegexLike Regex String Source # 
Instance details

Defined in Text.Regex.PCRE.String

RegexLike Regex ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexLike Regex ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexContext Regex String String Source # 
Instance details

Defined in Text.Regex.PCRE.String

Methods

match :: Regex -> String -> String #

matchM :: MonadFail m => Regex -> String -> m String #

RegexContext Regex ByteString ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexContext Regex ByteString ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption String Source # 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE.Sequence

RegexLike Regex (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE.Sequence

RegexContext Regex (Seq Char) (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE.Sequence

Methods

match :: Regex -> Seq Char -> Seq Char #

matchM :: MonadFail m => Regex -> Seq Char -> m (Seq Char) #

newtype CompOption Source #

Constructors

CompOption CInt 
Instances
Eq CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Num CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Show CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Bits CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexMaker Regex CompOption ExecOption String Source # 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE.Sequence

newtype ExecOption Source #

Constructors

ExecOption CInt 
Instances
Eq ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Num ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Show ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Bits ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexMaker Regex CompOption ExecOption String Source # 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE.Sequence

(=~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target) => source1 -> source -> target Source #

(=~~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target, MonadFail m) => source1 -> source -> m target Source #

Low-level interface

newtype ReturnCode Source #

Constructors

ReturnCode CInt 
Instances
Eq ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Show ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

wrapCompile Source #

Arguments

:: CompOption

Flags (summed together)

-> ExecOption

Flags (summed together)

-> CString

The regular expression to compile

-> IO (Either (MatchOffset, String) Regex)

Returns: an error offset and string or the compiled regular expression

Compiles a regular expression

wrapTest Source #

Arguments

:: StartOffset

Starting index in CStringLen

-> Regex

Compiled regular expression

-> CStringLen

String to match against and length in bytes

-> IO (Either WrapError Bool) 

wrapMatch Source #

Arguments

:: StartOffset

Starting index in CStringLen

-> Regex

Compiled regular expression

-> CStringLen

String to match against and length in bytes

-> IO (Either WrapError (Maybe [(StartOffset, EndOffset)]))

Returns: 'Right Nothing' if the regex did not match the string, or: 'Right Just' an array of (offset,length) pairs where index 0 is whole match, and the rest are the captured subexpressions, or: 'Left ReturnCode' if there is some strange error

Matches a regular expression against a string

Should never return (Right (Just []))

wrapMatchAll :: Regex -> CStringLen -> IO (Either WrapError [MatchArray]) Source #

wrapMatchAll is an improvement over wrapMatch since it only allocates memory with allocaBytes once at the start.

Miscellaneous

getVersion :: Maybe String Source #

Version string of PCRE library

NOTE: The Maybe type is used for historic reasons; practically, getVersion is never Nothing.

CompOption values

ExecOption values

ReturnCode values