如何在 REPL 中打印 Julia 中的函数代码? [英] How to print in REPL the code of functions in Julia?
问题描述
In Julia, a lot of the Base and closer related functions are also written in pure Julia, and the code is easily avaible. One can skim through the repository or the local downloaded files, and see how the function is written/implemented. But I think there is allready some built in method that does that for you, so you can write in REPL or Jupyter Notebook something like:
@code functioninquestion()
and get something like:
functioninquestion(input::Type)
some calculations
return
end
without paging throug the code.
I just don't remember the method or call. I have read the Reflection/Introspection section of the Manual but I cannot seem to be able to use anything there. I've tried methods
, methodswith
, code_lowered
, expand
and cannot seem to make them give what I want-
Though this may not be what the OP is looking for, @less
is very convenient to read the underlying code (so I very often use it). For example,
julia> @less 1 + 2
gives
+(x::Int, y::Int) = box(Int,add_int(unbox(Int,x),unbox(Int,y)))
which corresponds to the line given by
julia> @which 1 + 2
+(x::Int64, y::Int64) at int.jl:8
这篇关于如何在 REPL 中打印 Julia 中的函数代码?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!