| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
RegExDot.DSL
Description
AUTHOR- Dr. Alistair Ward
DESCRIPTION
- Defines binary operators, to form a Domain-specific Language, by which to compose
ConcatenationsfromPatterns. - Each operator quantifies the specified
Pattern, & prepends it to the specifiedConcatenation.
TODO- Could
[]&Metabe instances of a type-class which has methods (-:) etc., allowing the former to prependcaptureGroup& the latterRequire?
Synopsis
- (-:) :: Pattern a -> Concatenation a -> Concatenation a
- (?:) :: Pattern a -> Concatenation a -> Concatenation a
- (??:) :: Pattern a -> Concatenation a -> Concatenation a
- (*:) :: Pattern a -> Concatenation a -> Concatenation a
- (*?:) :: Pattern a -> Concatenation a -> Concatenation a
- (+:) :: Pattern a -> Concatenation a -> Concatenation a
- (+?:) :: Pattern a -> Concatenation a -> Concatenation a
- (#->#:) :: (Pattern a, RepetitionBounds) -> Concatenation a -> Concatenation a
- (#->#?:) :: (Pattern a, RepetitionBounds) -> Concatenation a -> Concatenation a
- (#->:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a
- (#->?:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a
- (#:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a
- (<~>) :: AnchorSpecification -> Concatenation a -> ExtendedRegEx a
Functions
Operators
(-:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend an unrepeated Pattern, to the specified Concatenation.
(?:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend an optional Pattern, to the specified Concatenation.
(??:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
A non-greedy version of ?:.
(*:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend a Pattern, repeatable zero or more times, to the specified Concatenation.
(*?:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
A non-greedy version of *:.
(+:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend a Pattern, repeatable one or more times, to the specified Concatenation.
(+?:) :: Pattern a -> Concatenation a -> Concatenation a infixr 5 Source #
A non-greedy version of +:.
(#->#:) :: (Pattern a, RepetitionBounds) -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend a Pattern, repeated a range of times, to the specified Concatenation.
(#->#?:) :: (Pattern a, RepetitionBounds) -> Concatenation a -> Concatenation a infixr 5 Source #
A non-greedy version of #->#:.
(#->:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend a Pattern, repeated at least a specified number of times, to the specified Concatenation.
(#->?:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a infixr 5 Source #
A non-greedy version of #->:.
(#:) :: (Pattern a, Repetitions) -> Concatenation a -> Concatenation a infixr 5 Source #
Prepend a Pattern, repeated a precise number of times, to the specified Concatenation.
Arguments
| :: AnchorSpecification | A specification for the anchors required around the expression. |
| -> Concatenation a | The bare list of repeatable patterns to anchor. |
| -> ExtendedRegEx a | The completed regex. |
- Sandwiches a
Concatenationbetween optionalAnchors to construct aExtendedRegEx. - Accounts for the unusual requirement to place an
Sternat the start of theConcatenation, or anBowat the end.