License | BSD3 |
---|---|
Maintainer | cabal-devel@haskell.org |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Distribution.Fields.LexerMonad
Description
Synopsis
- type InputStream = ByteString
-
data
LexState
=
LexState
{
- curPos :: ! Position
- curInput :: ! InputStream
- curCode :: !StartCode
- warnings :: [ LexWarning ]
- data LexResult a = LexResult ! LexState a
- newtype Lex a = Lex { }
- execLexer :: Lex a -> InputStream -> ([ LexWarning ], a)
- getPos :: Lex Position
- setPos :: Position -> Lex ()
- adjustPos :: ( Position -> Position ) -> Lex ()
- getInput :: Lex InputStream
- setInput :: InputStream -> Lex ()
- getStartCode :: Lex Int
- setStartCode :: Int -> Lex ()
- data LexWarning = LexWarning ! LexWarningType ! Position
- data LexWarningType
- addWarning :: LexWarningType -> Lex ()
- toPWarnings :: [ LexWarning ] -> [ PWarning ]
Documentation
type InputStream = ByteString Source #
Constructors
LexState | |
Fields
|
execLexer :: Lex a -> InputStream -> ([ LexWarning ], a) Source #
Execute the given lexer on the supplied input stream.
setInput :: InputStream -> Lex () Source #
getStartCode :: Lex Int Source #
setStartCode :: Int -> Lex () Source #
data LexWarning Source #
Constructors
LexWarning ! LexWarningType ! Position |
Instances
Show LexWarning Source # | |
Defined in Distribution.Fields.LexerMonad |
data LexWarningType Source #
Constructors
LexWarningNBSP |
Encountered non breaking space |
LexWarningBOM |
BOM at the start of the cabal file |
LexWarningTab |
Leading tags |
Instances
Eq LexWarningType Source # | |
Defined in Distribution.Fields.LexerMonad Methods (==) :: LexWarningType -> LexWarningType -> Bool Source # (/=) :: LexWarningType -> LexWarningType -> Bool Source # |
|
Ord LexWarningType Source # | |
Defined in Distribution.Fields.LexerMonad Methods compare :: LexWarningType -> LexWarningType -> Ordering Source # (<) :: LexWarningType -> LexWarningType -> Bool Source # (<=) :: LexWarningType -> LexWarningType -> Bool Source # (>) :: LexWarningType -> LexWarningType -> Bool Source # (>=) :: LexWarningType -> LexWarningType -> Bool Source # max :: LexWarningType -> LexWarningType -> LexWarningType Source # min :: LexWarningType -> LexWarningType -> LexWarningType Source # |
|
Show LexWarningType Source # | |
Defined in Distribution.Fields.LexerMonad |
addWarning :: LexWarningType -> Lex () Source #
Add warning at the current position
toPWarnings :: [ LexWarning ] -> [ PWarning ] Source #