grin/doc/style.md
2017-12-05 00:57:03 +00:00

902 B

Grin Style Guide

Grin uses rustfmt to maintain consistent formatting.

Install rustfmt (nightly)

Note: we assume Rust has been installed via Rustup. See build docs for more info.

rustfmt itself requires the nightly toolchain -

rustup update
rustup install nightly
rustup run nightly cargo install rustfmt-nightly

Install git pre-commit hook

There is a basic git pre-commit hook in the repo.

The pre-commit hook will not prevent commits if style issues are present but it will indicate any files that need formatting.

To enable this, create a symlink in .git/hooks (note the relative path) -

cd .git/hooks
ln -s -f ../../.hooks/pre-commit

Running rustfmt

To run rustfmt against a single file in grin -

cargo +nightly fmt -- ./core/src/lib.rs