Module: ActionDispatch::Journey::NFA::Dot

Included in:
GTG::TransitionTable
Defined in:
lib/action_dispatch/journey/nfa/dot.rb

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#to_dotObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/action_dispatch/journey/nfa/dot.rb', line 9

def to_dot
  edges = transitions.map { |from, sym, to|
    "  #{from} -> #{to} [label=\"#{sym || 'ε'}\"];"
  }

  <<-eodot
digraph nfa {
  rankdir=LR;
  node [shape = doublecircle];
  #{accepting_states.join ' '};
  node [shape = circle];
#{edges.join "\n"}
}
  eodot
end