]> granicus.if.org Git - python/commitdiff
Merged revisions 65885,65892,65894,65898 via svnmerge from
authorBenjamin Peterson <benjamin@python.org>
Wed, 20 Aug 2008 02:33:00 +0000 (02:33 +0000)
committerBenjamin Peterson <benjamin@python.org>
Wed, 20 Aug 2008 02:33:00 +0000 (02:33 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r65885 | benjamin.peterson | 2008-08-19 17:06:11 -0500 (Tue, 19 Aug 2008) | 1 line

  check that the parser module can handle the new keyword syntax
........
  r65892 | benjamin.peterson | 2008-08-19 20:27:30 -0500 (Tue, 19 Aug 2008) | 1 line

  add a NEWS note for new args syntax
........
  r65894 | benjamin.peterson | 2008-08-19 20:44:45 -0500 (Tue, 19 Aug 2008) | 2 lines

  newSymbolTable is not public API
........
  r65898 | benjamin.peterson | 2008-08-19 21:15:42 -0500 (Tue, 19 Aug 2008) | 1 line

  fix silly errors of mine
........

Lib/symtable.py
Lib/test/test_parser.py

index ac9396c4f8256e710b051284b6022dea82e6f478..9387a67e24285dced61f5885aee7f88e3f257fc9 100644 (file)
@@ -8,15 +8,14 @@ from _symtable import (USE, DEF_GLOBAL, DEF_LOCAL, DEF_PARAM,
 
 import weakref
 
-__all__ = ["symtable", "SymbolTable", "newSymbolTable", "Class",
-           "Function", "Symbol"]
+__all__ = ["symtable", "SymbolTable", "Class", "Function", "Symbol"]
 
 def symtable(code, filename, compile_type):
     raw = _symtable.symtable(code, filename, compile_type)
     for top in raw.values():
         if top.name == 'top':
             break
-    return newSymbolTable(top, filename)
+    return _newSymbolTable(top, filename)
 
 class SymbolTableFactory:
     def __init__(self):
@@ -36,7 +35,7 @@ class SymbolTableFactory:
             obj = self.__memo[key] = self.new(table, filename)
         return obj
 
-newSymbolTable = SymbolTableFactory()
+_newSymbolTable = SymbolTableFactory()
 
 
 class SymbolTable(object):
@@ -111,12 +110,12 @@ class SymbolTable(object):
         return [self.lookup(ident) for ident in self.get_identifiers()]
 
     def __check_children(self, name):
-        return [newSymbolTable(st, self._filename)
+        return [_newSymbolTable(st, self._filename)
                 for st in self._table.children
                 if st.name == name]
 
     def get_children(self):
-        return [newSymbolTable(st, self._filename)
+        return [_newSymbolTable(st, self._filename)
                 for st in self._table.children]
 
 
index e4179620e71f4e78733feaddf07161987f785b86..c1a22ae0957568139110233bcf591a654790f44a 100644 (file)
@@ -66,6 +66,7 @@ class RoundtripLegalSyntaxTestCase(unittest.TestCase):
         self.check_expr("foo(a, b, c, *args)")
         self.check_expr("foo(a, b, c, *args, **kw)")
         self.check_expr("foo(a, b, c, **kw)")
+        self.check_expr("foo(a, *args, keyword=23)")
         self.check_expr("foo + bar")
         self.check_expr("foo - bar")
         self.check_expr("foo * bar")