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 (
consts and immutablestatics) 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.