Sha256: 6f9f9f37e65cdce42be0ed0aa866cec6854b5ec3fc0460de74de5f7b4427d14b

Contents?: true

Size: 783 Bytes

Versions: 104

Compression:

Stored size: 783 Bytes

Contents

# encoding: utf-8

module Journey
  module NFA
    module Dot
      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

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

Version data entries

104 entries across 78 versions & 19 rubygems

Version Path
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
rails-uploader-0.0.4 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
rails-uploader-0.0.4 vendor/bundle/ruby/1.9.1/gems/journey-1.0.4/lib/journey/nfa/dot.rb
journey-1.0.4 lib/journey/nfa/dot.rb
challah-0.6.1 vendor/bundle/gems/journey-1.0.3/lib/journey/nfa/dot.rb
challah-0.6.1 vendor/bundle/gems/journey-1.0.1/lib/journey/nfa/dot.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
rails-uploader-0.0.1 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
challah-0.6.0 vendor/bundle/gems/journey-1.0.1/lib/journey/nfa/dot.rb
challah-0.6.0 vendor/bundle/gems/journey-1.0.3/lib/journey/nfa/dot.rb
challah-0.5.4 vendor/bundle/gems/journey-1.0.1/lib/journey/nfa/dot.rb
challah-0.5.4 vendor/bundle/gems/journey-1.0.3/lib/journey/nfa/dot.rb
challah-0.5.3 vendor/bundle/gems/journey-1.0.3/lib/journey/nfa/dot.rb
challah-0.5.3 vendor/bundle/gems/journey-1.0.1/lib/journey/nfa/dot.rb