This repo contains code to mirror other repos. It also contains the code that is getting mirrored.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Rogdham bb123e0999 Examples: add import example vor 5 Jahren
..
relative-imports Examples: add import example vor 5 Jahren
standalone Changing changes from .lrk to .lark vor 6 Jahren
README.md Docs: Fixup vor 5 Jahren
__init__.py Added examples (calc, json) vor 7 Jahren
calc.py Improved documentation and code style (minor) vor 6 Jahren
conf_earley.py Improved documentation and code style (minor) vor 6 Jahren
conf_lalr.py Improved documentation and code style (minor) vor 6 Jahren
custom_lexer.py Trimmed whitespaces and ensured a new line on the end of the file vor 5 Jahren
error_reporting_lalr.py Fixed examples for error reporting vor 6 Jahren
fruitflies.png Improved Readme vor 6 Jahren
fruitflies.py Improved Readme vor 6 Jahren
indented_tree.py Added option to provide a custom lexer (with example) vor 6 Jahren
json_parser.py Improved documentation and code style (minor) vor 6 Jahren
lark.lark Examples: update lark.lark vor 5 Jahren
lark_grammar.py Examples: add import example vor 5 Jahren
python2.lark Trimmed whitespaces and ensured a new line on the end of the file vor 5 Jahren
python3.lark number add BIN_NUMBER vor 5 Jahren
python_parser.py Merge branch 'file-ext-change' of https://github.com/RobRoseKnows/lark into RobRoseKnows-file-ext-change vor 6 Jahren
qscintilla_json.py Improved docs vor 6 Jahren
reconstruct_json.py Fixed reconstruct vor 6 Jahren
turtle_dsl.py Earley now uses dynamic lexer by default. Bump to version 0.3.0 vor 7 Jahren

README.md

Examples for Lark

How to run the examples

After cloning the repo, open the terminal into the root directory of the project, and run the following:

[lark]$ python -m examples.<name_of_example>

For example, the following will parse all the Python files in the standard library of your local installation:

[lark]$ python -m examples.python_parser

Beginners

  • calc.py - A simple example of a REPL calculator
  • json_parser.py - A simple JSON parser (comes with a tutorial, see docs)
  • indented_tree.py - A demonstration of parsing indentation (“whitespace significant” language)
  • fruitflies.py - A demonstration of ambiguity
  • turtle_dsl.py - Implements a LOGO-like toy language for Python’s turtle, with interpreter.
  • lark_grammar.py + lark.lark - A reference implementation of the Lark grammar (using LALR(1) + standard lexer)

Advanced

  • error_reporting_lalr.py - A demonstration of example-driven error reporting with the LALR parser
  • python_parser.py - A fully-working Python 2 & 3 parser (but not production ready yet!)
  • conf_lalr.py - Demonstrates the power of LALR’s contextual lexer on a toy configuration language
  • conf_earley.py - Demonstrates the power of Earley’s dynamic lexer on a toy configuration language
  • custom_lexer.py - Demonstrates using a custom lexer to parse a non-textual stream of data
  • reconstruct_json.py - Demonstrates the experimental text-reconstruction feature