# SPDX-FileCopyrightText: 2023 ash_sqlite contributors <https://github.com/ash-project/ash_sqlite/graphs.contributors>
#
# SPDX-License-Identifier: MIT
defmodule AshSqlite.Type do
@moduledoc """
Sqlite specific callbacks for `Ash.Type`.
Use this in addition to `Ash.Type`.
"""
@callback value_to_sqlite_default(Ash.Type.t(), Ash.Type.constraints(), term) ::
{:ok, String.t()} | :error
defmacro __using__(_) do
quote do
@behaviour AshSqlite.Type
def value_to_sqlite_default(_, _, _), do: :error
defoverridable value_to_sqlite_default: 3
end
end
end