Variables Data Types Ownership and Borrowing Control Flow Functions and Closures Enums Structs Traits Option and Result Error Handling Smart Pointers Lifetimes Modules Macros Concurrency