说我有一个函数的定义:
def rename(src, dst) do
<do rename>
end
在我的Elixir库中,然后可以在同一库中创建:
alias rename, as: mv
这样用户何时可以在我的库中同时使用重命名和mv函数?
我能想到的最简单的方法是通过defdelegate
iex(1)> defmodule Foo do
...(1)> def foo, do: :foo
...(1)>
...(1)> defdelegate bar, to: __MODULE__, as: :foo
...(1)> end
iex(2)> Foo.foo
:foo
iex(3)> Foo.bar
:foo
请注意,这定义了另一个bar/0
调用的函数foo/0
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句