djwonk / method_trails

MethodTrails visualizes the method call graph of Ruby source code in Graphviz format.

djwonk (author)
Fri May 09 20:00:48 -0700 2008
commit  51d58e3788f9f08b95262a30146be6fd8b15c9e6
tree    1a18f9ea1a5693c1dadef6a3e12d88c2d3df481c
parent  8b1fa431abe5752aa74c86d0b303ad517260d8b2
method_trails / lib / method_trails.rb
100644 29 lines (22 sloc) 0.699 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
require 'require_relative'
require_relative '/method_trails/file_handling'
require_relative '/method_trails/method_calls'
require_relative '/method_trails/parser'
 
class MethodTrails
 
  attr_accessor :input_filename
  attr_accessor :dot_filename
  attr_accessor :s_exp_filename
  
  # Reads Ruby file from +input_filename+. Parses and processes the file.
  # Saves results to +dot_filename+ in GraphViz format.
  def process
    input_text = read_input_file
    s_exp = parse_to_s_expression(input_text)
    write_s_exp_file(s_exp)
    dot_data = get_method_calls(s_exp)
    write_dot_file(dot_data)
  end
  
  protected
  
  include FileHandling
  include MethodCalls
  include Parser
 
end