Since there may be a lot of Ghost Methods inside a ruby gem, I don’t think it is a good idea to study the inner mechanism of a ruby gem just by reading its source code statically. Is there a way to attach the source file of a third-part gem to a running ruby process for debugging so that I can set break point and see how things work dynamically ?
BTW,I’ve tried to navigate to the source file of a third-part gem in RubyMine by clicking on the context menu “Go To->Implementations” of the ‘require’ statement or other symbol of an third-part gem( require 'watir' for example ), without success. Is it normal for an IDE of a dynamic typing language such as Ruby to fail a symbol navigation?
Since there may be a lot of Ghost Methods inside a ruby gem, I
Share
I would love to know if there’s a better way to do this, but how I usually do it is:
bundle show gemname. I’m on a Mac so I usually pipe this to pbcopy so it gets copied to my clipboard.bundle show rails | pbcopymvim /path/to/gem/directorydebuggerabove the line in question.p variable_name), and move line by line with the ruby debugger commands.*Knowing where to put the breakpoint can take some understanding of the code, but you should start in lib/gemname.rb