ark is a parsing toolkit for Python, built with a focus on ergonomics, performance and modularity. Lark can parse all context-free languages. To put it simply, it means that it is capable of parsing almost any programming language out there, and to some degree most natural languages too. What can it do? - Parse all context-free grammars, and handle any ambiguity gracefully - Build an annotated parse-tree automagically, no construction code required. - Provide first-rate performance in terms of both Big-O complexity and measured run-time (considering that this is Python ;) - Run on every Python interpreter (it's pure-python) - Generate a stand-alone parser (for LALR(1) grammars) - And many more features. Read ahead and find out! Most importantly, Lark will save you time and prevent you from getting parsing headaches. WWW: https://github.com/lark-parser/lark
30 lines
910 B
Makefile
30 lines
910 B
Makefile
# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
|
|
|
|
PORTNAME= lark
|
|
PORTVERSION= 1.1.2
|
|
CATEGORIES= devel python
|
|
MASTER_SITES= CHEESESHOP
|
|
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
|
|
|
MAINTAINER= sunpoet@FreeBSD.org
|
|
COMMENT= Modern parsing library
|
|
|
|
LICENSE= MIT
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
|
|
USES= python:3.7+
|
|
USE_PYTHON= autoplist concurrent distutils
|
|
|
|
NO_ARCH= yes
|
|
|
|
OPTIONS_DEFINE= ATOMIC_CACHE NEARLEY REGEX
|
|
OPTIONS_DEFAULT=ATOMIC_CACHE REGEX
|
|
ATOMIC_CACHE_DESC= Multiprocess caching and crash recovery support
|
|
NEARLEY_DESC= Import grammars from Nearley.js
|
|
REGEX_DESC= Use third-party regex instead of standard library re
|
|
|
|
ATOMIC_CACHE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}atomicwrites>=0:devel/py-atomicwrites@${PY_FLAVOR}
|
|
NEARLEY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Js2Py>=0:devel/py-Js2Py@${PY_FLAVOR}
|
|
REGEX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}regex>=0:textproc/py-regex@${PY_FLAVOR}
|
|
|
|
.include <bsd.port.mk>
|