[Python-3000-checkins] r53189 - python/branches/p3yk/Parser/asdl.py python/branches/p3yk/Parser/spark.py

fred.drake python-3000-checkins at python.org
Fri Dec 29 05:42:50 CET 2006


Author: fred.drake
Date: Fri Dec 29 05:42:48 2006
New Revision: 53189

Modified:
   python/branches/p3yk/Parser/asdl.py
   python/branches/p3yk/Parser/spark.py
Log:
avoid dict.has_key, since this might get used by a Py3K built in the
working copy


Modified: python/branches/p3yk/Parser/asdl.py
==============================================================================
--- python/branches/p3yk/Parser/asdl.py	(original)
+++ python/branches/p3yk/Parser/asdl.py	Fri Dec 29 05:42:48 2006
@@ -373,7 +373,7 @@
     v.visit(mod)
 
     for t in v.types:
-        if not mod.types.has_key(t) and not t in builtin_types:
+        if t not in mod.types and not t in builtin_types:
             v.errors += 1
             uses = ", ".join(v.types[t])
             print "Undefined type %s, used in %s" % (t, uses)

Modified: python/branches/p3yk/Parser/spark.py
==============================================================================
--- python/branches/p3yk/Parser/spark.py	(original)
+++ python/branches/p3yk/Parser/spark.py	Fri Dec 29 05:42:48 2006
@@ -31,7 +31,7 @@
         for b in c.__bases__:
             classlist.append(b)
         for name in c.__dict__.keys():
-            if not namedict.has_key(name):
+            if name not in namedict:
                 namelist.append(name)
                 namedict[name] = 1
     return namelist
@@ -73,7 +73,7 @@
 
             groups = m.groups()
             for i in range(len(groups)):
-                if groups[i] and self.index2func.has_key(i):
+                if groups[i] and i in self.index2func:
                     self.index2func[i](groups[i])
             pos = m.end()
 
@@ -141,7 +141,7 @@
             for k, v in self.edges.items():
                 if v is None:
                     state, sym = k
-                    if self.states.has_key(state):
+                    if state in self.states:
                         self.goto(state, sym)
                         changes = 1
         rv = self.__dict__.copy()
@@ -188,7 +188,7 @@
             if _preprocess:
                 rule, fn = self.preprocess(rule, func)
 
-            if self.rules.has_key(lhs):
+            if lhs in self.rules:
                 self.rules[lhs].append(rule)
             else:
                 self.rules[lhs] = [ rule ]
@@ -226,7 +226,7 @@
                 #  grammars.
                 #
                 for sym in rhs:
-                    if not self.rules.has_key(sym):
+                    if sym not in self.rules:
                         break
                 else:
                     tbd.append(rule)
@@ -269,7 +269,7 @@
             n = len(rhs)
             while i < n:
                 sym = rhs[i]
-                if not self.rules.has_key(sym) or \
+                if sym not in self.rules or \
                    not self.nullable[sym]:
                     candidate = 0
                     i = i + 1
@@ -286,7 +286,7 @@
                 if candidate:
                     lhs = self._NULLABLE+lhs
                     rule = (lhs, rhs)
-                if self.newrules.has_key(lhs):
+                if lhs in self.newrules:
                     self.newrules[lhs].append(rule)
                 else:
                     self.newrules[lhs] = [ rule ]
@@ -365,7 +365,7 @@
 
         core.sort()
         tcore = tuple(core)
-        if self.cores.has_key(tcore):
+        if tcore in self.cores:
             return self.cores[tcore]
         #
         #  Nope, doesn't exist.  Compute it and the associated
@@ -389,13 +389,13 @@
 
                 nextSym = rhs[pos]
                 key = (X.stateno, nextSym)
-                if not rules.has_key(nextSym):
-                    if not edges.has_key(key):
+                if nextSym not in rules:
+                    if key not in edges:
                         edges[key] = None
                         X.T.append(nextSym)
                 else:
                     edges[key] = None
-                    if not predicted.has_key(nextSym):
+                    if nextSym not in predicted:
                         predicted[nextSym] = 1
                         for prule in rules[nextSym]:
                             ppos = self.skip(prule)
@@ -422,7 +422,7 @@
         core = predicted.keys()
         core.sort()
         tcore = tuple(core)
-        if self.cores.has_key(tcore):
+        if tcore in self.cores:
             self.edges[(k, None)] = self.cores[tcore]
             return k
 
@@ -433,7 +433,7 @@
 
     def goto(self, state, sym):
         key = (state, sym)
-        if not self.edges.has_key(key):
+        if key not in self.edges:
             #
             #  No transitions from state on sym.
             #
@@ -631,7 +631,7 @@
 
         for i in range(len(rhs)-1, -1, -1):
             sym = rhs[i]
-            if not self.newrules.has_key(sym):
+            if sym not in self.newrules:
                 if sym != self._BOF:
                     attr[i] = tokens[k-1]
                     key = (item, k)


More information about the Python-3000-checkins mailing list