Reviewers: marja,

Message:
Committed patchset #1 manually as r17906 (presubmit successful).

Description:
Experimental parser: remove some dead code

[email protected]

BUG=

Committed: https://code.google.com/p/v8/source/detail?r=17906

Please review this at https://codereview.chromium.org/78153002/

SVN Base: https://v8.googlecode.com/svn/branches/experimental/parser

Affected files (+6, -17 lines):
  M tools/lexer_generator/nfa.py
  M tools/lexer_generator/nfa_builder.py
  M tools/lexer_generator/rule_parser.py


Index: tools/lexer_generator/nfa.py
diff --git a/tools/lexer_generator/nfa.py b/tools/lexer_generator/nfa.py
index 344ef70c54d861eb2e3be489b1ef3209d3bdc788..1464f801d2b64298b061c3567657123aa59a0c23 100644
--- a/tools/lexer_generator/nfa.py
+++ b/tools/lexer_generator/nfa.py
@@ -61,11 +61,6 @@ class NfaState(AutomatonState):
     assert self.is_closed()
     return self.__transitions

-  def next_states(self, key_filter):
-    assert self.is_closed()
-    f = lambda acc, (k, v) : acc if not key_filter(k) else acc | set(v)
-    return reduce(f, self.__transitions.items(), set())
-
   def __add_transition(self, key, next_state):
     if next_state == None:
       assert not self.is_closed(), "already closed"
Index: tools/lexer_generator/nfa_builder.py
diff --git a/tools/lexer_generator/nfa_builder.py b/tools/lexer_generator/nfa_builder.py index c5410b324d693466233b22cc7dbef846241b1173..d5a3e09c3bfe9354c21cebc8dcc319acecaf0c59 100644
--- a/tools/lexer_generator/nfa_builder.py
+++ b/tools/lexer_generator/nfa_builder.py
@@ -146,16 +146,12 @@ class NfaBuilder(object):
     return self.__key_state(TransitionKey.unique('catch_all'))

   def __join(self, graph):
-    (graph, name, subgraph, modifier) = graph[1:]
+    (graph, name, subgraph) = graph[1:]
     subgraphs = self.__peek_state()['subgraphs']
     if not name in subgraphs:
       subgraphs[name] = self.__nfa(subgraph)
     (subgraph_start, subgraph_end, nodes_in_subgraph) = subgraphs[name]
     (start, ends) = self.__process(graph)
-    if modifier:
-      assert modifier == 'ZERO_OR_MORE'
-      for end in ends:
-        end.add_epsilon_transition(subgraph_end)
     self.__patch_ends(ends, subgraph_start)
     end = self.__new_state()
     subgraph_end.add_epsilon_transition(end)
@@ -214,7 +210,8 @@ class NfaBuilder(object):
       is_epsilon = lambda k: k == TransitionKey.epsilon()
       state_iter = lambda node : node.state_iter(key_filter = is_epsilon)
       edge = set(state_iter(node))
- closure = Automaton.visit_states(edge, inner, state_iter=state_iter, visit_state=set())
+      closure = Automaton.visit_states(
+          edge, inner, state_iter=state_iter, visit_state=set())
       node.set_epsilon_closure(closure)
     Automaton.visit_states(set([start_state]), outer)

@@ -260,10 +257,8 @@ class NfaBuilder(object):
     return ('EPSILON',)

   @staticmethod
-  def join_subgraph(graph, name, subgraph, modifier):
-    if modifier:
-      modifier = NfaBuilder.__modifer_map[modifier]
-    return ('JOIN', graph, name, subgraph, modifier)
+  def join_subgraph(graph, name, subgraph):
+    return ('JOIN', graph, name, subgraph)

   @staticmethod
   def or_graphs(graphs):
Index: tools/lexer_generator/rule_parser.py
diff --git a/tools/lexer_generator/rule_parser.py b/tools/lexer_generator/rule_parser.py index d15ee23773bb218c84b59afe6ab7bab238e43882..9761bffa1ebd7da847c699dd3535f6fc5decb918 100644
--- a/tools/lexer_generator/rule_parser.py
+++ b/tools/lexer_generator/rule_parser.py
@@ -306,9 +306,8 @@ class RuleProcessor(object):
           graph = NfaBuilder.add_continue(graph)
         else:
           assert subgraph == 'default'
-          subgraph_modifier = None
           graph = NfaBuilder.join_subgraph(
-            graph, transition, rule_map[transition], subgraph_modifier)
+            graph, transition, rule_map[transition])
         graphs.append(graph)
       if continues == len(graphs):
         graphs.append(NfaBuilder.epsilon())


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to