defmodule ExSQL.AST.Delete do
@moduledoc "A `DELETE FROM ... [WHERE ...]` statement."
defstruct table: nil,
schema: nil,
target_qualified: false,
index_hint: nil,
where: nil,
returning: [],
order_by: [],
limit: nil,
offset: nil
@type t :: %__MODULE__{
table: String.t(),
schema: String.t() | nil,
target_qualified: boolean(),
index_hint: nil | {:indexed_by, String.t()} | :not_indexed,
where: ExSQL.Parser.expr() | nil,
returning: list(),
order_by: list(),
limit: ExSQL.Parser.expr() | nil,
offset: ExSQL.Parser.expr() | nil
}
end