| Copyright | (c) 2008 Benedikt Huber |
|---|---|
| License | BSD-style |
| Maintainer | benedikt.huber@gmail.com |
| Stability | experimental |
| Portability | ghc |
| Safe Haskell | None |
| Language | Haskell2010 |
Language.C.Data
Description
Common data types for Language.C: Identifiers, unique names, source code locations, ast node attributes and extensible errors.
Synopsis
- module Language.C.Data.InputStream
- data SUERef
- isAnonymousRef :: SUERef -> Bool
- sueRefToString :: SUERef -> String
- data Ident
- mkIdent :: Position -> String -> Name -> Ident
- identToString :: Ident -> String
- internalIdent :: String -> Ident
- isInternalIdent :: Ident -> Bool
- builtinIdent :: String -> Ident
- newtype Name = Name {}
- newNameSupply :: [Name]
- data Position
- posFile :: Position -> String
- posParent :: Position -> Maybe Position
- class Pos a where
- initPos :: FilePath -> Position
- nopos :: Position
- builtinPos :: Position
- internalPos :: Position
- isSourcePos :: Position -> Bool
- isBuiltinPos :: Position -> Bool
- isInternalPos :: Position -> Bool
- data NodeInfo
- class CNode a where
- fileOfNode :: CNode a => a -> Maybe FilePath
- posOfNode :: NodeInfo -> Position
- nameOfNode :: NodeInfo -> Maybe Name
- undefNode :: NodeInfo
- mkNodeInfoOnlyPos :: Position -> NodeInfo
- mkNodeInfo :: Position -> Name -> NodeInfo
- internalNode :: NodeInfo
- module Language.C.Data.Error
Input stream
module Language.C.Data.InputStream
Identifiers
References uniquely determining a struct, union or enum type. Those are either identified by an string identifier, or by a unique name (anonymous types).
Constructors
| AnonymousRef Name | |
| NamedRef Ident |
Instances
| NFData SUERef Source # | |||||
Defined in Language.C.Data.Ident | |||||
| Data SUERef Source # | |||||
Defined in Language.C.Data.Ident Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SUERef -> c SUERef Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SUERef Source # toConstr :: SUERef -> Constr Source # dataTypeOf :: SUERef -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SUERef) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SUERef) Source # gmapT :: (forall b. Data b => b -> b) -> SUERef -> SUERef Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SUERef -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SUERef -> r Source # gmapQ :: (forall d. Data d => d -> u) -> SUERef -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> SUERef -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> SUERef -> m SUERef Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SUERef -> m SUERef Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SUERef -> m SUERef Source # | |||||
| Generic SUERef Source # | |||||
Defined in Language.C.Data.Ident Associated Types
| |||||
| Show SUERef Source # | |||||
| Eq SUERef Source # | |||||
| Ord SUERef Source # | |||||
| Pretty SUERef Source # | |||||
| type Rep SUERef Source # | |||||
Defined in Language.C.Data.Ident type Rep SUERef = D1 ('MetaData "SUERef" "Language.C.Data.Ident" "language-c-0.10.1-37V6ch7t6hRLni4qmyi0iL" 'False) (C1 ('MetaCons "AnonymousRef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :+: C1 ('MetaCons "NamedRef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident))) | |||||
isAnonymousRef :: SUERef -> Bool Source #
Return true if the struct/union/enum reference is anonymous.
sueRefToString :: SUERef -> String Source #
string of a SUE ref (empty if anonymous)
C identifiers
Instances
mkIdent :: Position -> String -> Name -> Ident Source #
build an identifier from a string.
- only minimal error checking, e.g., the characters of the identifier are not checked for being alphanumerical only; the correct lexis of the identifier should be ensured by the caller, e.g., the scanner.
- for reasons of simplicity the complete lexeme is hashed.
identToString :: Ident -> String Source #
string of an identifier
internalIdent :: String -> Ident Source #
returns an internal identifier (has internal position and no unique name)
isInternalIdent :: Ident -> Bool Source #
return True if the given identifier is internal
builtinIdent :: String -> Ident Source #
returns a builtin identifier (has builtin position and no unique name)
Unqiue names
Name is a unique identifier
Instances
| NFData Name Source # | |||||
Defined in Language.C.Data.Name | |||||
| Data Name Source # | |||||
Defined in Language.C.Data.Name Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Name -> c Name Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Name Source # toConstr :: Name -> Constr Source # dataTypeOf :: Name -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Name) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Name) Source # gmapT :: (forall b. Data b => b -> b) -> Name -> Name Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r Source # gmapQ :: (forall d. Data d => d -> u) -> Name -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> Name -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Name -> m Name Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name Source # | |||||
| Enum Name Source # | |||||
| Generic Name Source # | |||||
Defined in Language.C.Data.Name Associated Types
| |||||
| Ix Name Source # | |||||
Defined in Language.C.Data.Name | |||||
| Read Name Source # | |||||
| Show Name Source # | |||||
| Eq Name Source # | |||||
| Ord Name Source # | |||||
Defined in Language.C.Data.Name | |||||
| type Rep Name Source # | |||||
Defined in Language.C.Data.Name | |||||
newNameSupply :: [Name] Source #
return an infinite stream of Names starting with nameId 0
Source code positions
uniform representation of source file positions
Instances
| NFData Position Source # | |
Defined in Language.C.Data.Position | |
| Data Position Source # | |
Defined in Language.C.Data.Position Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Position -> c Position Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Position Source # toConstr :: Position -> Constr Source # dataTypeOf :: Position -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Position) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Position) Source # gmapT :: (forall b. Data b => b -> b) -> Position -> Position Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Position -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Position -> r Source # gmapQ :: (forall d. Data d => d -> u) -> Position -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> Position -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Position -> m Position Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Position -> m Position Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Position -> m Position Source # | |
| Generic Position Source # | |
| Show Position Source # | |
| Eq Position Source # | |
| Ord Position Source # | |
Defined in Language.C.Data.Position | |
| type Rep Position Source # | |
Defined in Language.C.Data.Position | |
class of type which aggregate a source code location
Instances
| Pos Attr Source # | |
| Pos CompType Source # | |
| Pos CompTypeRef Source # | |
Defined in Language.C.Analysis.SemRep Methods posOf :: CompTypeRef -> Position Source # | |
| Pos Decl Source # | |
| Pos DeclEvent Source # | |
| Pos EnumType Source # | |
| Pos EnumTypeRef Source # | |
Defined in Language.C.Analysis.SemRep Methods posOf :: EnumTypeRef -> Position Source # | |
| Pos Enumerator Source # | |
Defined in Language.C.Analysis.SemRep Methods posOf :: Enumerator -> Position Source # | |
| Pos FunDef Source # | |
| Pos IdentDecl Source # | |
| Pos MemberDecl Source # | |
Defined in Language.C.Analysis.SemRep Methods posOf :: MemberDecl -> Position Source # | |
| Pos ObjDef Source # | |
| Pos ParamDecl Source # | |
| Pos TagDef Source # | |
| Pos TypeDef Source # | |
| Pos TypeDefRef Source # | |
Defined in Language.C.Analysis.SemRep Methods posOf :: TypeDefRef -> Position Source # | |
| Pos Ident Source # | |
| Pos NodeInfo Source # | |
| CNode t1 => Pos (CAlignmentSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CAlignmentSpecifier t1 -> Position Source # | |
| CNode t1 => Pos (CAssemblyOperand t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CAssemblyOperand t1 -> Position Source # | |
| CNode t1 => Pos (CAssemblyStatement t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CAssemblyStatement t1 -> Position Source # | |
| CNode t1 => Pos (CAttribute t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CAttribute t1 -> Position Source # | |
| CNode t1 => Pos (CBuiltinThing t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CBuiltinThing t1 -> Position Source # | |
| CNode t1 => Pos (CCompoundBlockItem t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CCompoundBlockItem t1 -> Position Source # | |
| CNode t1 => Pos (CConstant t1) Source # | |
| CNode t1 => Pos (CDeclaration t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CDeclaration t1 -> Position Source # | |
| CNode t1 => Pos (CDeclarationSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CDeclarationSpecifier t1 -> Position Source # | |
| CNode t1 => Pos (CDeclarator t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CDeclarator t1 -> Position Source # | |
| CNode t1 => Pos (CDerivedDeclarator t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CDerivedDeclarator t1 -> Position Source # | |
| CNode t1 => Pos (CEnumeration t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CEnumeration t1 -> Position Source # | |
| CNode t1 => Pos (CExpression t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CExpression t1 -> Position Source # | |
| CNode t1 => Pos (CExternalDeclaration t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CExternalDeclaration t1 -> Position Source # | |
| CNode t1 => Pos (CFunctionDef t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CFunctionDef t1 -> Position Source # | |
| CNode t1 => Pos (CFunctionSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CFunctionSpecifier t1 -> Position Source # | |
| CNode t1 => Pos (CInitializer t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CInitializer t1 -> Position Source # | |
| CNode t1 => Pos (CPartDesignator t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CPartDesignator t1 -> Position Source # | |
| CNode t1 => Pos (CStatement t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CStatement t1 -> Position Source # | |
| CNode t1 => Pos (CStorageSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CStorageSpecifier t1 -> Position Source # | |
| CNode t1 => Pos (CStringLiteral t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CStringLiteral t1 -> Position Source # | |
| CNode t1 => Pos (CStructureUnion t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CStructureUnion t1 -> Position Source # | |
| CNode t1 => Pos (CTranslationUnit t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CTranslationUnit t1 -> Position Source # | |
| CNode t1 => Pos (CTypeQualifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CTypeQualifier t1 -> Position Source # | |
| CNode t1 => Pos (CTypeSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods posOf :: CTypeSpecifier t1 -> Position Source # | |
| Pos a => Pos [a] Source # | |
Defined in Language.C.Parser.Parser | |
initPos :: FilePath -> Position Source #
initialize a Position to the start of the translation unit starting in the given file
builtinPos :: Position Source #
position attached to built-in objects
internalPos :: Position Source #
position used for internal errors
isSourcePos :: Position -> Bool Source #
returns True if the given position refers to an actual source file
isBuiltinPos :: Position -> Bool Source #
returns True if the given position refers to a builtin definition
isInternalPos :: Position -> Bool Source #
returns True if the given position is internal
Syntax tree nodes
Parsed entity attribute
Instances
| NFData NodeInfo Source # | |||||
Defined in Language.C.Data.Node | |||||
| Data NodeInfo Source # | |||||
Defined in Language.C.Data.Node Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NodeInfo -> c NodeInfo Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NodeInfo Source # toConstr :: NodeInfo -> Constr Source # dataTypeOf :: NodeInfo -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NodeInfo) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NodeInfo) Source # gmapT :: (forall b. Data b => b -> b) -> NodeInfo -> NodeInfo Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NodeInfo -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NodeInfo -> r Source # gmapQ :: (forall d. Data d => d -> u) -> NodeInfo -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> NodeInfo -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> NodeInfo -> m NodeInfo Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NodeInfo -> m NodeInfo Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NodeInfo -> m NodeInfo Source # | |||||
| Generic NodeInfo Source # | |||||
Defined in Language.C.Data.Node Associated Types
| |||||
| Show NodeInfo Source # | |||||
| Eq NodeInfo Source # | |||||
| Ord NodeInfo Source # | |||||
Defined in Language.C.Data.Node | |||||
| CNode NodeInfo Source # | |||||
| Pos NodeInfo Source # | |||||
| Pretty CAlignSpec Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CArrSize Source # | |||||
| Pretty CAsmOperand Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CAsmStmt Source # | |||||
| Pretty CAttr Source # | |||||
| Pretty CBlockItem Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CBuiltin Source # | |||||
| Pretty CConst Source # | |||||
| Pretty CDecl Source # | |||||
| Pretty CDeclSpec Source # | |||||
| Pretty CDeclr Source # | |||||
| Pretty CDesignator Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CEnum Source # | |||||
| Pretty CExpr Source # | |||||
| Pretty CExtDecl Source # | |||||
| Pretty CFunDef Source # | |||||
| Pretty CFunSpec Source # | |||||
| Pretty CInit Source # | |||||
| Pretty CStat Source # | |||||
| Pretty CStorageSpec Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CStrLit Source # | |||||
| Pretty CStructUnion Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CTranslUnit Source # | |||||
Defined in Language.C.Pretty | |||||
| Pretty CTypeQual Source # | |||||
| Pretty CTypeSpec Source # | |||||
| type Rep NodeInfo Source # | |||||
Defined in Language.C.Data.Node type Rep NodeInfo = D1 ('MetaData "NodeInfo" "Language.C.Data.Node" "language-c-0.10.1-37V6ch7t6hRLni4qmyi0iL" 'False) (C1 ('MetaCons "OnlyPos" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Position) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 PosLength)) :+: C1 ('MetaCons "NodeInfo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Position) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 PosLength) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)))) | |||||
a class for convenient access to the attributes of an attributed object
Instances
| CNode TagFwdDecl Source # | |
Defined in Language.C.Analysis.DefTable Methods nodeInfo :: TagFwdDecl -> NodeInfo Source # | |
| CNode Attr Source # | |
| CNode CompType Source # | |
| CNode CompTypeRef Source # | |
Defined in Language.C.Analysis.SemRep Methods nodeInfo :: CompTypeRef -> NodeInfo Source # | |
| CNode Decl Source # | |
| CNode DeclEvent Source # | |
| CNode EnumType Source # | |
| CNode EnumTypeRef Source # | |
Defined in Language.C.Analysis.SemRep Methods nodeInfo :: EnumTypeRef -> NodeInfo Source # | |
| CNode Enumerator Source # | |
Defined in Language.C.Analysis.SemRep Methods nodeInfo :: Enumerator -> NodeInfo Source # | |
| CNode FunDef Source # | |
| CNode IdentDecl Source # | |
| CNode MemberDecl Source # | |
Defined in Language.C.Analysis.SemRep Methods nodeInfo :: MemberDecl -> NodeInfo Source # | |
| CNode ObjDef Source # | |
| CNode ParamDecl Source # | |
| CNode TagDef Source # | |
| CNode TypeDef Source # | |
| CNode TypeDefRef Source # | |
Defined in Language.C.Analysis.SemRep Methods nodeInfo :: TypeDefRef -> NodeInfo Source # | |
| CNode Ident Source # | |
| CNode NodeInfo Source # | |
| CNode t1 => CNode (CAlignmentSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CAlignmentSpecifier t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CAssemblyOperand t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CAssemblyOperand t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CAssemblyStatement t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CAssemblyStatement t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CAttribute t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CAttribute t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CBuiltinThing t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CBuiltinThing t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CCompoundBlockItem t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CCompoundBlockItem t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CConstant t1) Source # | |
| CNode t1 => CNode (CDeclaration t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CDeclaration t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CDeclarationSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CDeclarationSpecifier t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CDeclarator t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CDeclarator t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CDerivedDeclarator t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CDerivedDeclarator t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CEnumeration t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CEnumeration t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CExpression t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CExpression t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CExternalDeclaration t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CExternalDeclaration t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CFunctionDef t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CFunctionDef t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CFunctionSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CFunctionSpecifier t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CInitializer t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CInitializer t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CPartDesignator t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CPartDesignator t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CStatement t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CStatement t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CStorageSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CStorageSpecifier t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CStringLiteral t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CStringLiteral t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CStructureUnion t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CStructureUnion t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CTranslationUnit t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CTranslationUnit t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CTypeQualifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CTypeQualifier t1 -> NodeInfo Source # | |
| CNode t1 => CNode (CTypeSpecifier t1) Source # | |
Defined in Language.C.Syntax.AST Methods nodeInfo :: CTypeSpecifier t1 -> NodeInfo Source # | |
| (CNode a, CNode b) => CNode (Either a b) Source # | |
mkNodeInfoOnlyPos :: Position -> NodeInfo Source #
| Given only a source position, create a new node attribute
mkNodeInfo :: Position -> Name -> NodeInfo Source #
Given a source position and a unique name, create a new attribute identifier
internalNode :: NodeInfo Source #
Deprecated: use undefNode instead
Extensible errors
module Language.C.Data.Error