Specify what kind of code must be compiled, like the *mode* argument
in :func:`parse`.
+.. cmdoption:: --no-type-comments
+
+ Don't parse type comments.
+
.. cmdoption:: -a, --include-attributes
Include attributes such as line numbers and column offsets.
+.. cmdoption:: -i <indent>
+ --indent <indent>
+
+ Indentation of nodes in AST (number of spaces).
+
If :file:`infile` is specified its contents are parsed to AST and dumped
to stdout. Otherwise, the content is read from stdin.
parser.add_argument('-m', '--mode', default='exec',
choices=('exec', 'single', 'eval', 'func_type'),
help='specify what kind of code must be parsed')
+ parser.add_argument('--no-type-comments', default=True, action='store_false',
+ help="don't add information about type comments")
parser.add_argument('-a', '--include-attributes', action='store_true',
help='include attributes such as line numbers and '
'column offsets')
+ parser.add_argument('-i', '--indent', type=int, default=3,
+ help='indentation of nodes (number of spaces)')
args = parser.parse_args()
with args.infile as infile:
source = infile.read()
- tree = parse(source, args.infile.name, args.mode, type_comments=True)
- print(dump(tree, include_attributes=args.include_attributes, indent=3))
+ tree = parse(source, args.infile.name, args.mode, type_comments=args.no_type_comments)
+ print(dump(tree, include_attributes=args.include_attributes, indent=args.indent))
if __name__ == '__main__':
main()