Compile-time assertions to ensure that invariants are met.

This crate is available on crates.io and can be used by adding the following to your project's Cargo.toml :

[dependencies] static_assertions = "0.2.4"

and this to your crate root:

#[ macro_use ] extern crate static_assertions ;

Due to implementation details, some macros can only be used normally from within the context of a function. To use these macros in other contexts, a unique label must be provided.

This issue can be followed here. Feedback and potential solutions are welcome!