2015-11-12 10 views

Odpowiedz

12

Istnieją pewne podmioty, które aktualnie nie ma znaczenia, ale można ich używać w makr zdefiniowanych lub po prostu je zdefiniować jako funkcje. Na przykład:

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 

Ogólna idea jest taka, że ​​Elixir chce uniknąć rozprzestrzeniania operatora (bibliotek uważają, że definiują dziesiątki nowych operatorów), więc kiedy definiowania makr trzeba korzystać z tych, które już istnieją.

Powiązane problemy