Summary: Recursive descent parsing library for Python based on functional combinators Name: python-funcparserlib Version: 0.3.6 Release: 2%{?_dist_release} Group: programming Vendor: Project Vine Distribution: Vine Linux License: MIT License URL: https://pypi.org/project/funcparserlib/ Source0:https://pypi.python.org/packages/source/f/funcparserlib/funcparserlib-%{version}.tar.gz BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot BuildRequires: python-rpm-macros BuildRequires: python-devel BuildRequires: python-setuptools BuildRequires: python2-rpm-macros Requires: python %description Parser combinators are just higher-order functions that take parsers as their arguments and return them as result values. Parser combinators are: - First-class values - Extremely composable - Tend to make the code quite compact - Resemble the readable notation of xBNF grammars Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that it's very easy to write them without thinking about look-aheads and all that hardcore parsing stuff. But the recursive descent parsing is a rather slow method compared to LL(k) or LR(k) algorithms. So the primary domain for funcparserlib is parsing little languages or external DSLs (domain specific languages). %package -n python3-funcparserlib Summary: Recursive descent parsing library for Python based on functional combinators Group: programming BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-rpm-macros Requires: python3 %description -n python3-funcparserlib Parser combinators are just higher-order functions that take parsers as their arguments and return them as result values. Parser combinators are: - First-class values - Extremely composable - Tend to make the code quite compact - Resemble the readable notation of xBNF grammars Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that it's very easy to write them without thinking about look-aheads and all that hardcore parsing stuff. But the recursive descent parsing is a rather slow method compared to LL(k) or LR(k) algorithms. So the primary domain for funcparserlib is parsing little languages or external DSLs (domain specific languages). %prep %setup -q -n funcparserlib-%{version} %build %py2_build %py3_build %install %__rm -rf %{buildroot} %py2_install %py3_install sed -i \ -e 's/except NoParseError, e:/except NoParseError as e:/' \ %{buildroot}%{python3_sitelib}/funcparserlib/parser.py %clean %__rm -rf %{buildroot} %files %defattr(-,root,root,-) %license LICENSE %doc CHANGES README doc examples %{python_sitelib}/funcparserlib-%{version}-py*.egg-info %{python_sitelib}/funcparserlib %files -n python3-funcparserlib %defattr(-,root,root,-) %license LICENSE %doc CHANGES README doc examples %{python3_sitelib}/funcparserlib* %changelog * Sun Aug 16 2020 Tomohiro "Tomo-p" KATO 0.3.6-2 - rebuilt with python-3.8. * Thu Nov 21 2019 Tomohiro "Tomo-p" KATO 0.3.6-1 - new upstream release. - added python3 support. * Sun Jan 12 2014 Yoji TOYODA 0.3.5-3 - rebuild with VineSeed environment * Sun Feb 19 2012 Yoji TOYODA 0.3.5-2 - rebuild with python-2.7.2 * Mon May 16 2011 IWAI, Masaharu 0.3.5-1 - Initial build.