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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。