" Kernel.not / 1 " или нет / 1 ожидает логическое значение
примечание: другие значения, отличающиеся от nil
и false
, равны true
попробуйте этот пример:
x = nil
if (x) do true else false end
false
Примеры с условиями short-if и значениями true, false, nil
iex> if nil , do: true, else: false
false
iex> if !nil , do: true, else: false
true
iex> if false , do: true, else: false
false
iex> if !false , do: true, else: false
true
iex> if not false , do: true, else: false
true
iex> if true , do: true, else: false
true
iex> if !true , do: true, else: false
false
iex> if not true , do: true, else: false
false