Ignore:
Timestamp:
Mar 19, 2014, 11:31:01 PM (11 years ago)
Author:
dmik
Message:

python: Merge vendor 2.7.6 to trunk.

Location:
python/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • python/trunk

  • python/trunk/Lib/lib2to3/pgen2/driver.py

    r2 r391  
    2020import os
    2121import logging
     22import StringIO
    2223import sys
    2324
     
    102103    def parse_string(self, text, debug=False):
    103104        """Parse a string and return the syntax tree."""
    104         tokens = tokenize.generate_tokens(generate_lines(text).next)
     105        tokens = tokenize.generate_tokens(StringIO.StringIO(text).readline)
    105106        return self.parse_tokens(tokens, debug)
    106 
    107 
    108 def generate_lines(text):
    109     """Generator that behaves like readline without using StringIO."""
    110     for line in text.splitlines(True):
    111         yield line
    112     while True:
    113         yield ""
    114107
    115108
     
    146139        return True
    147140    return os.path.getmtime(a) >= os.path.getmtime(b)
     141
     142
     143def main(*args):
     144    """Main program, when run as a script: produce grammar pickle files.
     145
     146    Calls load_grammar for each argument, a path to a grammar text file.
     147    """
     148    if not args:
     149        args = sys.argv[1:]
     150    logging.basicConfig(level=logging.INFO, stream=sys.stdout,
     151                        format='%(message)s')
     152    for gt in args:
     153        load_grammar(gt, save=True, force=True)
     154    return True
     155
     156if __name__ == "__main__":
     157    sys.exit(int(not main()))
Note: See TracChangeset for help on using the changeset viewer.