# `Beaver.MLIR.Dialect`

This module defines macro to generate code for an MLIR dialect.
You might override `eval_ssa/1` function to introduce your custom op generation

# `t`

```elixir
@type t() :: %Beaver.MLIR.Dialect{ref: term()}
```

# `eval_ssa`

```elixir
@callback eval_ssa(Beaver.SSA.t()) :: any()
```

# `acc`

Return the dialect name `acc` as a bitstring.

# `affine`

Return the dialect name `affine` as a bitstring.

# `amdgpu`

Return the dialect name `amdgpu` as a bitstring.

# `arith`

Return the dialect name `arith` as a bitstring.

# `arm_neon`

Return the dialect name `arm_neon` as a bitstring.

# `arm_sme`

Return the dialect name `arm_sme` as a bitstring.

# `arm_sve`

Return the dialect name `arm_sve` as a bitstring.

# `async`

Return the dialect name `async` as a bitstring.

# `bufferization`

Return the dialect name `bufferization` as a bitstring.

# `builtin`

Return the dialect name `builtin` as a bitstring.

# `cf`

Return the dialect name `cf` as a bitstring.

# `complex`

Return the dialect name `complex` as a bitstring.

# `define`
*macro* 

# `dlti`

Return the dialect name `dlti` as a bitstring.

# `emitc`

Return the dialect name `emitc` as a bitstring.

# `func`

Return the dialect name `func` as a bitstring.

# `gpu`

Return the dialect name `gpu` as a bitstring.

# `handler`

Return the dialect handle for the given dialect name.

Note that no every dialect has a handle function defined in the C API.
In that case, `nil` is returned.

# `index`

Return the dialect name `index` as a bitstring.

# `irdl`

Return the dialect name `irdl` as a bitstring.

# `linalg`

Return the dialect name `linalg` as a bitstring.

# `llvm`

Return the dialect name `llvm` as a bitstring.

# `make`

# `math`

Return the dialect name `math` as a bitstring.

# `memref`

Return the dialect name `memref` as a bitstring.

# `ml_program`

Return the dialect name `ml_program` as a bitstring.

# `mpi`

Return the dialect name `mpi` as a bitstring.

# `nvgpu`

Return the dialect name `nvgpu` as a bitstring.

# `nvvm`

Return the dialect name `nvvm` as a bitstring.

# `omp`

Return the dialect name `omp` as a bitstring.

# `pdl`

Return the dialect name `pdl` as a bitstring.

# `pdl_interp`

Return the dialect name `pdl_interp` as a bitstring.

# `ptr`

Return the dialect name `ptr` as a bitstring.

# `quant`

Return the dialect name `quant` as a bitstring.

# `rocdl`

Return the dialect name `rocdl` as a bitstring.

# `scf`

Return the dialect name `scf` as a bitstring.

# `shape`

Return the dialect name `shape` as a bitstring.

# `shard`

Return the dialect name `shard` as a bitstring.

# `smt`

Return the dialect name `smt` as a bitstring.

# `sparse_tensor`

Return the dialect name `sparse_tensor` as a bitstring.

# `spirv`

Return the dialect name `spirv` as a bitstring.

# `tensor`

Return the dialect name `tensor` as a bitstring.

# `tosa`

Return the dialect name `tosa` as a bitstring.

# `transform`

Return the dialect name `transform` as a bitstring.

# `ub`

Return the dialect name `ub` as a bitstring.

# `vector`

Return the dialect name `vector` as a bitstring.

# `wasmssa`

Return the dialect name `wasmssa` as a bitstring.

# `x86`

Return the dialect name `x86` as a bitstring.

# `xegpu`

Return the dialect name `xegpu` as a bitstring.

# `xevm`

Return the dialect name `xevm` as a bitstring.

