7 releases (breaking)
0.7.0 | Nov 11, 2024 |
---|---|
0.6.0 | Oct 17, 2024 |
0.5.0 | Apr 26, 2024 |
0.4.1 | Mar 12, 2024 |
0.2.0 | Feb 26, 2024 |
#332 in Parser tooling
160 downloads per month
91KB
1.5K
SLoC
anpa
A generic monadic parser combinator library based on anpa which in turn is inspired by Haskell's parsec.
Features
All parsers and combinators, with few exceptions (many_to_vec
, many_to_map
,
many_to_map_ordered
), are allocation free and can be used with no_std
when disabling
the default features of this crate.
Examples
See the provided test parsers
- JSON parser: JSON DOM parser. It's only ~30 LOC and gives a good overview on how to use the library, including recursive parsers.
- SemVer Parser: a parser for the SemVer format
These parsers can be enabled using the features "json" and "semver" respectively.
Dependencies
None
TODO
- Add examples in doc comments
- Add support for
Read
- More extensive test cases
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.