# `Selecto.SetOperations.Spec`

Specification for a set operation between two or more queries.

# `operation_options`

```elixir
@type operation_options() :: %{
  all: boolean(),
  column_mapping: [{String.t(), String.t()}] | nil
}
```

# `set_operation`

```elixir
@type set_operation() :: :union | :intersect | :except
```

# `t`

```elixir
@type t() :: %Selecto.SetOperations.Spec{
  column_mapping: [{String.t(), String.t()}] | nil,
  id: String.t(),
  left_query: Selecto.t(),
  operation: set_operation(),
  options: operation_options(),
  right_query: Selecto.t(),
  validated: boolean()
}
```

---

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