| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
UVMHS.Lib.Parser.Regex
Documentation
class Classified c t | t -> c where Source #
data RegexResult o u Source #
Constructors
| RegexResult | |
Fields
| |
Instances
newtype RegexInfo o u Source #
Constructors
| RegexInfo | |
Fields
| |
Instances
| (Show o, Show u) => Show (RegexInfo o u) Source # | |
| (Eq o, Eq u) => Eq (RegexInfo o u) Source # | |
| (Ord o, Ord u) => Ord (RegexInfo o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: RegexInfo o u -> RegexInfo o u -> Ordering # (<) :: RegexInfo o u -> RegexInfo o u -> Bool # (<=) :: RegexInfo o u -> RegexInfo o u -> Bool # (>) :: RegexInfo o u -> RegexInfo o u -> Bool # (>=) :: RegexInfo o u -> RegexInfo o u -> Bool # | |
| Ord u => Append (RegexInfo o u) Source # | |
| Zero u => Eps (RegexInfo o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord u, Zero u) => Monoid (RegexInfo o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| Zero u => Null (RegexInfo o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord u, Plus u) => Seq (RegexInfo o u) Source # | |
| (Ord u, Additive u) => Seqoid (RegexInfo o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| Pretty (𝑂 (RegexResult o u)) => Pretty (RegexInfo o u) Source # | |
newtype Regex c t o u Source #
Instances
| (Show o, Show u, Show t, Show c) => Show (Regex c t o u) Source # | |
| (Eq o, Eq u, Eq t, Eq c) => Eq (Regex c t o u) Source # | |
| (Ord o, Ord u, Ord t, Ord c) => Ord (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: Regex c t o u -> Regex c t o u -> Ordering # (<) :: Regex c t o u -> Regex c t o u -> Bool # (<=) :: Regex c t o u -> Regex c t o u -> Bool # (>) :: Regex c t o u -> Regex c t o u -> Bool # (>=) :: Regex c t o u -> Regex c t o u -> Bool # | |
| (Ord c, Ord t, Ord o, Ord u, Plus u) => Append (Regex c t o u) Source # | |
| (Ord c, Ord t, Ord o, Ord u, Zero u) => Eps (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord c, Ord t, Ord o, Ord u, Additive u) => Kleene (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord c, Ord t, Ord o, Ord u, Additive u) => Monoid (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| Zero u => Null (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord c, Ord t, Ord o, Ord u, Additive u) => Seq (Regex c t o u) Source # | |
| (Ord c, Ord t, Ord o, Ord u, Additive u) => Seqoid (Regex c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| (Ord c, Ord t, Ord o, Ord u, Zero u) => Star (Regex c t o u) Source # | |
Constructors
| NullR | |
| ResR (RegexResult o u) | |
| AtomR (RegexResult o u) (RegexAtom c t o u) | |
| SumsR (𝑃 (Regex c t o u)) | |
| SeqsR (𝐿 (Regex c t o u)) | |
| StarR (RegexResult o u) (Regex c t o u) |
Instances
| (Show o, Show u, Show t, Show c) => Show (RegexU c t o u) Source # | |
| (Eq o, Eq u, Eq t, Eq c) => Eq (RegexU c t o u) Source # | |
| (Ord o, Ord u, Ord t, Ord c) => Ord (RegexU c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: RegexU c t o u -> RegexU c t o u -> Ordering # (<) :: RegexU c t o u -> RegexU c t o u -> Bool # (<=) :: RegexU c t o u -> RegexU c t o u -> Bool # (>) :: RegexU c t o u -> RegexU c t o u -> Bool # (>=) :: RegexU c t o u -> RegexU c t o u -> Bool # | |
| (Pretty (RegexResult o u), Pretty (RegexAtom c t o u), Pretty (𝑃 (Regex c t o u)), Pretty (𝐿 (Regex c t o u)), Pretty (Regex c t o u)) => Pretty (RegexU c t o u) Source # | |
data RegexAtom c t (o :: k) (u :: k1) Source #
Instances
| (Show t, Show c) => Show (RegexAtom c t o u) Source # | |
| (Eq t, Eq c) => Eq (RegexAtom c t o u) Source # | |
| (Ord t, Ord c) => Ord (RegexAtom c t o u) Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: RegexAtom c t o u -> RegexAtom c t o u -> Ordering # (<) :: RegexAtom c t o u -> RegexAtom c t o u -> Bool # (<=) :: RegexAtom c t o u -> RegexAtom c t o u -> Bool # (>) :: RegexAtom c t o u -> RegexAtom c t o u -> Bool # (>=) :: RegexAtom c t o u -> RegexAtom c t o u -> Bool # max :: RegexAtom c t o u -> RegexAtom c t o u -> RegexAtom c t o u # min :: RegexAtom c t o u -> RegexAtom c t o u -> RegexAtom c t o u # | |
| (Pretty t, Pretty (𝑃 t), Pretty c) => Pretty (RegexAtom c t o u) Source # | |
retRegex :: (Ord c, Ord t, Ord o, Ord u, Zero u) => ℕ64 -> Formats -> 𝑂 o -> u -> Regex c t o u Source #
consEpsRegex :: (Ord c, Ord t, Ord o, Ord u, Plus u) => RegexResult o u -> Regex c t o u -> Regex c t o u Source #
consEpsRegexU :: (Ord c, Ord t, Ord o, Ord u, Plus u) => RegexResult o u -> RegexU c t o u -> RegexU c t o u Source #
snocEpsRegex :: (Ord c, Ord t, Ord o, Ord u, Plus u) => RegexResult o u -> Regex c t o u -> Regex c t o u Source #
snocEpsRegexU :: (Ord c, Ord t, Ord o, Ord u, Plus u) => RegexResult o u -> RegexU c t o u -> RegexU c t o u Source #
sumRegex :: (Ord c, Ord t, Ord o, Ord u, Plus u) => Regex c t o u -> Regex c t o u -> Regex c t o u Source #
seqRegex :: (Ord c, Ord t, Ord o, Ord u, Additive u) => Regex c t o u -> Regex c t o u -> Regex c t o u Source #
derRegex :: (Ord c, Ord t, Classified c t, Ord o, Ord u, Additive u) => (t ∨ c) -> Regex c t o u -> Regex c t o u Source #
derRegexAtom :: (Ord c, Ord t, Classified c t, Ord o, Ord u, Additive u) => (t ∨ c) -> RegexAtom c t o u -> Regex c t o u Source #
derRegexSequence :: (Ord t, Ord c, Classified c t, Ord o, Ord u, Additive u) => (t ∨ c) -> 𝐿 (Regex c t o u) -> Regex c t o u Source #
regexLitsAtom :: forall {k1} {k2} t c (o :: k1) (u :: k2). Ord t => RegexAtom c t o u -> 𝑃 t Source #
data RegexState c t o u Source #
Constructors
| RegexState | |
Fields
| |
regexStateNextIDL :: RegexState c t o u ⟢ ℕ64 Source #
regexStateMapL :: RegexState c t o u ⟢ (Regex c t o u ⇰ ℕ64) Source #
regexStateTransitionsL :: RegexState c t o u ⟢ ((t ∨ c) ⇰ (ℕ64 ⇰ ℕ64)) Source #
regexStateResultsL :: RegexState c t o u ⟢ (ℕ64 ⇰ 𝑂 (RegexResult o u)) Source #
regexStateDeadL :: RegexState c t o u ⟢ (ℕ64 ⇰ 𝔹) Source #
regexState₀ :: RegexState c t o u Source #
Constructors
| DFA | |
compileRegex :: forall c t o u. (Pretty t, Pretty o, Pretty u, Ord c, Ord t, Classified c t, All c, Ord o, Ord u, Additive u) => Regex c t o u -> DFA c t o u Source #
data LexDFAState t Source #
Constructors
| LexDFAState | |
Fields
| |
Instances
| (Pretty (WindowR Doc Doc), Pretty ParserContext, Pretty (𝑆 (ParserToken t)), Pretty (𝐼C t)) => Pretty (LexDFAState t) Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods pretty :: LexDFAState t -> Doc Source # | |
Constructors
| Lexer | |
Fields
| |
tokenize :: forall c t o u w. (Show u, Ord c, Ord t, Pretty t, Classified c t, Eq o, Eq u, Plus u) => Lexer c t o u w -> 𝕊 -> 𝕍 (ParserToken t) -> Doc ∨ 𝕍 (PreParserToken w) Source #
tokenizeFIO :: forall c t o u w w'. (Show u, Ord c, Ord t, Pretty t, Classified c t, Eq o, Eq u, Plus u) => Lexer c t o u w -> 𝕊 -> (𝕍 (PreParserToken w) -> 𝕍 (PreParserToken w')) -> 𝕍 (ParserToken t) -> IO (𝕍 (ParserToken w')) Source #
tokenizeIO :: forall c t o u w. (Show u, Ord c, Ord t, Pretty t, Classified c t, Eq o, Eq u, Plus u) => Lexer c t o u w -> 𝕊 -> 𝕍 (ParserToken t) -> IO (𝕍 (ParserToken w)) Source #
tokenizeFIOMain :: forall c t o u w w'. (Show u, Ord c, Ord t, Pretty t, Classified c t, Eq o, Eq u, Plus u, Pretty w') => Lexer c t o u w -> 𝕊 -> (𝕍 (PreParserToken w) -> 𝕍 (PreParserToken w')) -> 𝕍 (ParserToken t) -> IO () Source #
tokenizeIOMain :: forall c t o u w. (Show u, Ord c, Ord t, Pretty t, Classified c t, Eq o, Eq u, Plus u, Pretty w) => Lexer c t o u w -> 𝕊 -> 𝕍 (ParserToken t) -> IO () Source #
Constructors
| LetterClass | |
| NumberClass | |
| SpaceClass | |
| NewlineClass | |
| OtherClass |
Instances
| Show CharClass Source # | |
| Eq CharClass Source # | |
| Ord CharClass Source # | |
| All CharClass Source # | |
| Pretty CharClass Source # | |
| Classified CharClass ℂ Source # | |
data TokenClassBasic Source #
Constructors
| SpaceCBasic | |
| CommentCBasic | |
| SyntaxCBasic | |
| StringCBasic | |
| NameCBasic | |
| NaturalCBasic | |
| IntegerCBasic | |
| DoubleCBasic | |
| CharCBasic |
Instances
| Show TokenClassBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods showsPrec :: Int -> TokenClassBasic -> ShowS # show :: TokenClassBasic -> String # showList :: [TokenClassBasic] -> ShowS # | |
| Eq TokenClassBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods (==) :: TokenClassBasic -> TokenClassBasic -> Bool # (/=) :: TokenClassBasic -> TokenClassBasic -> Bool # | |
| Ord TokenClassBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: TokenClassBasic -> TokenClassBasic -> Ordering # (<) :: TokenClassBasic -> TokenClassBasic -> Bool # (<=) :: TokenClassBasic -> TokenClassBasic -> Bool # (>) :: TokenClassBasic -> TokenClassBasic -> Bool # (>=) :: TokenClassBasic -> TokenClassBasic -> Bool # max :: TokenClassBasic -> TokenClassBasic -> TokenClassBasic # min :: TokenClassBasic -> TokenClassBasic -> TokenClassBasic # | |
| Pretty TokenClassBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods pretty :: TokenClassBasic -> Doc Source # | |
spaceCBasicL :: TokenClassBasic ⌲ () Source #
commentCBasicL :: TokenClassBasic ⌲ () Source #
syntaxCBasicL :: TokenClassBasic ⌲ () Source #
stringCBasicL :: TokenClassBasic ⌲ () Source #
nameCBasicL :: TokenClassBasic ⌲ () Source #
naturalCBasicL :: TokenClassBasic ⌲ () Source #
integerCBasicL :: TokenClassBasic ⌲ () Source #
doubleCBasicL :: TokenClassBasic ⌲ () Source #
charCBasicL :: TokenClassBasic ⌲ () Source #
data TokenBasic Source #
Constructors
| SpaceTBasic 𝕊 | |
| CommentTBasic 𝕊 | |
| SyntaxTBasic 𝕊 | |
| StringTBasic 𝕊 | |
| NameTBasic 𝕊 | |
| NaturalTBasic ℕ | |
| IntegerTBasic ℤ | |
| DoubleTBasic 𝔻 | |
| CharTBasic ℂ |
Instances
| Show TokenBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods showsPrec :: Int -> TokenBasic -> ShowS # show :: TokenBasic -> String # showList :: [TokenBasic] -> ShowS # | |
| Eq TokenBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| Ord TokenBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: TokenBasic -> TokenBasic -> Ordering # (<) :: TokenBasic -> TokenBasic -> Bool # (<=) :: TokenBasic -> TokenBasic -> Bool # (>) :: TokenBasic -> TokenBasic -> Bool # (>=) :: TokenBasic -> TokenBasic -> Bool # max :: TokenBasic -> TokenBasic -> TokenBasic # min :: TokenBasic -> TokenBasic -> TokenBasic # | |
| (Pretty 𝕊, Pretty ℕ, Pretty ℤ, Pretty 𝔻, Pretty ℂ) => Pretty TokenBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods pretty :: TokenBasic -> Doc Source # | |
spaceTBasicL :: TokenBasic ⌲ 𝕊 Source #
syntaxTBasicL :: TokenBasic ⌲ 𝕊 Source #
stringTBasicL :: TokenBasic ⌲ 𝕊 Source #
nameTBasicL :: TokenBasic ⌲ 𝕊 Source #
doubleTBasicL :: TokenBasic ⌲ 𝔻 Source #
charTBasicL :: TokenBasic ⌲ ℂ Source #
mkTokenBasic :: 𝐼C ℂ -> 𝑂 TokenClassBasic -> 𝔹 ∧ TokenBasic Source #
data LexerBasicSyntax Source #
Constructors
| LexerBasicSyntax | |
Fields
| |
Instances
lSyntaxBasic :: (Ord c, Ord u, Additive u) => LexerBasicSyntax -> Regex CharClass ℂ c u Source #
dfaBasic :: LexerBasicSyntax -> ℕ64 -> DFA CharClass ℂ TokenClassBasic ℕ64 Source #
blockifyTokens :: 𝐿 (AddBT Loc) -> (t -> 𝔹) -> (t -> 𝔹) -> (IndentCommand -> t) -> 𝕍 (PreParserToken t) -> 𝕍 (PreParserToken t) Source #
blockifyTokensTL :: (t -> 𝔹) -> (t -> 𝔹) -> (IndentCommand -> t) -> 𝕍 (PreParserToken t) -> 𝕍 (PreParserToken t) Source #
data TokenClassWSBasic Source #
Constructors
| SpaceCWSBasic | |
| NewlineCWSBasic | |
| CommentCWSBasic | |
| SyntaxCWSBasic | |
| BlockCWSBasic | |
| StringCWSBasic | |
| NameCWSBasic | |
| NaturalCWSBasic | |
| IntegerCWSBasic | |
| DoubleCWSBasic |
Instances
| Show TokenClassWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods showsPrec :: Int -> TokenClassWSBasic -> ShowS # show :: TokenClassWSBasic -> String # showList :: [TokenClassWSBasic] -> ShowS # | |
| Eq TokenClassWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods (==) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # (/=) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # | |
| Ord TokenClassWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: TokenClassWSBasic -> TokenClassWSBasic -> Ordering # (<) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # (<=) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # (>) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # (>=) :: TokenClassWSBasic -> TokenClassWSBasic -> Bool # max :: TokenClassWSBasic -> TokenClassWSBasic -> TokenClassWSBasic # min :: TokenClassWSBasic -> TokenClassWSBasic -> TokenClassWSBasic # | |
| Pretty TokenClassWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods pretty :: TokenClassWSBasic -> Doc Source # | |
spaceCWSBasicL :: TokenClassWSBasic ⌲ () Source #
syntaxCWSBasicL :: TokenClassWSBasic ⌲ () Source #
blockCWSBasicL :: TokenClassWSBasic ⌲ () Source #
stringCWSBasicL :: TokenClassWSBasic ⌲ () Source #
nameCWSBasicL :: TokenClassWSBasic ⌲ () Source #
doubleCWSBasicL :: TokenClassWSBasic ⌲ () Source #
data TokenWSBasic Source #
Constructors
Instances
| Show TokenWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods showsPrec :: Int -> TokenWSBasic -> ShowS # show :: TokenWSBasic -> String # showList :: [TokenWSBasic] -> ShowS # | |
| Eq TokenWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex | |
| Ord TokenWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods compare :: TokenWSBasic -> TokenWSBasic -> Ordering # (<) :: TokenWSBasic -> TokenWSBasic -> Bool # (<=) :: TokenWSBasic -> TokenWSBasic -> Bool # (>) :: TokenWSBasic -> TokenWSBasic -> Bool # (>=) :: TokenWSBasic -> TokenWSBasic -> Bool # max :: TokenWSBasic -> TokenWSBasic -> TokenWSBasic # min :: TokenWSBasic -> TokenWSBasic -> TokenWSBasic # | |
| (Pretty 𝕊, Pretty ℕ, Pretty ℤ, Pretty 𝔻) => Pretty TokenWSBasic Source # | |
Defined in UVMHS.Lib.Parser.Regex Methods pretty :: TokenWSBasic -> Doc Source # | |
openTWSBasicL :: TokenWSBasic ⌲ () Source #
closeTWSBasicL :: TokenWSBasic ⌲ () Source #
delimiterTWSBasicL :: TokenWSBasic ⌲ () Source #
mkTokenWSBasic :: 𝐼C ℂ -> 𝑂 TokenClassWSBasic -> 𝔹 ∧ TokenWSBasic Source #
dfaWSBasic :: LexerWSBasicSyntax -> ℕ64 -> DFA CharClass ℂ TokenClassWSBasic ℕ64 Source #
data LexerWSBasicSyntax Source #
Constructors
| LexerWSBasicSyntax | |
Fields
| |