language-python-0.5.0: Parsing and pretty printing of Python code.

Copyright(c) 2009 Bernie Pope
LicenseBSD-style
Maintainerbjpop@csse.unimelb.edu.au
Stabilityexperimental
Portabilityghc
Safe HaskellNone
LanguageHaskell98

Language.Python.Version3.Parser

Contents

Description

A parser for Python version 3.x programs. Parsers are provided for modules, statements, and expressions. The parsers produce comment tokens in addition to the abstract syntax tree.

See:

Synopsis

Parsing modules

parseModule Source

Arguments

:: String

The input stream (python module source code).

-> String

The name of the python source (filename or input device).

-> Either ParseError (ModuleSpan, [Token])

An error or the abstract syntax tree (AST) of the python module and comment tokens.

Parse a whole Python source file. Return comments in addition to the parsed module.

Parsing statements

parseStmt Source

Arguments

:: String

The input stream (python statement source code).

-> String

The name of the python source (filename or input device).

-> Either ParseError ([StatementSpan], [Token])

An error or maybe the abstract syntax tree (AST) of zero or more python statements, plus comments.

Parse one compound statement, or a sequence of simple statements. Generally used for interactive input, such as from the command line of an interpreter. Return comments in addition to the parsed statements.

Parsing expressions

parseExpr Source

Arguments

:: String

The input stream (python statement source code).

-> String

The name of the python source (filename or input device).

-> Either ParseError (ExprSpan, [Token])

An error or maybe the abstract syntax tree (AST) of the python expression, plus comment tokens.

Parse an expression. Generally used as input for the 'eval' primitive. Return comments in addition to the parsed expression.