summaryrefslogtreecommitdiffstats
path: root/Lib/lib2to3/pgen2/driver.py
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2009-05-09 19:42:23 (GMT)
committerBenjamin Peterson <benjamin@python.org>2009-05-09 19:42:23 (GMT)
commitd481e3d7914d20238c62c76991255b3b2b5e4a17 (patch)
treefb9a3831c561486f09fde515d41410c3f8753007 /Lib/lib2to3/pgen2/driver.py
parentb0ba27dff1442fe6dc7b00ce7d8488afb159d9b8 (diff)
downloadcpython-d481e3d7914d20238c62c76991255b3b2b5e4a17.zip
cpython-d481e3d7914d20238c62c76991255b3b2b5e4a17.tar.gz
cpython-d481e3d7914d20238c62c76991255b3b2b5e4a17.tar.bz2
Merged revisions 72494 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ................ r72494 | benjamin.peterson | 2009-05-08 20:01:14 -0500 (Fri, 08 May 2009) | 21 lines Merged revisions 72491-72493 via svnmerge from svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r72491 | benjamin.peterson | 2009-05-08 19:33:27 -0500 (Fri, 08 May 2009) | 7 lines make 2to3 use unicode internally on 2.x This started out as a fix for #2660, but became this large refactoring when I realized the dire state this was in. 2to3 now uses tokenize.detect_encoding to decode the files correctly into unicode. ........ r72492 | benjamin.peterson | 2009-05-08 19:35:38 -0500 (Fri, 08 May 2009) | 1 line remove compat code ........ r72493 | benjamin.peterson | 2009-05-08 19:54:15 -0500 (Fri, 08 May 2009) | 1 line add a test for \r\n newlines ........ ................
Diffstat (limited to 'Lib/lib2to3/pgen2/driver.py')
-rw-r--r--Lib/lib2to3/pgen2/driver.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/Lib/lib2to3/pgen2/driver.py b/Lib/lib2to3/pgen2/driver.py
index a025b37..ee77a13 100644
--- a/Lib/lib2to3/pgen2/driver.py
+++ b/Lib/lib2to3/pgen2/driver.py
@@ -16,6 +16,7 @@ __author__ = "Guido van Rossum <guido@python.org>"
__all__ = ["Driver", "load_grammar"]
# Python imports
+import codecs
import os
import logging
import sys
@@ -90,9 +91,9 @@ class Driver(object):
"""Parse a stream and return the syntax tree."""
return self.parse_stream_raw(stream, debug)
- def parse_file(self, filename, debug=False):
+ def parse_file(self, filename, encoding=None, debug=False):
"""Parse a file and return the syntax tree."""
- stream = open(filename)
+ stream = codecs.open(filename, "r", encoding)
try:
return self.parse_stream(stream, debug)
finally: