diff options
author | Benjamin Peterson <benjamin@python.org> | 2017-12-22 20:18:33 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-22 20:18:33 (GMT) |
commit | 8a5877165e993afb2633cd48da5222326d3f6e0e (patch) | |
tree | 7b526a3ae7ea485ec2f023c03a07a93cc6253363 /Lib/lib2to3/pygram.py | |
parent | 62ed6be8da5fd1142f838582ecdb338af539e85b (diff) | |
download | cpython-8a5877165e993afb2633cd48da5222326d3f6e0e.zip cpython-8a5877165e993afb2633cd48da5222326d3f6e0e.tar.gz cpython-8a5877165e993afb2633cd48da5222326d3f6e0e.tar.bz2 |
bpo-24960: use pkgutil.get_data in lib2to3 to read pickled grammar files (#4977)
This is more complicated than it should be because we need to preserve the
useful mtime-based regeneration feature that lib2to3.pgen2.driver.load_grammar
has. We only look for the pickled grammar file with pkgutil.get_data and only if
the source file does not exist.
Diffstat (limited to 'Lib/lib2to3/pygram.py')
-rw-r--r-- | Lib/lib2to3/pygram.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Lib/lib2to3/pygram.py b/Lib/lib2to3/pygram.py index 01fa108..919624e 100644 --- a/Lib/lib2to3/pygram.py +++ b/Lib/lib2to3/pygram.py @@ -29,12 +29,12 @@ class Symbols(object): setattr(self, name, symbol) -python_grammar = driver.load_grammar(_GRAMMAR_FILE) +python_grammar = driver.load_packaged_grammar("lib2to3", _GRAMMAR_FILE) python_symbols = Symbols(python_grammar) python_grammar_no_print_statement = python_grammar.copy() del python_grammar_no_print_statement.keywords["print"] -pattern_grammar = driver.load_grammar(_PATTERN_GRAMMAR_FILE) +pattern_grammar = driver.load_packaged_grammar("lib2to3", _PATTERN_GRAMMAR_FILE) pattern_symbols = Symbols(pattern_grammar) |