The kind traits

Rust types can be classified in various useful ways according to intrinsic properties of the type. These classifications, often called 'kinds', are represented as traits.

They cannot be implemented by user code, but are instead implemented by the compiler automatically for the types to which they apply.

The 4 kinds are

Copy types include both implicitly copyable types that the compiler will copy automatically and non-implicitly copyable types that require the copy keyword to copy. Types that do not implement Copy may instead implement Clone.

Trait Copy

Trait Freeze

Trait Send

Trait Sized