34 lines
668 B
Elixir
34 lines
668 B
Elixir
defmodule Mobilizon.Service.Guards do
|
|
@moduledoc """
|
|
Various guards
|
|
"""
|
|
|
|
@doc """
|
|
Returns `true` if `term` is a valid string and not empty.
|
|
|
|
## Examples
|
|
|
|
iex> is_valid_string("one")
|
|
true
|
|
iex> is_valid_string("")
|
|
false
|
|
iex> is_valid_string(2)
|
|
false
|
|
"""
|
|
defguard is_valid_string(term) when is_binary(term) and term != ""
|
|
|
|
@doc """
|
|
Returns `true` if `term` is a valid list and not empty.
|
|
|
|
## Examples
|
|
|
|
iex> is_valid_list(["one"])
|
|
true
|
|
iex> is_valid_list([])
|
|
false
|
|
iex> is_valid_list("foo")
|
|
false
|
|
"""
|
|
defguard is_valid_list(term) when is_list(term) and length(term) > 0
|
|
end
|