Beaver.Composer (beaver v0.4.0)

This module provide functions to compose passes.

Summary

Types

composer()

@type composer() :: t()

operation()

@type operation() :: Beaver.MLIR.Module.t() | Beaver.MLIR.Operation.t()

run_option()

@type run_option() :: {:debug, boolean()} | {:print, boolean()} | {:timing, boolean()}

run_result()

@type run_result() :: {:ok, any()} | {:error, String.t()}

t()

@type t() :: %Beaver.Composer{op: operation(), passes: [any()]}

Functions

append(composer_or_op, pass)

create_pass(pass)

nested(composer_or_op, op_name, passes)

new(composer)

run(composer, opts \\ [debug: false, print: false, timing: false])

@spec run(composer(), [run_option()]) :: run_result()

run!(composer, opts \\ [debug: false, print: false, timing: false])

@spec run!(composer(), [run_option()]) :: operation()

to_pipeline(composer)