Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Querying the type of LLVM expressions
Synopsis
- class Typed a where
- typeOf :: (HasCallStack, MonadModuleBuilder m) => a -> m (Either String Type)
- getElementType :: Type -> Either String Type
- indexTypeByConstants :: (HasCallStack, MonadModuleBuilder m) => Type -> [Constant] -> m (Either String Type)
- indexTypeByOperands :: (HasCallStack, MonadModuleBuilder m) => Type -> [Operand] -> m (Either String Type)
- extractValueType :: (HasCallStack, MonadModuleBuilder m) => [Word32] -> Type -> m (Either String Type)
Documentation
typeOf :: (HasCallStack, MonadModuleBuilder m) => a -> m (Either String Type) Source #
Instances
indexTypeByConstants :: (HasCallStack, MonadModuleBuilder m) => Type -> [Constant] -> m (Either String Type) Source #
Index into a type using a list of Constant
values. Returns a pointer type whose referent is the indexed type, or an error message if indexing was not possible.
indexTypeByOperands :: (HasCallStack, MonadModuleBuilder m) => Type -> [Operand] -> m (Either String Type) Source #
Index into a type using a list of Operand
values. Returns a pointer type whose referent is the indexed type, or an error message if indexing was not possible.
extractValueType :: (HasCallStack, MonadModuleBuilder m) => [Word32] -> Type -> m (Either String Type) Source #