Glue
Glue is a parser combinator framework for parsing text based formats, it is easy to use and relatively fast too.
Usage
use *;
match merge_1.parse
Writing your own parser functions
use *;
assert_eq!;
Pretty human readable error messages
Glue does the hard work of implementing error messages for you, have a look at this example which created the following message:
1 │ foo xxx
· │ ┃
· ┢━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
· ┃ Unexpected 'xxx' ┃
· ┃ Expected bar ┃
· ┃ At 1:7 of path/to/file ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
For more detailed examples, look in the examples directory in the git repository.