| Crates.io | lip |
| lib.rs | lip |
| version | 8.1.2 |
| created_at | 2020-03-24 21:30:31.649134+00 |
| updated_at | 2023-06-25 21:20:13.691895+00 |
| description | Lip provides powerful parser combinators for creating reusable and flexible parsers. |
| homepage | |
| repository | https://github.com/AlienKevin/lip |
| max_upload_size | |
| id | 222451 |
| size | 2,122,253 |

Lip provides powerful parser combinators for creating reusable and flexible parsers.
// Parse an (x, y) position pair
use lip::*;
let position = succeed!(|x, y| (x, y))
.keep(int())
.skip(token(","))
.keep(int())
.run("2,3", ()); // run this parser on string "2,3" without extra states
// when parsing finished, position == (2, 3)
Reading the parser combinator by Bodil is an excellent way to know how parser combinators work.
MIT
Based on Bodil's Parser Combinator Tutorial and Evan's elm/paser.