你如何找到朱莉娅宏的来源?

时间:2016-05-21 02:08:24

标签: julia

你如何找出朱莉娅的宏在哪里?我正在查看某人的代码,他们正在使用@debug("string")宏。特定文件中没有使用语句来告诉我从哪里加载它,所以我假设它已经在代码中的其他地方加载了形式。

我可能会猜测Julia的调试模块,但它似乎并没有被这样使用,似乎它被更多地用于日志记录,所以我有点不确定如何跟踪它代码。

2 个答案:

答案 0 :(得分:3)

可以使用@which宏获取宏位置,这是0.5中引入的功能。

julia> @which @printf("%0.2f", 1/3)
@printf(args...) at printf.jl:1178

@which类似,您可以使用@edit打开源文件,使用@functionloc以编程方式获取功能位置。

答案 1 :(得分:2)

您可以通过键盘快捷键 shfit +?

进入Julia repl的帮助模式
help?> @debug
  No documentation found.

  @debug is a macro.

  # 1 method for macro "@debug":
  @debug(msg...) at /home/guo/.julia/v0.5/Logging/src/logging_macros.jl:11

我猜marco @debug可能来自包Logging.jl