1# Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 2# Copyright (c) 2009 The Hewlett-Packard Development Company 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are 7# met: redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer; --- 46 unchanged lines hidden (view full) --- 55 parser.add_option("-d", "--debug", default=False, action="store_true", 56 help="Turn on PLY debugging") 57 parser.add_option("-C", "--code-path", default="generated", 58 help="Path where C++ code output code goes") 59 parser.add_option("-H", "--html-path", 60 help="Path where html output goes") 61 parser.add_option("-F", "--print-files", 62 help="Print files that SLICC will generate") |
63 parser.add_option("--tb", "--traceback", action='store_true', 64 help="print traceback on error") |
65 parser.add_option("-q", "--quiet", 66 help="don't print messages") 67 opts,files = parser.parse_args(args=args) 68 69 if len(files) < 1: 70 parser.print_help() 71 sys.exit(2) 72 73 output = nprint if opts.quiet else eprint 74 75 output("SLICC v0.4") |
76 output("Parsing...") |
77 |
78 slicc = SLICC(debug=opts.debug) 79 slicc.load(files) 80 |
81 if opts.print_files: 82 for i in sorted(slicc.files()): 83 print ' %s' % i 84 else: |
85 output("Processing AST...") 86 slicc.process() |
87 |
88 output("Writing C++ files...") |
89 slicc.writeCodeFiles(opts.code_path) 90 91 if opts.html_path: |
92 output("Writing HTML files...") |
93 slicc.writeHTMLFiles(opts.html_path) 94 |
95 output("SLICC is Done.") |
96 97if __name__ == "__main__": 98 main() |