请考虑编程凤凰城的这个片段:
defmodule Rumbl.VideoController do use Rumbl.Web, :controller def index(conn, _params) do videos = Repo.all(Video) render(conn, "index.html", videos: videos) end end
index
使用render
由触发的导入获得的函数use Rumbl.Web, :controller
.
我知道还导入了其他功能.但Elixir是否提供了列出它们的方法?
我可以列出Elixir中当前范围的可用功能吗?
您可以从__ENV__
宏获取此类信息.它返回的Macro.Env
struct存在文档.
从结构为你最有趣的领域是functions
和macros
包含当前可用的函数和宏列表以及它们起源于模块组装在一起.