tools package

Submodules

tools.ast_printer module

class tools.ast_printer.AstPrinter

Bases: ExprVisitor

parenthesize(name, *exprs)
print_ast(expr)
visit_binary(binary)
visit_grouping(grouping)
visit_literal(literal)
visit_unary(unary)

tools.generate_ast module

class tools.generate_ast.GenerateAst

Bases: object

static define_ast(output_dir, base_name, types)

Generate the AST classes and its subclasses

static define_type(file, base_name, class_name, field_list)

Generate code for a specific type of AST node

static define_visitor(writer, base_name, types)
static main(args)

tools.raise_error module

tools.raise_error.error(token: Token, message: str) None

Reports an error at a specific token.

tools.raise_error.report(line: int, pos_where: str, message: str)

Formats and reports an error message.

tools.raise_error.runtime_error(error: CustomRunTimeError) None

Handles runtime errors by printing the error message.

Module contents