From 25941bbfb8beaf593779d8ac22fbb93cac49128a Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Tue, 23 May 2017 14:36:45 -0400 Subject: [PATCH] A parso docstring. --- parso/__init__.py | 19 +++++++++++++++++++ parso/grammar.py | 2 +- parso/tree.py | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/parso/__init__.py b/parso/__init__.py index 1b0169f..7597448 100644 --- a/parso/__init__.py +++ b/parso/__init__.py @@ -1,3 +1,22 @@ +""" +parso is a Python parser. It's really easy to use and supports multiple Python +versions, file caching, round-trips and other stuff: + +>>> from parso import load_python_grammar +>>> grammar = load_python_grammar(version='2.7') +>>> module = grammar.parse('hello + 1') +>>> stmt = module.children[0] +>>> stmt +PythonNode(simple_stmt, [PythonNode(arith_expr, [...]), ]) +>>> stmt.get_code() +'hello + 1' +>>> name = stmt.children[0].children[0] +>>> name + +>>> name.end_pos +(1, 5) +""" + from parso.parser import ParserSyntaxError from parso.grammar import create_grammar, load_python_grammar diff --git a/parso/grammar.py b/parso/grammar.py index fdf715c..152c768 100644 --- a/parso/grammar.py +++ b/parso/grammar.py @@ -128,7 +128,7 @@ def create_grammar(text, tokenizer=generate_tokens, parser=BaseParser): """ :param text: A BNF representation of your grammar. """ - return grammar.Grammar(text, tokenizer=tokenizer, parser=parser) + return Grammar(text, tokenizer=tokenizer, parser=parser) def load_python_grammar(version=None): diff --git a/parso/tree.py b/parso/tree.py index 51e1440..0b0c780 100644 --- a/parso/tree.py +++ b/parso/tree.py @@ -208,7 +208,7 @@ class Leaf(NodeOrLeaf): @utf8_repr def __repr__(self): - return "<%s: %s start=%s>" % (type(self).__name__, self.value, self.start_pos) + return "<%s: %s>" % (type(self).__name__, self.value) class BaseNode(NodeOrLeaf):