最近阅读 ruby 源码非常顺手,这里整理一下心得,分享给大家,欢迎大家也同样分享~
http://blog.linjunhalida.com/blog/how-to-read-ruby-source-code/
如果觉得还有什么阅读源码相关的问题,欢迎也提出来,我更新对应的内容~
#1 楼 @ruohanc debug 方法见这个就好了:http://v.youku.com/v_show/id_XNjEyMjYyNDU2.html
把下面一段代码添加到 .irbrc 或者 .pryrc 文件中
def source_for(object, method_sym)
if object.respond_to?(method_sym, true)
method = object.method(method_sym)
elsif object.is_a?(Module)
method = object.instance_method(method_sym)
end
location = method.source_location
`mvim #{location[0]} +#{location[1]}` if location
rescue
nil
end
用 Ruby 的反射找出方法定义的源代码的位置,再用 mvim 打开
随便找了一个 Sinatra 的项目用 irb 或者 pry load,直接用 source_for 很快就能找到方法定义了