Toggle navigation
1.
Introduction
2.
Style
2.1.
Whitespace
2.2.
Comments
2.3.
Braces, semicolons, commas
2.4.
Naming
2.4.1.
Ownership variants
2.4.2.
Containers/wrappers
2.4.3.
Conversions
2.4.4.
Iterators
2.5.
Imports
2.6.
Organization
3.
Guidelines by Rust feature
3.1.
Let binding
3.2.
Pattern matching
3.3.
Loops
3.4.
Functions and methods
3.4.1.
Input
3.4.2.
Output
3.4.3.
For convenience
3.5.
Types
3.5.1.
Conversions
3.5.2.
The newtype pattern
3.6.
Traits
3.6.1.
For generics
3.6.2.
For objects
3.6.3.
For overloading
3.6.4.
For extensions
3.6.5.
For reuse
3.6.6.
Common traits
3.7.
Modules
3.8.
Crates
4.
Ownership and resources
4.1.
Constructors
4.2.
Builders
4.3.
Destructors
4.4.
RAII
4.5.
Cells and smart pointers
5.
Errors
5.1.
Signaling
5.2.
Handling
5.3.
Propagation
5.4.
Ergonomics
6.
Safety and guarantees
6.1.
Using unsafe
6.2.
Library guarantees
7.
Testing
7.1.
Unit testing
8.
FFI, platform-specific code
Handling errors
Use thread isolation to cope with failure. [FIXME]
[FIXME]
Explain how to isolate threads and detect thread failure for recovery.
Consuming
Result
[FIXME]