# File lib/journey/nfa/dot.rb, line 6 def to_dot edges = transitions.map { |from, sym, to| " #{from} -> #{to} [label=\"#{sym || 'ε'}\"];" } #memo_nodes = memos.values.flatten.map { |n| # label = n # if Journey::Route === n # label = "#{n.verb.source} #{n.path.spec}" # end # " #{n.object_id} [label=\"#{label}\", shape=box];" #} #memo_edges = memos.map { |k, memos| # (memos || []).map { |v| " #{k} -> #{v.object_id};" } #}.flatten.uniq "digraph nfa {\nrankdir=LR;\nnode [shape = doublecircle];\n\#{accepting_states.join ' '};\nnode [shape = circle];\n\#{edges.join \"\\n\"}\n}\n" end