summary refs log blame commit diff stats
path: root/HACKING.md
blob: 3d3b52e921509bef74a9ca8b8bf6e6c475a3908d (plain) (tree)





















                                                                               
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!