 | language-c-0.3.1.1: Analysis and generation of C code | Contents | Index |
|
| Language.C.Data.Position | | Portability | ghc | | Stability | experimental | | Maintainer | benedikt.huber@gmail.com |
|
|
|
| Description |
| Source code position
|
|
| Synopsis |
|
|
|
| Documentation |
|
| data Position |
| uniform representation of source file positions; the order of the arguments
is important as it leads to the desired ordering of source positions
| | Constructors | | Instances | |
|
|
| initPos :: FilePath -> Position |
| initialize a Position to the start of the translation unit starting in the given file
|
|
| posFile :: Position -> String |
| get the source file of the specified position. Fails unless isSourcePos pos.
|
|
| posRow :: Position -> Int |
| get the line number of the specified position. Fails unless isSourcePos pos
|
|
| posColumn :: Position -> Int |
| get the column of the specified position. Fails unless isSourcePos pos
|
|
| isSourcePos :: Position -> Bool |
| returns True if the given position refers to an actual source file
|
|
| nopos :: Position |
| no position (for unknown position information)
|
|
| isNoPos :: Position -> Bool |
|
| builtinPos :: Position |
| position attached to built-in objects
|
|
| isBuiltinPos :: Position -> Bool |
| returns True if the given position refers to a builtin definition
|
|
| internalPos :: Position |
| position used for internal errors
|
|
| isInternalPos :: Position -> Bool |
| returns True if the given position is internal
|
|
| incPos :: Position -> Int -> Position |
| advance column
|
|
| tabPos :: Position -> Position |
| advance column to next tab positions (tabs are considered to be at every 8th column)
|
|
| retPos :: Position -> Position |
| advance to next line
|
|
| adjustPos :: FilePath -> Int -> Position -> Position |
| adjust position: change file and line number, reseting column to 1. This is usually
used for #LINE pragmas.
|
|
| class Pos a where |
| class of type which aggregate a source code location
| | | Methods | | | Instances | |
|
|
| Produced by Haddock version 2.7.2 |