regex-pcre-builtin-0.94.4.8.8.35: Replaces/Enhances Text.Regex

Safe HaskellNone
LanguageHaskell98

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

newtype CompOption #

Constructors

CompOption CInt 

Instances

Eq CompOption # 
Num CompOption # 
Show CompOption # 
Bits CompOption # 
RegexOptions Regex CompOption ExecOption # 

newtype ExecOption #

Constructors

ExecOption CInt 

Instances

Eq ExecOption # 
Num ExecOption # 
Show ExecOption # 
Bits ExecOption # 
RegexOptions Regex CompOption ExecOption # 

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

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

Low-level interface

wrapCompile #

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 #

Arguments

:: StartOffset

Starting index in CStringLen

-> Regex

Compiled regular expression

-> CStringLen

String to match against and length in bytes

-> IO (Either WrapError Bool) 

wrapMatch #

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]) #

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

Miscellaneous

getVersion :: Maybe String #

return version of pcre used or Nothing if pcre is not available.

CompOption values

ExecOption values

ReturnCode values