language-c-0.8.2: Analysis and generation of C code

Copyright(c) 20082011 Benedikt Huber
LicenseBSD-style
Maintainerbenedikt.huber@gmail.com
Stabilityexperimental
Portabilityghc
Safe HaskellNone
LanguageHaskell98

Language.C.Data.InputStream

Description

Compile time input abstraction for the parser, relying on ByteString. The String interface only supports Latin-1 since alex-3, as alex now requires byte based access to the input stream.

Synopsis

Documentation

takeByte :: InputStream -> (Word8, InputStream) #

(b,is') = takeByte is reads and removes the first byte b from the InputStream is

takeChar :: InputStream -> (Char, InputStream) #

(c,is') = takeChar is reads and removes the first character c from the InputStream is

inputStreamEmpty :: InputStream -> Bool #

return True if the given input stream is empty

takeChars :: Int -> InputStream -> [Char] #

str = takeChars n is returns the first n characters of the given input stream, without removing them

countLines :: InputStream -> Int #

countLines returns the number of text lines in the given InputStream