| language-c-0.3.1.1: Analysis and generation of C code | Contents | Index

Language.C.Data.Node

Portability | ghc
Stability | experimental
Maintainer | benedikt.huber@gmail.com

Description
source position and unqiue name
Synopsis

data NodeInfo

= OnlyPos Position
| NodeInfo Position Name

internalNode :: NodeInfo
mkNodeInfoOnlyPos :: Position -> NodeInfo
mkNodeInfo :: Position -> Name -> NodeInfo
class CNode a where

nodeInfo :: a -> NodeInfo

fileOfNode :: CNode a => a -> FilePath
posOfNode :: NodeInfo -> Position
nameOfNode :: NodeInfo -> Maybe Name
eqByName :: CNode a => a -> a -> Bool

Documentation
data NodeInfo

Parsed entity attribute
Constructors

OnlyPos Position |
NodeInfo Position Name |

Instances

Eq NodeInfo |
Data NodeInfo |
Ord NodeInfo |
Read NodeInfo |
Show NodeInfo |
Typeable NodeInfo |
Pos NodeInfo |
CNode NodeInfo |

internalNode :: NodeInfo
mkNodeInfoOnlyPos :: Position -> NodeInfo
Given only a source position, create a new attribute identifier
mkNodeInfo :: Position -> Name -> NodeInfo
Given a source position and a unique name, create a new attribute identifier
class CNode a where

a class for convenient access to the attributes of an attributed object
Methods

nodeInfo :: a -> NodeInfo

Instances

CNode NodeInfo |
CNode Ident |
CNode CStrLit |
CNode CConst |
CNode CBuiltin |
CNode CExpr |
CNode CAttr |
CNode CDesignator |
CNode CInit |
CNode CEnum |
CNode CStructUnion |
CNode CTypeQual |
CNode CTypeSpec |
CNode CStorageSpec |
CNode CDeclSpec |
CNode CBlockItem |
CNode CAsmOperand |
CNode CAsmStmt |
CNode CStat |
CNode CDerivedDeclr |
CNode CDeclr |
CNode CDecl |
CNode CFunDef |
CNode CExtDecl |
CNode CTranslUnit |
CNode Attr |
CNode Enumerator |
CNode EnumType |
CNode CompType |
CNode EnumTypeRef |
CNode CompTypeRef |
CNode TypeDefRef |
CNode TypeDef |
CNode MemberDecl |
CNode ParamDecl |
CNode FunDef |
CNode ObjDef |
CNode Decl |
CNode DeclEvent |
CNode IdentDecl |
CNode TagDef |
CNode TagFwdDecl |
(CNode a, CNode b) => CNode (Either a b) |

fileOfNode :: CNode a => a -> FilePath
posOfNode :: NodeInfo -> Position
nameOfNode :: NodeInfo -> Maybe Name
eqByName :: CNode a => a -> a -> Bool
equality by name
Produced by Haddock version 2.7.2