| 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