mlir-hs-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

MLIR.AST.Builder

Documentation

data Value Source #

Constructors

Name :> Type 

newtype NameSupply Source #

Constructors

NameSupply 

Fields

newtype NameSupplyT m a Source #

Constructors

NameSupplyT (StateT NameSupply m a) 

Instances

Instances details
MonadTrans NameSupplyT Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

lift :: Monad m => m a -> NameSupplyT m a #

MonadWriter w m => MonadWriter w (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

writer :: (a, w) -> NameSupplyT m a #

tell :: w -> NameSupplyT m () #

listen :: NameSupplyT m a -> NameSupplyT m (a, w) #

pass :: NameSupplyT m (a, w -> w) -> NameSupplyT m a #

MonadState s m => MonadState s (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

get :: NameSupplyT m s #

put :: s -> NameSupplyT m () #

state :: (s -> (a, s)) -> NameSupplyT m a #

MonadReader r m => MonadReader r (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

ask :: NameSupplyT m r #

local :: (r -> r) -> NameSupplyT m a -> NameSupplyT m a #

reader :: (r -> a) -> NameSupplyT m a #

Monad m => Monad (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

(>>=) :: NameSupplyT m a -> (a -> NameSupplyT m b) -> NameSupplyT m b #

(>>) :: NameSupplyT m a -> NameSupplyT m b -> NameSupplyT m b #

return :: a -> NameSupplyT m a #

Functor m => Functor (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

fmap :: (a -> b) -> NameSupplyT m a -> NameSupplyT m b #

(<$) :: a -> NameSupplyT m b -> NameSupplyT m a #

MonadFix m => MonadFix (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

mfix :: (a -> NameSupplyT m a) -> NameSupplyT m a #

Monad m => Applicative (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

pure :: a -> NameSupplyT m a #

(<*>) :: NameSupplyT m (a -> b) -> NameSupplyT m a -> NameSupplyT m b #

liftA2 :: (a -> b -> c) -> NameSupplyT m a -> NameSupplyT m b -> NameSupplyT m c #

(*>) :: NameSupplyT m a -> NameSupplyT m b -> NameSupplyT m b #

(<*) :: NameSupplyT m a -> NameSupplyT m b -> NameSupplyT m a #

Monad m => MonadNameSupply (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

class Monad m => MonadNameSupply m where Source #

Methods

freshName :: m Name Source #

Instances

Instances details
Monad m => MonadNameSupply (NameSupplyT m) Source # 
Instance details

Defined in MLIR.AST.Builder

MonadNameSupply m => MonadNameSupply (ReaderT r m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

freshName :: ReaderT r m Name Source #

newtype BlockBuilderT m a Source #

Constructors

BlockBuilderT (StateT BlockBindings m a) 

Instances

Instances details
MonadTrans BlockBuilderT Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

lift :: Monad m => m a -> BlockBuilderT m a #

MonadWriter w m => MonadWriter w (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

writer :: (a, w) -> BlockBuilderT m a #

tell :: w -> BlockBuilderT m () #

listen :: BlockBuilderT m a -> BlockBuilderT m (a, w) #

pass :: BlockBuilderT m (a, w -> w) -> BlockBuilderT m a #

MonadState s m => MonadState s (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

get :: BlockBuilderT m s #

put :: s -> BlockBuilderT m () #

state :: (s -> (a, s)) -> BlockBuilderT m a #

MonadReader r m => MonadReader r (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

ask :: BlockBuilderT m r #

local :: (r -> r) -> BlockBuilderT m a -> BlockBuilderT m a #

reader :: (r -> a) -> BlockBuilderT m a #

Monad m => Monad (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

(>>=) :: BlockBuilderT m a -> (a -> BlockBuilderT m b) -> BlockBuilderT m b #

(>>) :: BlockBuilderT m a -> BlockBuilderT m b -> BlockBuilderT m b #

return :: a -> BlockBuilderT m a #

Functor m => Functor (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

fmap :: (a -> b) -> BlockBuilderT m a -> BlockBuilderT m b #

(<$) :: a -> BlockBuilderT m b -> BlockBuilderT m a #

MonadFix m => MonadFix (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

mfix :: (a -> BlockBuilderT m a) -> BlockBuilderT m a #

Monad m => Applicative (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

pure :: a -> BlockBuilderT m a #

(<*>) :: BlockBuilderT m (a -> b) -> BlockBuilderT m a -> BlockBuilderT m b #

liftA2 :: (a -> b -> c) -> BlockBuilderT m a -> BlockBuilderT m b -> BlockBuilderT m c #

(*>) :: BlockBuilderT m a -> BlockBuilderT m b -> BlockBuilderT m b #

(<*) :: BlockBuilderT m a -> BlockBuilderT m b -> BlockBuilderT m a #

MonadNameSupply m => MonadBlockBuilder (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Monad m => MonadBlockDecl (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

class Monad m => MonadBlockDecl m where Source #

Methods

emitOp_ :: Operation -> m () Source #

Instances

Instances details
Monad m => MonadBlockDecl (BlockBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

data EndOfBlock Source #

Constructors

EndOfBlock 

runBlockBuilder :: Monad m => BlockBuilderT m a -> m (a, ([Value], [Binding])) Source #

newtype RegionBuilderT m a Source #

Instances

Instances details
MonadTrans RegionBuilderT Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

lift :: Monad m => m a -> RegionBuilderT m a #

MonadWriter w m => MonadWriter w (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

writer :: (a, w) -> RegionBuilderT m a #

tell :: w -> RegionBuilderT m () #

listen :: RegionBuilderT m a -> RegionBuilderT m (a, w) #

pass :: RegionBuilderT m (a, w -> w) -> RegionBuilderT m a #

MonadState s m => MonadState s (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

get :: RegionBuilderT m s #

put :: s -> RegionBuilderT m () #

state :: (s -> (a, s)) -> RegionBuilderT m a #

MonadReader r m => MonadReader r (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

ask :: RegionBuilderT m r #

local :: (r -> r) -> RegionBuilderT m a -> RegionBuilderT m a #

reader :: (r -> a) -> RegionBuilderT m a #

Monad m => Monad (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

(>>=) :: RegionBuilderT m a -> (a -> RegionBuilderT m b) -> RegionBuilderT m b #

(>>) :: RegionBuilderT m a -> RegionBuilderT m b -> RegionBuilderT m b #

return :: a -> RegionBuilderT m a #

Functor m => Functor (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

fmap :: (a -> b) -> RegionBuilderT m a -> RegionBuilderT m b #

(<$) :: a -> RegionBuilderT m b -> RegionBuilderT m a #

MonadFix m => MonadFix (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

mfix :: (a -> RegionBuilderT m a) -> RegionBuilderT m a #

Monad m => Applicative (RegionBuilderT m) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

pure :: a -> RegionBuilderT m a #

(<*>) :: RegionBuilderT m (a -> b) -> RegionBuilderT m a -> RegionBuilderT m b #

liftA2 :: (a -> b -> c) -> RegionBuilderT m a -> RegionBuilderT m b -> RegionBuilderT m c #

(*>) :: RegionBuilderT m a -> RegionBuilderT m b -> RegionBuilderT m b #

(<*) :: RegionBuilderT m a -> RegionBuilderT m b -> RegionBuilderT m a #

endOfRegion :: Monad m => m () Source #

newtype SnocList a Source #

Constructors

SnocList [a] 

Instances

Instances details
Semigroup (SnocList a) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

(<>) :: SnocList a -> SnocList a -> SnocList a #

sconcat :: NonEmpty (SnocList a) -> SnocList a #

stimes :: Integral b => b -> SnocList a -> SnocList a #

Monoid (SnocList a) Source # 
Instance details

Defined in MLIR.AST.Builder

Methods

mempty :: SnocList a #

mappend :: SnocList a -> SnocList a -> SnocList a #

mconcat :: [SnocList a] -> SnocList a #

(.:.) :: SnocList a -> a -> SnocList a Source #