# `Reactor.Dsl.Switch`
[🔗](https://github.com/ash-project/reactor/blob/main/lib/reactor/dsl/switch.ex/#L6)

The `switch` DSL entity struct.

See `d:Reactor.switch`.

# `t`

```elixir
@type t() :: %Reactor.Dsl.Switch{
  __identifier__: any(),
  __spark_metadata__: Spark.Dsl.Entity.spark_meta(),
  allow_async?: boolean(),
  default: nil | Reactor.Dsl.Switch.Default.t(),
  description: nil | String.t(),
  matches: [Reactor.Dsl.Switch.Match.t()],
  name: atom(),
  on:
    Reactor.Template.Input.t()
    | Reactor.Template.Result.t()
    | Reactor.Template.Value.t()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
