Bladeren bron

Some package fixes

tags/gm/2021-09-23T00Z/github.com--lark-parser-lark/0.5.1
Erez Shinan 7 jaren geleden
bovenliggende
commit
57e8117374
5 gewijzigde bestanden met toevoegingen van 70 en 6 verwijderingen
  1. +1
    -1
      docs/json_tutorial.md
  2. +1
    -2
      examples/calc.py
  3. +2
    -2
      examples/json_parser.py
  4. +6
    -1
      lark/__init__.py
  5. +60
    -0
      setup.py

+ 1
- 1
docs/json_tutorial.md Bestand weergeven

@@ -234,7 +234,7 @@ This is pretty close. Let's write a full transformer that can handle the tokens
Also, our definitions of list and dict are a bit verbose. We can do better:

```python
from lark.tree import Transformer
from lark import Transformer

class TreeToJson(Transformer):
def string(self, (s,)):


+ 1
- 2
examples/calc.py Bestand weergeven

@@ -1,5 +1,4 @@
from lark.tree import InlineTransformer
from lark.lark import Lark
from lark import Lark, InlineTransformer

calc_grammar = """
?start: sum


+ 2
- 2
examples/json_parser.py Bestand weergeven

@@ -1,6 +1,6 @@
import sys
from lark.lark import Lark, inline_args
from lark.tree import Transformer
from lark import Lark, inline_args, Transformer

json_grammar = r"""
?start: value


+ 6
- 1
lark/__init__.py Bestand weergeven

@@ -1 +1,6 @@
from .lark import Lark, Transformer
from .tree import Tree, Transformer, InlineTransformer
from .common import ParseError, GrammarError
from .lark import Lark
from .utils import inline_args

__version__ = "0.1.0"

+ 60
- 0
setup.py Bestand weergeven

@@ -0,0 +1,60 @@
import re
from setuptools import setup

__version__ ,= re.findall('__version__ = "(.*)"', open('lark/__init__.py').read())

setup(
name = "lark-parser",
version = __version__,
packages = ['lark', 'tests', 'lark.parsers', 'examples', 'docs'],

requires = [],
install_requires = [],

package_data = {
'': ['*.md', '*.g'],
'docs': ['*.png'],
},

# metadata for upload to PyPI
author = "Erez Shinan",
author_email = "erezshin@gmail.com",
description = "a modern parsing library",
license = "MIT",
keywords = "Earley LALR parser parsing ast",
url = "https://github.com/erezsh/lark",
download_url = "https://github.com/erezsh/lark/tarball/master",
long_description='''
Lark is a modern general-purpose parsing library for Python.

Lark focuses on simplicity and power. It lets you choose between two parsing algorithms:

Earley : Parses all context-free grammars (even ambiguous ones)! It is the default.
LALR(1): Only LR grammars. Outperforms PLY and most if not all other pure-python parsing libraries.
Both algorithms are written in Python and can be used interchangably with the same grammar (aside for algorithmic restrictions). See "Comparison to other parsers" for more details.

Lark can automagically build an AST from your grammar, without any more code on your part.

Features:

- EBNF grammar with a little extra
- Earley & LALR(1)
- Builds an AST automagically based on the grammar
- Automatic line & column tracking
- Automatic token collision resolution (unless both tokens are regexps)
- Python 2 & 3 compatible
- Unicode fully supported
''',

classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Text Processing :: General",
"License :: OSI Approved :: MIT License",
],

)


Laden…
Annuleren
Opslaan