Recompilation speedup: Put custom guards in Web.Utils.Guards See merge request pleroma/pleroma!3451cycles-validator
@@ -27,7 +27,7 @@ defmodule Pleroma.User.Query do | |||||
- e.g. Pleroma.User.Query.build(%{ap_id: ["http://ap_id1", "http://ap_id2"]}) | - e.g. Pleroma.User.Query.build(%{ap_id: ["http://ap_id1", "http://ap_id2"]}) | ||||
""" | """ | ||||
import Ecto.Query | import Ecto.Query | ||||
import Pleroma.Web.AdminAPI.Search, only: [not_empty_string: 1] | |||||
import Pleroma.Web.Utils.Guards, only: [not_empty_string: 1] | |||||
alias Pleroma.FollowingRelationship | alias Pleroma.FollowingRelationship | ||||
alias Pleroma.User | alias Pleroma.User | ||||
@@ -10,12 +10,6 @@ defmodule Pleroma.Web.AdminAPI.Search do | |||||
@page_size 50 | @page_size 50 | ||||
defmacro not_empty_string(string) do | |||||
quote do | |||||
is_binary(unquote(string)) and unquote(string) != "" | |||||
end | |||||
end | |||||
@spec user(map()) :: {:ok, [User.t()], pos_integer()} | @spec user(map()) :: {:ok, [User.t()], pos_integer()} | ||||
def user(params \\ %{}) do | def user(params \\ %{}) do | ||||
query = | query = | ||||
@@ -0,0 +1,13 @@ | |||||
# Pleroma: A lightweight social networking server | |||||
# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/> | |||||
# SPDX-License-Identifier: AGPL-3.0-only | |||||
defmodule Pleroma.Web.Utils.Guards do | |||||
@moduledoc """ | |||||
Project-wide custom guards. | |||||
See: https://hexdocs.pm/elixir/master/patterns-and-guards.html#custom-patterns-and-guards-expressions | |||||
""" | |||||
@doc "Checks for non-empty string" | |||||
defguard not_empty_string(string) when is_binary(string) and string != "" | |||||
end |