Elixir语言中 Module.definitions_in
相关用法介绍如下。
用法一
definitions_in(module)
@spec definitions_in(module()) :: [definition()]
返回 module
中定义的所有函数和宏。
它以 [{name, arity}, ...]
的形式返回一个包含所有已定义函数和宏(公共和私有)的列表。
该函数只能在尚未编译的模块上使用。使用
回调获取已编译模块中的公共函数和宏。Module.__info__/1
例子
defmodule Example do
def version, do: 1
defmacrop test(arg), do: arg
Module.definitions_in(__MODULE__) #=> [{:version, 0}, {:test, 1}]
end
用法二
definitions_in(module, kind)
@spec definitions_in(module(), def_kind()) :: [definition()]
根据类型返回 module
中定义的所有函数。
该函数只能在尚未编译的模块上使用。使用
回调获取已编译模块中的公共函数和宏。Module.__info__/1
例子
defmodule Example do
def version, do: 1
Module.definitions_in(__MODULE__, :def) #=> [{:version, 0}]
Module.definitions_in(__MODULE__, :defp) #=> []
end
相关用法
- Elixir Module.defines?用法及代码示例
- Elixir Module.delete_attribute用法及代码示例
- Elixir Module.concat用法及代码示例
- Elixir Module.eval_quoted用法及代码示例
- Elixir Module.put_attribute用法及代码示例
- Elixir Module.split用法及代码示例
- Elixir Module.overridables_in用法及代码示例
- Elixir Module.has_attribute?用法及代码示例
- Elixir Module.get_attribute用法及代码示例
- Elixir Module.reserved_attributes用法及代码示例
- Elixir Module.register_attribute用法及代码示例
- Elixir Module.create用法及代码示例
- Elixir Module.safe_concat用法及代码示例
- Elixir Module.attributes_in用法及代码示例
- Elixir Module用法及代码示例
- Elixir Map.keys用法及代码示例
- Elixir Map.values用法及代码示例
- Elixir Map.update用法及代码示例
- Elixir MapSet用法及代码示例
- Elixir Map.split用法及代码示例
- Elixir MapSet.intersection用法及代码示例
- Elixir Map.put_new_lazy用法及代码示例
- Elixir Map.drop用法及代码示例
- Elixir Macro.Env.fetch_alias用法及代码示例
- Elixir Map用法及代码示例
注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Module.definitions_in(module)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。