| ghc-6.10.4: The GHC API | Contents | Index

StringBuffer

Contents

Creation/destruction
Inspection
Moving and comparison
Conversion
Parsing integers

Synopsis

data StringBuffer = StringBuffer {

buf :: !(ForeignPtr Word8)
len :: !Int
cur :: !Int

}

hGetStringBuffer :: FilePath -> IO StringBuffer
hGetStringBufferBlock :: Handle -> Int -> IO StringBuffer
appendStringBuffers :: StringBuffer -> StringBuffer -> IO StringBuffer
stringToStringBuffer :: String -> IO StringBuffer
nextChar :: StringBuffer -> (Char, StringBuffer)
currentChar :: StringBuffer -> Char
prevChar :: StringBuffer -> Char -> Char
atEnd :: StringBuffer -> Bool
stepOn :: StringBuffer -> StringBuffer
offsetBytes :: Int -> StringBuffer -> StringBuffer
byteDiff :: StringBuffer -> StringBuffer -> Int
lexemeToString :: StringBuffer -> Int -> String
lexemeToFastString :: StringBuffer -> Int -> FastString
parseUnsignedInteger :: StringBuffer -> Int -> Integer -> (Char -> Int) -> Integer

Documentation
data StringBuffer

A StringBuffer is an internal pointer to a sized chunk of bytes. The bytes are intended to be *immutable*. There are pure operations to read the contents of a StringBuffer. A StringBuffer may have a finalizer, depending on how it was obtained.
Constructors

StringBuffer |

buf :: !(ForeignPtr Word8) |
len :: !Int |
cur :: !Int |

Instances

Show StringBuffer

Creation/destruction
hGetStringBuffer :: FilePath -> IO StringBuffer
hGetStringBufferBlock :: Handle -> Int -> IO StringBuffer
appendStringBuffers :: StringBuffer -> StringBuffer -> IO StringBuffer
stringToStringBuffer :: String -> IO StringBuffer
Inspection
nextChar :: StringBuffer -> (Char, StringBuffer)
currentChar :: StringBuffer -> Char
prevChar :: StringBuffer -> Char -> Char
atEnd :: StringBuffer -> Bool
Moving and comparison
stepOn :: StringBuffer -> StringBuffer
offsetBytes :: Int -> StringBuffer -> StringBuffer
byteDiff :: StringBuffer -> StringBuffer -> Int
Conversion
lexemeToString :: StringBuffer -> Int -> String
lexemeToFastString :: StringBuffer -> Int -> FastString
Parsing integers
parseUnsignedInteger :: StringBuffer -> Int -> Integer -> (Char -> Int) -> Integer
XXX assumes ASCII digits only (by using byteOff)
Produced by Haddock version 2.4.2