1 | Summary: Recursive descent parsing library for Python based on functional combinators |
---|
2 | Name: python-funcparserlib |
---|
3 | Version: 0.3.6 |
---|
4 | Release: 1%{?_dist_release} |
---|
5 | Group: Development/Libraries |
---|
6 | |
---|
7 | Vendor: Project Vine |
---|
8 | Distribution: Vine Linux |
---|
9 | |
---|
10 | License: MIT License |
---|
11 | URL: https://pypi.org/project/funcparserlib/ |
---|
12 | Source0:https://pypi.python.org/packages/source/f/funcparserlib/funcparserlib-%{version}.tar.gz |
---|
13 | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot |
---|
14 | BuildArch: noarch |
---|
15 | BuildRequires: python-devel |
---|
16 | BuildRequires: python-setuptools |
---|
17 | BuildRequires: python-rpm-macros |
---|
18 | Requires: python |
---|
19 | |
---|
20 | |
---|
21 | %description |
---|
22 | Parser combinators are just higher-order functions that take parsers as |
---|
23 | their arguments and return them as result values. Parser combinators are: |
---|
24 | |
---|
25 | - First-class values |
---|
26 | - Extremely composable |
---|
27 | - Tend to make the code quite compact |
---|
28 | - Resemble the readable notation of xBNF grammars |
---|
29 | |
---|
30 | Parsers made with funcparserlib are pure-Python LL(*) parsers. It means |
---|
31 | that it's very easy to write them without thinking about look-aheads and |
---|
32 | all that hardcore parsing stuff. But the recursive descent parsing is a |
---|
33 | rather slow method compared to LL(k) or LR(k) algorithms. |
---|
34 | |
---|
35 | So the primary domain for funcparserlib is parsing little languages or |
---|
36 | external DSLs (domain specific languages). |
---|
37 | |
---|
38 | |
---|
39 | %package -n python3-funcparserlib |
---|
40 | Summary: Recursive descent parsing library for Python based on functional combinators |
---|
41 | BuildRequires: python3-devel |
---|
42 | BuildRequires: python3-setuptools |
---|
43 | BuildRequires: python3-rpm-macros |
---|
44 | Requires: python3 |
---|
45 | |
---|
46 | %description -n python3-funcparserlib |
---|
47 | Parser combinators are just higher-order functions that take parsers as |
---|
48 | their arguments and return them as result values. Parser combinators are: |
---|
49 | |
---|
50 | - First-class values |
---|
51 | - Extremely composable |
---|
52 | - Tend to make the code quite compact |
---|
53 | - Resemble the readable notation of xBNF grammars |
---|
54 | |
---|
55 | Parsers made with funcparserlib are pure-Python LL(*) parsers. It means |
---|
56 | that it's very easy to write them without thinking about look-aheads and |
---|
57 | all that hardcore parsing stuff. But the recursive descent parsing is a |
---|
58 | rather slow method compared to LL(k) or LR(k) algorithms. |
---|
59 | |
---|
60 | So the primary domain for funcparserlib is parsing little languages or |
---|
61 | external DSLs (domain specific languages). |
---|
62 | |
---|
63 | |
---|
64 | %prep |
---|
65 | %setup -q -n funcparserlib-%{version} |
---|
66 | |
---|
67 | %build |
---|
68 | %py_build |
---|
69 | %py3_build |
---|
70 | |
---|
71 | %install |
---|
72 | %__rm -rf %{buildroot} |
---|
73 | %py_install |
---|
74 | %py3_install |
---|
75 | |
---|
76 | sed -i \ |
---|
77 | -e 's/except NoParseError, e:/except NoParseError as e:/' \ |
---|
78 | %{buildroot}%{python3_sitelib}/funcparserlib/parser.py |
---|
79 | |
---|
80 | %clean |
---|
81 | %__rm -rf %{buildroot} |
---|
82 | |
---|
83 | %files |
---|
84 | %defattr(-,root,root,-) |
---|
85 | %license LICENSE |
---|
86 | %doc CHANGES README doc examples |
---|
87 | %{python_sitelib}/funcparserlib-%{version}-py*.egg-info |
---|
88 | %{python_sitelib}/funcparserlib |
---|
89 | |
---|
90 | %files -n python3-funcparserlib |
---|
91 | %defattr(-,root,root,-) |
---|
92 | %license LICENSE |
---|
93 | %doc CHANGES README doc examples |
---|
94 | %{python3_sitelib}/funcparserlib* |
---|
95 | |
---|
96 | %changelog |
---|
97 | * Thu Nov 21 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.3.6-1 |
---|
98 | - new upstream release. |
---|
99 | - added python3 support. |
---|
100 | |
---|
101 | * Sun Jan 12 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.3.5-3 |
---|
102 | - rebuild with VineSeed environment |
---|
103 | |
---|
104 | * Sun Feb 19 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.3.5-2 |
---|
105 | - rebuild with python-2.7.2 |
---|
106 | |
---|
107 | * Mon May 16 2011 IWAI, Masaharu <iwai@alib.jp> 0.3.5-1 |
---|
108 | - Initial build. |
---|
109 | |
---|
110 | |
---|