Copyright | (c) Christian Maeder and Uni Bremen 2002-2005 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
- positions from Text.ParserCombinators.Parsec.Pos starting at (1,1)
- ParsecCombinator extension
- casl words
- casl escape chars for quoted chars and literal strings
- chars for quoted chars and literal strings
- digit, number, fraction, float
- skip whitespaces and nested comment out
- keywords WORDS or NO-BRACKET-SIGNS
- lexical tokens with position
- some separator parsers
Scanner for Casl tokens using Parsec http://www.cs.uu.nl/~daan/parsec.html according to chapter II.4 (Lexical Symbols) of the CASL reference manual
Synopsis
- isSignChar :: Char -> Bool
- semis :: CharParser st String
- scanAnySigns :: CharParser st String
- caslLetters :: Char -> Bool
- caslLetter :: CharParser st Char
- scanLPD :: CharParser st Char
- lookaheadPosition :: String
- myLookAhead :: GenParser tok st a -> GenParser tok st a
- followedWith :: GenParser tok st a -> GenParser tok st b -> GenParser tok st a
- checkWithUsing :: (a -> String) -> GenParser tok st a -> (a -> Bool) -> GenParser tok st a
- checkWith :: Show a => GenParser tok st a -> (a -> Bool) -> GenParser tok st a
- separatedBy :: GenParser tok st a -> GenParser tok st b -> GenParser tok st ([a], [b])
- scanLetterWord :: CharParser st String
- singleUnderline :: CharParser st Char
- scanUnderlineWord :: CharParser st String
- scanAnyWords :: CharParser st String
- scanDot :: CharParser st Char
- scanDotWords :: CharParser st String
- value :: Int -> String -> Int
- digits :: Int -> Int -> Int
- valueCheck :: Int -> String -> Bool
- simpleEscape :: CharParser st String
- decEscape :: CharParser st String
- hexEscape :: CharParser st String
- octEscape :: CharParser st String
- escapeChar :: CharParser st String
- printable :: CharParser st String
- caslChar :: CharParser st String
- scanQuotedChar :: CharParser st String
- scanString :: CharParser st String
- isString :: Token -> Bool
- parseString :: CharParser () a -> String -> a
- splitString :: CharParser () a -> String -> (a, String)
- getNumber :: CharParser st String
- getSignedNumber :: CharParser st String
- scanFloat :: CharParser st String
- scanFloatExt :: CharParser st String
- scanDigit :: CharParser st String
- isNumber :: Token -> Bool
- isFloating :: Token -> Bool
- nestCommentOut :: CharParser st ()
- skip :: CharParser st ()
- fromSourcePos :: SourcePos -> Pos
- getPos :: GenParser tok st Pos
- skipSmart :: CharParser st ()
- keyWord :: CharParser st a -> CharParser st a
- keySign :: CharParser st a -> CharParser st a
- parseToken :: CharParser st String -> CharParser st Token
- pToken :: CharParser st String -> CharParser st Token
- pluralKeyword :: String -> CharParser st Token
- toKey :: String -> CharParser st String
- asSeparator :: String -> CharParser st Token
- commaT :: CharParser st Token
- semiT :: CharParser st Token
- oBraceT :: CharParser st Token
- cBraceT :: CharParser st Token
- oBracketT :: CharParser st Token
- cBracketT :: CharParser st Token
- oParenT :: CharParser st Token
- cParenT :: CharParser st Token
- braces :: CharParser st a -> CharParser st a
- brackets :: CharParser st a -> CharParser st a
- parens :: CharParser st a -> CharParser st a
- commaSep1 :: CharParser st a -> CharParser st [a]
- placeS :: CharParser st String
- placeT :: CharParser st Token
- notFollowedWith :: GenParser tok st a -> GenParser tok st b -> GenParser tok st a
positions from Text.ParserCombinators.Parsec.Pos starting at (1,1)
isSignChar :: Char -> Bool Source #
no-bracket-signs (excluding mu!)
scanAnySigns :: CharParser st String Source #
caslLetters :: Char -> Bool Source #
casl letters (all isAlpha including feminine and masculine ordinal and mu)
caslLetter :: CharParser st Char Source #
ParsecCombinator extension
lookaheadPosition :: String Source #
myLookAhead :: GenParser tok st a -> GenParser tok st a Source #
followedWith :: GenParser tok st a -> GenParser tok st b -> GenParser tok st a Source #
checkWithUsing :: (a -> String) -> GenParser tok st a -> (a -> Bool) -> GenParser tok st a Source #
separatedBy :: GenParser tok st a -> GenParser tok st b -> GenParser tok st ([a], [b]) Source #
casl words
scanLetterWord :: CharParser st String Source #
singleUnderline :: CharParser st Char Source #
scanUnderlineWord :: CharParser st String Source #
scanAnyWords :: CharParser st String Source #
scanDotWords :: CharParser st String Source #
casl escape chars for quoted chars and literal strings
valueCheck :: Int -> String -> Bool Source #
simpleEscape :: CharParser st String Source #
escapeChar :: CharParser st String Source #
chars for quoted chars and literal strings
scanQuotedChar :: CharParser st String Source #
scanString :: CharParser st String Source #
parseString :: CharParser () a -> String -> a Source #
splitString :: CharParser () a -> String -> (a, String) Source #
digit, number, fraction, float
getSignedNumber :: CharParser st String Source #
scanFloatExt :: CharParser st String Source #
In addition to scanFloat, also '1.', '.1' and '2.e-13' are recognized
as well as preceding signs +-
.
isFloating :: Token -> Bool Source #
skip whitespaces and nested comment out
nestCommentOut :: CharParser st () Source #
fromSourcePos :: SourcePos -> Pos Source #
keywords WORDS or NO-BRACKET-SIGNS
lexical tokens with position
parseToken :: CharParser st String -> CharParser st Token Source #
pluralKeyword :: String -> CharParser st Token Source #
some separator parsers
asSeparator :: String -> CharParser st Token Source #
notFollowedWith :: GenParser tok st a -> GenParser tok st b -> GenParser tok st a Source #