Summary: Spent a couple hours customizing the clang-format rules to better match the desired code style.
Reviewed By: IanChilds
Differential Revision: D3714510
fbshipit-source-id: f6d0436346416aab023aacbedd70ea189e583e8d
Summary: This code used to be auto generated. Let's let clang-format clean up some stuff for us.
Reviewed By: lucasr
Differential Revision: D3662225
fbshipit-source-id: ddd4064cbf9be21ca6a97001ace1b56b4314c86f
Summary: assert.h assertion gets stripped from builds. I don't want these assertions to be stripped so implement a custom assert macro. This also allows the assertion to be documented with a message.
Reviewed By: javache
Differential Revision: D3648805
fbshipit-source-id: a6bf1bb55e1e0ee37284647ab76d66f3956a66c0
Summary: #pragma once is widely supported and is a lot harder to get wrong than #ifdef include guards.
Reviewed By: lucasr
Differential Revision: D3648895
fbshipit-source-id: faf42cda82764adaf41cf3f3f9109d48aea203fe
Summary: stdint.h defines the modern standard c types which have a fixed memory size. This makes the program run more predictably as well as removing the need to ugly double work types such as `unsigned int` or `long long`.
Reviewed By: lucasr
Differential Revision: D3649096
fbshipit-source-id: dc9fc8861c3106494c5d00d6ac337da50a4c945b