当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Elixir Macro.var用法及代码示例


Elixir语言中 Macro.var 相关用法介绍如下。

用法:

var(var, context)
@spec var(var, context) :: {var, [], context} when var: atom(), context: atom()

生成一个 AST 节点,表示由原子 varcontext 给出的变量。

请注意,此变量不是唯一的。如果您以后想要访问这个相同的变量,您可以使用相同的参数再次调用 var/2 。使用 unique_var/2 生成一个不能被覆盖的唯一变量。

例子

为了构建一个变量,需要一个上下文。大多数时候,为了保持卫生,上下文必须是 __MODULE__/0

iex> Macro.var(:foo, __MODULE__)
{:foo, [], __MODULE__}

但是,如果需要访问用户变量,可以给出 nil:

iex> Macro.var(:foo, nil)
{:foo, [], nil}

相关用法


注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Macro.var(var, context)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。