diff --git a/lib/paper_trail/version_queries.ex b/lib/paper_trail/version_queries.ex index c0097d17..0ebde545 100644 --- a/lib/paper_trail/version_queries.ex +++ b/lib/paper_trail/version_queries.ex @@ -4,18 +4,16 @@ defmodule PaperTrail.VersionQueries do @repo PaperTrail.RepoClient.repo - @type result :: Ecto.Query.t - @doc """ Gets all the versions of a record. """ - @spec get_versions(record :: Ecto.Schema.t) :: result + @spec get_versions(record :: Ecto.Schema.t) :: Ecto.Query.t def get_versions(record), do: get_versions(record, []) @doc """ Gets all the versions of a record given a module and its id """ - @spec get_versions(model :: module, id :: pos_integer) :: result + @spec get_versions(model :: module, id :: pos_integer) :: Ecto.Query.t def get_versions(model, id) when is_atom(model) and is_integer(id), do: get_versions(model, id, []) @doc """ @@ -28,7 +26,7 @@ defmodule PaperTrail.VersionQueries do iex(1)> PaperTrail.VersionQueries.get_versions(record, [prefix: "tenant_id"]) """ - @spec get_versions(record :: Ecto.Schema.t, options :: []) :: result + @spec get_versions(record :: Ecto.Schema.t, options :: []) :: Ecto.Query.t def get_versions(record, options) when is_map(record) do item_type = record.__struct__ |> Module.split |> List.last version_query(item_type, record.id, options) |> @repo.all @@ -44,7 +42,7 @@ defmodule PaperTrail.VersionQueries do iex(1)> PaperTrail.VersionQueries.get_versions(ModelName, id, [prefix: "tenant_id"]) """ - @spec get_versions(model :: module, id :: pos_integer, options :: []) :: result + @spec get_versions(model :: module, id :: pos_integer, options :: []) :: Ecto.Query.t def get_versions(model, id, options) do item_type = model |> Module.split |> List.last version_query(item_type, id, options) |> @repo.all @@ -53,13 +51,13 @@ defmodule PaperTrail.VersionQueries do @doc """ Gets the last version of a record. """ - @spec get_version(record :: Ecto.Schema.t) :: result + @spec get_version(record :: Ecto.Schema.t) :: Ecto.Query.t def get_version(record), do: get_version(record, []) @doc """ Gets the last version of a record given its module reference and its id. """ - @spec get_version(model :: module, id :: pos_integer) :: result + @spec get_version(model :: module, id :: pos_integer) :: Ecto.Query.t def get_version(model, id) when is_atom(model) and is_integer(id), do: get_version(model, id, []) @doc """ @@ -72,7 +70,7 @@ defmodule PaperTrail.VersionQueries do iex(1)> PaperTrail.VersionQueries.get_version(ModelName, id, [prefix: "tenant_id"]) """ - @spec get_version(model :: module, id :: pos_integer, options :: []) :: result + @spec get_version(model :: module, id :: pos_integer, options :: []) :: Ecto.Query.t def get_version(model, id, options) do item_type = model |> Module.split |> List.last last(version_query(item_type, id, options)) |> @repo.one @@ -88,7 +86,7 @@ defmodule PaperTrail.VersionQueries do iex(1)> PaperTrail.VersionQueries.get_version(record, [prefix: "tenant_id"]) """ - @spec get_version(record :: Ecto.Schema.t, options :: []) :: result + @spec get_version(record :: Ecto.Schema.t, options :: []) :: Ecto.Query.t def get_version(record, options) when is_map(record) do item_type = record.__struct__ |> Module.split |> List.last last(version_query(item_type, record.id, options)) |> @repo.one