在调用不接受参数的函数时,使用或省略括号的约定是什么?
function1(aaa) |> function2() |> function3() |> function4(bbb)
# or
function1(aaa) |> function2 |> function3 |> function4(bbb)
答案 0 :(得分:2)
我相信,它上面还没有约定。
Elixir
编译器警告调用没有链外括号的函数。_
defmodule A do
def a, do: "¡Yay!"
def b1, do: IO.puts a
def b2 do
a = ":("
# 100 LOCs
IO.puts a
end
end
iex> A.b1
"¡Yay!"
iex> A.b2
":("
Credo
代码分析工具默认会报告零括号函数调用。Elixir
代码本身似乎没有使用括号。在我的拙见中,经验法则“在调用函数时使用括号”几乎没有什么优势,全局压制credo
的守卫并不值得。我个人不使用它们,除非它提高了可读性。希望它有所帮助。