Beaver. Deferred
(beaver v0.4.8)
Copy Markdown
Functions to work with IR entities not eagerly created. Usually it is an attribute/type doesn't get created until there is a MLIR context from block/op state.
Summary
Types
@type attribute() :: contextual(Beaver.MLIR.Attribute.t())
@type context_arg() :: Beaver.MLIR.Context.t()
@type contextual(t) :: t | (context_arg() -> t)
@type deferred(t) :: contextual(t)
@type operation() :: contextual(Beaver.MLIR.Operation.t())
@type opts() :: [{:ctx, context_arg()}]
@type type() :: contextual(Beaver.MLIR.Type.t())
Functions
@spec fetch_context(opts :: opts()) :: Beaver.MLIR.Context.t() | nil
@spec fetch_insertion_point(opts :: opts()) :: Beaver.MLIR.Block.t() | Beaver.MLIR.PatternRewriter.t() | Beaver.MLIR.RewriterBase.t() | Macro.t() | nil
@spec from_opts(opts(), (context_arg() -> t)) :: contextual(t) when t: var