假设我有一个模块:
defmodule Foo do
def bar(baz) do
IO.puts baz
end
end
有没有什么方法可以返回:
def bar(baz) do
IO.puts baz
end
我已经想到了一种方法可以加载整个模块的定义,具体做法如下:
Foo.__info__(:compile) |> List.last |> elem(1) |> File.read |> elem(1)
但理想情况下,我希望能够像这样做一些事情:
Foo.bar/1.__definition__
#=> def bar(baz) do\n IO.puts baz\nend\d