这些运营商在Elixir中意味着什么? ~>>, <<~
它们列在这里http://elixir-lang.org/getting-started/basic-operators.html
我收到以下错误:
iex(28)> b=1
1
iex(29)> b~>>1
** (CompileError) iex:29: undefined function ~>>/2
Run Code Online (Sandbox Code Playgroud)
Paw*_*rok 12
有些运算符目前没有任何意义,但您可以在定义的宏中使用它们,或者只将它们定义为函数.例如:
defmodule Operators do
def a ~>> b do
a + b
end
end
defmodule Test do
def test do
import Operators
1 ~>> 2
end
end
IO.inspect(Test.test) # => 3
Run Code Online (Sandbox Code Playgroud)
一般的想法是Elixir希望避免操作员扩散(想想定义了许多新操作符的库),因此在定义宏时,您需要使用已存在的宏.
| 归档时间: |
|
| 查看次数: |
650 次 |
| 最近记录: |