I’m looking for something that will create a cross-reference document
showing where all my methods are being used. An ideal world would
include forward and reverse links within an editor. Are there any
editors, environments or tools that provide this functionality for Ruby?
I’m looking for something that will create a cross-reference document
showing where all my methods are being used. An ideal world would
include forward and reverse links within an editor. Are there any
editors, environments or tools that provide this functionality for Ruby?
Thanks,
Larry F.
You can use the excellent ruby-prof in this way.
gem install ruby-prof
If you request the HTML output, you get a page with links from each
method to callers and callees, plus timing information.
OK, but doesn’t it just produce runtime reports? I’m looking for a
static report on WHERE in my code various objects and methods are used.
Is this capability buried in ruby-prof somewhere? The docs just talk
about runtime.
OK, but doesn’t it just produce runtime reports? I’m looking for a
static report on WHERE in my code various objects and methods are
used.
Is this capability buried in ruby-prof somewhere? The docs just talk
about runtime.
I’d be surprised if it were even possible to generate a call graph
based on the static text. Ruby is simply too dynamic of a language.
The main problem is that it is really difficult (impossible?) to
intuit the class of the object returned by a method call by simply
looking at the text. Add in the possibility that methods are
created at run time and it becomes a really hard problem.
The main problem is that it is really difficult (impossible?) to
intuit the class of the object returned by a method call by simply
looking at the text. Add in the possibility that methods are
created at run time and it becomes a really hard problem.
… so hard that nobody has even bothered to produce the basics? Don’t
other development languages have this? How do you live without it?
The main problem is that it is really difficult (impossible?) to
intuit the class of the object returned by a method call by simply
looking at the text. Add in the possibility that methods are
created at run time and it becomes a really hard problem.
… so hard that nobody has even bothered to produce the basics?
Don’t
other development languages have this? How do you live without it?
grep
But I have looked at call graphs generated when I run my test suites.
You might find the rcov tool useful for this.