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
jquery_regex-0.0.3 vendor/bundle/gems/jquery_regex-0.0.3/vendor/bundle/gems/jquery_regex-0.0.2/vendor/bundle/gems/jquery_regex-0.0.1/vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
jquery_regex-0.0.3 vendor/bundle/gems/jquery_regex-0.0.3/vendor/bundle/gems/jquery_regex-0.0.2/vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
jquery_regex-0.0.1 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.3/vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.0.pre/vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-rolls-0.2.0 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.8.3 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.8.1 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-rolls-0.1.0 vendor/bundle/gems/challah-0.8.0.pre/vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-rolls-0.1.0 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.8.0.pre vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.7.1 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.7.0 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.7.0.pre2 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.7.0.pre vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.6.2 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb
challah-0.6.2 vendor/bundle/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/journey-1.0.3/lib/journey/nfa/dot.rb
sunrise-cms-0.3.3 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
initforthe-cookies-0.0.1 vendor/bundle/gems/journey-1.0.4/lib/journey/nfa/dot.rb