class PROIEL::Visualization::Graphviz::TemplateContext
Public Class Methods
new(graph, direction, title = '')
click to toggle source
# File lib/proiel/visualization/graphviz.rb, line 79 def initialize(graph, direction, title = '') @graph = graph @direction = direction @title = title end
Public Instance Methods
generate(template)
click to toggle source
# File lib/proiel/visualization/graphviz.rb, line 85 def generate(template) template.result(binding) end
Protected Instance Methods
edge(identifier1, identifier2, label = '', options = {})
click to toggle source
Creates an edge with a label from one identifier to another identifier.
# File lib/proiel/visualization/graphviz.rb, line 99 def edge(identifier1, identifier2, label = '', options = {}) attrs = join_attributes(options.merge(label: label)) "#{identifier1} -> #{identifier2} [#{attrs}];" end
join_attributes(attrs)
click to toggle source
# File lib/proiel/visualization/graphviz.rb, line 105 def join_attributes(attrs) attrs.map { |a, v| %|#{a}="#{v.to_s.gsub('"', '\\"')}"| }.join(',') end
node(identifier, label = '', options = {})
click to toggle source
Creates a node with an identifier and a label.
# File lib/proiel/visualization/graphviz.rb, line 92 def node(identifier, label = '', options = {}) attrs = join_attributes(options.merge(label: label)) "#{identifier} [#{attrs}];" end