From 69652efe8ad9738a94fef571c8b81e342f96e7b4 Mon Sep 17 00:00:00 2001 From: SoniEx2 Date: Sun, 7 Feb 2021 22:19:21 -0300 Subject: Finish porting parser --- HACKING.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 HACKING.md (limited to 'HACKING.md') diff --git a/HACKING.md b/HACKING.md new file mode 100644 index 0000000..3d3b52e --- /dev/null +++ b/HACKING.md @@ -0,0 +1,22 @@ +Developer notes +=============== + +This file documents some potentially-unfamiliar patterns contained within this +codebase. + +`boolinator` +------------ + +This crate makes use of `boolinator` in places. Make sure you're familiar with +it. + +`bool?` (or close enough) +------------------------- + +Rust doesn't have `?` on `bool`. This crate uses an `&& { side_effects; true }` +pattern sometimes. The PEG-like parser uses a `bry!` macro (`try!` for bools). + +`proptest` +---------- + +This crate makes extensive use of proptests, because they are awesome! -- cgit 1.4.1