Other style advice
Expressions
Prefer to use Rust's expression oriented nature where possible;
#![allow(unused)] fn main() { // use let x = if y { 1 } else { 0 }; // not let x; if y { x = 1; } else { x = 0; } }
Names
- Types shall be
UpperCamelCase
, - Enum variants shall be
UpperCamelCase
, - Struct fields shall be
snake_case
, - Function and method names shall be
snake_case
, - Local variables shall be
snake_case
, - Macro names shall be
snake_case
, - Constants (
const
s and immutablestatic
s) shall beSCREAMING_SNAKE_CASE
. - When a name is forbidden because it is a reserved word (such as
crate
), either use a raw identifier (r#crate
) or use a trailing underscore (crate_
). Don't misspell the word (krate
).
Modules
Avoid #[path]
annotations where possible.