llvm-hs-pure-7.0.0: Pure Haskell LLVM functionality (no FFI).

Safe HaskellSafe
LanguageHaskell2010

LLVM.AST.Global

Description

Globals - top-level values in Modules - and supporting structures.

Synopsis

Documentation

data Global Source #

Instances
Eq Global Source # 
Instance details

Defined in LLVM.AST.Global

Methods

(==) :: Global -> Global -> Bool #

(/=) :: Global -> Global -> Bool #

Data Global Source # 
Instance details

Defined in LLVM.AST.Global

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Global -> c Global #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Global #

toConstr :: Global -> Constr #

dataTypeOf :: Global -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Global) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Global) #

gmapT :: (forall b. Data b => b -> b) -> Global -> Global #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Global -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Global -> r #

gmapQ :: (forall d. Data d => d -> u) -> Global -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Global -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Global -> m Global #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Global -> m Global #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Global -> m Global #

Read Global Source # 
Instance details

Defined in LLVM.AST.Global

Show Global Source # 
Instance details

Defined in LLVM.AST.Global

Generic Global Source # 
Instance details

Defined in LLVM.AST.Global

Associated Types

type Rep Global :: * -> * #

Methods

from :: Global -> Rep Global x #

to :: Rep Global x -> Global #

Typed Global Source # 
Instance details

Defined in LLVM.AST.Typed

Methods

typeOf :: Global -> Type Source #

type Rep Global Source # 
Instance details

Defined in LLVM.AST.Global

type Rep Global = D1 (MetaData "Global" "LLVM.AST.Global" "llvm-hs-pure-7.0.0-inplace" False) (C1 (MetaCons "GlobalVariable" PrefixI True) (((S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Name) :*: (S1 (MetaSel (Just "linkage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Linkage) :*: S1 (MetaSel (Just "visibility") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Visibility))) :*: ((S1 (MetaSel (Just "dllStorageClass") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe StorageClass)) :*: S1 (MetaSel (Just "threadLocalMode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Model))) :*: (S1 (MetaSel (Just "unnamedAddr") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe UnnamedAddr)) :*: S1 (MetaSel (Just "isConstant") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool)))) :*: ((S1 (MetaSel (Just "type'") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type) :*: (S1 (MetaSel (Just "addrSpace") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 AddrSpace) :*: S1 (MetaSel (Just "initializer") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Constant)))) :*: ((S1 (MetaSel (Just "section") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe ShortByteString)) :*: S1 (MetaSel (Just "comdat") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe ShortByteString))) :*: (S1 (MetaSel (Just "alignment") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word32) :*: S1 (MetaSel (Just "metadata") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [(ShortByteString, MDRef MDNode)]))))) :+: (C1 (MetaCons "GlobalAlias" PrefixI True) (((S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Name) :*: S1 (MetaSel (Just "linkage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Linkage)) :*: (S1 (MetaSel (Just "visibility") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Visibility) :*: S1 (MetaSel (Just "dllStorageClass") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe StorageClass)))) :*: ((S1 (MetaSel (Just "threadLocalMode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Model)) :*: S1 (MetaSel (Just "unnamedAddr") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe UnnamedAddr))) :*: (S1 (MetaSel (Just "type'") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type) :*: (S1 (MetaSel (Just "addrSpace") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 AddrSpace) :*: S1 (MetaSel (Just "aliasee") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Constant))))) :+: C1 (MetaCons "Function" PrefixI True) ((((S1 (MetaSel (Just "linkage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Linkage) :*: S1 (MetaSel (Just "visibility") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Visibility)) :*: (S1 (MetaSel (Just "dllStorageClass") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe StorageClass)) :*: S1 (MetaSel (Just "callingConvention") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 CallingConvention))) :*: ((S1 (MetaSel (Just "returnAttributes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [ParameterAttribute]) :*: S1 (MetaSel (Just "returnType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type)) :*: (S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Name) :*: S1 (MetaSel (Just "parameters") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ([Parameter], Bool))))) :*: (((S1 (MetaSel (Just "functionAttributes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Either GroupID FunctionAttribute]) :*: S1 (MetaSel (Just "section") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe ShortByteString))) :*: (S1 (MetaSel (Just "comdat") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe ShortByteString)) :*: S1 (MetaSel (Just "alignment") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word32))) :*: ((S1 (MetaSel (Just "garbageCollectorName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe ShortByteString)) :*: S1 (MetaSel (Just "prefix") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Constant))) :*: (S1 (MetaSel (Just "basicBlocks") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [BasicBlock]) :*: (S1 (MetaSel (Just "personalityFunction") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Constant)) :*: S1 (MetaSel (Just "metadata") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [(ShortByteString, MDRef MDNode)]))))))))

data Parameter Source #

Instances
Eq Parameter Source # 
Instance details

Defined in LLVM.AST.Global

Data Parameter Source # 
Instance details

Defined in LLVM.AST.Global

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Parameter -> c Parameter #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Parameter #

toConstr :: Parameter -> Constr #

dataTypeOf :: Parameter -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Parameter) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Parameter) #

gmapT :: (forall b. Data b => b -> b) -> Parameter -> Parameter #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Parameter -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Parameter -> r #

gmapQ :: (forall d. Data d => d -> u) -> Parameter -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Parameter -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Parameter -> m Parameter #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Parameter -> m Parameter #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Parameter -> m Parameter #

Read Parameter Source # 
Instance details

Defined in LLVM.AST.Global

Show Parameter Source # 
Instance details

Defined in LLVM.AST.Global

Generic Parameter Source # 
Instance details

Defined in LLVM.AST.Global

Associated Types

type Rep Parameter :: * -> * #

Typed Parameter Source # 
Instance details

Defined in LLVM.AST.Typed

type Rep Parameter Source # 
Instance details

Defined in LLVM.AST.Global

data BasicBlock Source #

http://llvm.org/doxygen/classllvm_1_1BasicBlock.html LLVM code in a function is a sequence of BasicBlocks each with a label, some instructions, and a terminator.

Instances
Eq BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

Data BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BasicBlock -> c BasicBlock #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BasicBlock #

toConstr :: BasicBlock -> Constr #

dataTypeOf :: BasicBlock -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BasicBlock) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BasicBlock) #

gmapT :: (forall b. Data b => b -> b) -> BasicBlock -> BasicBlock #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BasicBlock -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BasicBlock -> r #

gmapQ :: (forall d. Data d => d -> u) -> BasicBlock -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> BasicBlock -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> BasicBlock -> m BasicBlock #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BasicBlock -> m BasicBlock #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BasicBlock -> m BasicBlock #

Read BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

Show BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

Generic BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

Associated Types

type Rep BasicBlock :: * -> * #

type Rep BasicBlock Source # 
Instance details

Defined in LLVM.AST.Global

data UnnamedAddr Source #

Constructors

LocalAddr 
GlobalAddr 
Instances
Eq UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

Data UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UnnamedAddr -> c UnnamedAddr #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UnnamedAddr #

toConstr :: UnnamedAddr -> Constr #

dataTypeOf :: UnnamedAddr -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UnnamedAddr) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UnnamedAddr) #

gmapT :: (forall b. Data b => b -> b) -> UnnamedAddr -> UnnamedAddr #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UnnamedAddr -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UnnamedAddr -> r #

gmapQ :: (forall d. Data d => d -> u) -> UnnamedAddr -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UnnamedAddr -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UnnamedAddr -> m UnnamedAddr #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UnnamedAddr -> m UnnamedAddr #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UnnamedAddr -> m UnnamedAddr #

Read UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

Show UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

Generic UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

Associated Types

type Rep UnnamedAddr :: * -> * #

type Rep UnnamedAddr Source # 
Instance details

Defined in LLVM.AST.Global

type Rep UnnamedAddr = D1 (MetaData "UnnamedAddr" "LLVM.AST.Global" "llvm-hs-pure-7.0.0-inplace" False) (C1 (MetaCons "LocalAddr" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "GlobalAddr" PrefixI False) (U1 :: * -> *))

functionDefaults :: Global Source #

helper for making Functions