Safe Haskell | None |
---|---|
Language | Haskell2010 |
Text.RE.REOptions
- data SimpleREOptions
- data REOptions_ r c e = REOptions {
- optionsMacs :: !(Macros r)
- optionsComp :: !c
- optionsExec :: !e
- class IsOption o r c e | e -> r, c -> e, e -> c, r -> c, c -> r, r -> e where
- type Macros r = HashMap MacroID r
- newtype MacroID = MacroID {
- getMacroID :: String
- emptyMacros :: Macros r
RE Options
data SimpleREOptions Source #
the default API uses these simple, universal RE options,
which get auto-converted into the apropriate back-end REOptions_
Constructors
MultilineSensitive | case-sensitive with ^ and $ matching the start and end of a line |
MultilineInsensitive | case-insensitive with ^ and $ matsh the start and end of a line |
BlockSensitive | case-sensitive with ^ and $ matching the start and end of the input text |
BlockInsensitive | case-insensitive with ^ and $ matching the start and end of the input text |
Instances
Bounded SimpleREOptions Source # | |
Enum SimpleREOptions Source # | |
Eq SimpleREOptions Source # | |
Ord SimpleREOptions Source # | |
Show SimpleREOptions Source # | |
Lift SimpleREOptions Source # | we need to use this in the quasi quoters to specify |
data REOptions_ r c e Source #
the general options for an RE are dependent on which back end is
being used and are parameterised over the RE
type for the back end,
and its CompOption
and ExecOption
types (the compile-time and
execution time options, respectively); each back end will define an
REOptions
type that fills out these three type parameters with the
apropriate types (see, for example, Text.RE.ZeInternals.TDFA)
Constructors
REOptions | |
Fields
|
Instances
IsOption REOptions RE CompOption ExecOption Source # | |
(Show e, Show c, Show r) => Show (REOptions_ r c e) Source # | |
The IsOption Class
class IsOption o r c e | e -> r, c -> e, e -> c, r -> c, c -> r, r -> e where Source #
a number of types can be used to encode REOptions_
, each of which
is made a member of this class
Minimal complete definition
Instances
The Macro Tables
type Macros r = HashMap MacroID r Source #
our macro tables are parameterised over the backend RE
type and
and just associate each MacroID
with an RE
(which may in turn
contain macros to be expanded)
MacroID
is just a wrapped String
type with an IsString
instance
Constructors
MacroID | |
Fields
|
emptyMacros :: Macros r Source #
a macro table containing no entries