class CodeMapper::Output::Dot
Public Class Methods
new(io)
click to toggle source
# File lib/code_mapper/output/dot.rb, line 6 def initialize(io) @io = io @stack = [] @graph = Graphviz::Graph.new('CodeMapper') @graph.attributes[:rankdir] = 'LR' end
Public Instance Methods
done()
click to toggle source
# File lib/code_mapper/output/dot.rb, line 29 def done @io.puts @graph.to_dot end
pop(tp, normalized_class_name)
click to toggle source
# File lib/code_mapper/output/dot.rb, line 25 def pop(tp, normalized_class_name) @stack.pop end
push(tp, normalized_class_name)
click to toggle source
# File lib/code_mapper/output/dot.rb, line 14 def push(tp, normalized_class_name) node = @graph.add_node("#{normalized_class_name}.#{tp.method_id.to_s}") node.attributes[:shape] = 'rectangle' if @stack != [] @stack.last.connect(node) end @stack << node end