Elixir语言中 Macro.to_string
相关用法介绍如下。
用法一
to_string(tree)
@spec to_string(t()) :: String.t()
将给定的表达式 AST 转换为字符串。
此函数丢弃原始代码的所有格式。请参阅
作为对格式进行更多控制的较低级别的函数。Code.quoted_to_algebra/2
例子
iex> Macro.to_string(quote(do: foo.bar(1, 2, 3)))
"foo.bar(1, 2, 3)"
用法二
to_string(tree, fun)
此函数已弃用。请改用 Macro.to_string/1。
@spec to_string(t(), (t(), String.t() -> String.t())) :: String.t()
将给定的表达式 AST 转换为字符串。
给定的fun
为 AST 中的每个节点调用两个参数:正在打印的节点的 AST 和同一节点的字符串表示。此函数的返回值用作该 AST 节点的最终字符串表示形式。
此函数丢弃原始代码的所有格式。
例子
Macro.to_string(quote(do: 1 + 2), fn
1, _string -> "one"
2, _string -> "two"
_ast, string -> string
end)
#=> "one + two"
相关用法
- Elixir Macro.Env.fetch_alias用法及代码示例
- Elixir Macro.prewalk用法及代码示例
- Elixir Macro.generate_unique_arguments用法及代码示例
- Elixir Macro.quoted_literal?用法及代码示例
- Elixir Macro.Env.required?用法及代码示例
- Elixir Macro.validate用法及代码示例
- Elixir Macro.Env.prepend_tracer用法及代码示例
- Elixir Macro.camelize用法及代码示例
- Elixir Macro.operator?用法及代码示例
- Elixir Macro.var用法及代码示例
- Elixir Macro.unescape_string用法及代码示例
- Elixir Macro.unique_var用法及代码示例
- Elixir Macro.expand_once用法及代码示例
- Elixir Macro.Env.lookup_import用法及代码示例
- Elixir Macro.prewalker用法及代码示例
- Elixir Macro.postwalker用法及代码示例
- Elixir Macro.underscore用法及代码示例
- Elixir Macro.generate_arguments用法及代码示例
- Elixir Macro.Env.has_var?用法及代码示例
- Elixir Macro.decompose_call用法及代码示例
- Elixir Macro.Env用法及代码示例
- Elixir Macro.escape用法及代码示例
- Elixir Macro.update_meta用法及代码示例
- Elixir Macro.unpipe用法及代码示例
- Elixir Macro用法及代码示例
注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Macro.to_string(tree)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。