lib/transformers/ensure_table_or_polymorphic.ex
defmodule AshPostgres.Transformers.EnsureTableOrPolymorphic do
@moduledoc "Ensures that there is a table configured or the resource is polymorphic"
use Spark.Dsl.Transformer
alias Spark.Dsl.Transformer
def transform(dsl) do
if Transformer.get_option(dsl, [:postgres], :polymorphic?) ||
Transformer.get_option(dsl, [:postgres], :table) do
{:ok, dsl}
else
{:error, "Non-polymorphic resources must have a postgres table configured."}
end
end
end