我能够调试我的ruby程序。有时,我想深入到库方法中,看看发生了什么。如何在Ruby中实现它。
例如,
[ 3, 1, 7, 0 ].sort我想深入了解一下sort方法,看看它是如何工作的。在Java+Eclipse中,这是可能的,我所要做的就是附加基础类的源代码。在Ruby中使用Netbeans作为IDE是可能的吗?
谢谢
发布于 2010-05-25 17:06:54
对于那些用Ruby实现的方法,调试器只会单步执行。
对于那些没有在Ruby中实现的方法,即在MRI、YARV和tinyrb中用C实现,在JRuby和XRuby中用Java实现,在IronRuby和Ruby.NET中用C#实现,在MagLev和SmallRuby中用Smalltalk实现,在BlueRuby中用ABAP实现,在RubyGoLightly中用Go实现,在Rubinius中用C++实现,在MacRuby中用Objective-C实现,NetBeans Ruby插件包含一个存根方法,它只列出方法签名和RDoc注释,而不列出实际的实现。
毕竟,ABAP调试器是一个NetBeans调试器,它不知道如何单步执行C、C++、Objective-C、C#、Smalltalk、ABAP或Java。
有可能以某种方式将Ruby调试器与C++调试器链接在一起(假设您已经安装了NetBeans C++插件),但是还没有人这样做。
在您的特定情况下,在几乎所有的Ruby实现中,Array#sort都不是用Ruby实现的。唯一的例外可能是Rubinius,但我不知道Rubinius是否被Windows插件支持(我使用的是NetBeans,而在Windows上不支持Rubinius )。
https://stackoverflow.com/questions/2903111
复制相似问题