# Summary - [Welcome](01_intro/00_welcome.md) - [Syntax](01_intro/01_syntax.md) - [A Basic Calculator](02_basic_calculator/00_intro.md) - [Integers](02_basic_calculator/01_integers.md) - [Variables](02_basic_calculator/02_variables.md) - [Branching: `if`/`else`](02_basic_calculator/03_if_else.md) - [Panics](02_basic_calculator/04_panics.md) - [Factorial](02_basic_calculator/05_factorial.md) - [Loops: `while`](02_basic_calculator/06_while.md) - [Loops: `for`](02_basic_calculator/07_for.md) - [Overflow and underflow](02_basic_calculator/08_overflow.md) - [Saturating arithmetic](02_basic_calculator/09_saturating.md) - [Conversions: `as` casting](02_basic_calculator/10_as_casting.md) - [Ticket v1](03_ticket_v1/00_intro.md) - [Structs](03_ticket_v1/01_struct.md) - [Validation](03_ticket_v1/02_validation.md) - [Modules](03_ticket_v1/03_modules.md) - [Visibility](03_ticket_v1/04_visibility.md) - [Encapsulation](03_ticket_v1/05_encapsulation.md) - [Ownership](03_ticket_v1/06_ownership.md) - [Setters](03_ticket_v1/07_setters.md) - [Stack](03_ticket_v1/08_stack.md) - [Heap](03_ticket_v1/09_heap.md) - [References in memory](03_ticket_v1/10_references_in_memory.md) - [Destructors](03_ticket_v1/11_destructor.md) - [Outro](03_ticket_v1/12_outro.md) - [Traits](04_traits/00_intro.md) - [Trait](04_traits/01_trait.md) - [Orphan rule](04_traits/02_orphan_rule.md) - [Operator overloading](04_traits/03_operator_overloading.md) - [Derive macros](04_traits/04_derive.md) - [Trait bounds](04_traits/05_trait_bounds.md) - [String slices](04_traits/06_str_slice.md) - [`Deref` trait](04_traits/07_deref.md) - [`Sized` trait](04_traits/08_sized.md) - [`From` trait](04_traits/09_from.md) - [Associated vs generic types](04_traits/10_assoc_vs_generic.md) - [`Clone` trait](04_traits/11_clone.md) - [`Copy` trait](04_traits/12_copy.md) - [`Drop` trait](04_traits/13_drop.md) - [Outro](04_traits/14_outro.md) - [Ticket v2](05_ticket_v2/00_intro.md) - [Enums](05_ticket_v2/01_enum.md) - [Branching: `match`](05_ticket_v2/02_match.md) - [Variants with data](05_ticket_v2/03_variants_with_data.md) - [Branching: `if let` and `let/else`](05_ticket_v2/04_if_let.md) - [Nullability](05_ticket_v2/05_nullability.md) - [Fallibility](05_ticket_v2/06_fallibility.md) - [Unwrap](05_ticket_v2/07_unwrap.md) - [Error enums](05_ticket_v2/08_error_enums.md) - [`Error` trait](05_ticket_v2/09_error_trait.md) - [Packages](05_ticket_v2/10_packages.md) - [Dependencies](05_ticket_v2/11_dependencies.md) - [`thiserror`](05_ticket_v2/12_thiserror.md) - [`TryFrom` trait](05_ticket_v2/13_try_from.md) - [`Error::source`](05_ticket_v2/14_source.md) - [Outro](05_ticket_v2/15_outro.md) - [Ticket Management](06_ticket_management/00_intro.md) - [Arrays](06_ticket_management/01_arrays.md) - [Vectors](06_ticket_management/02_vec.md) - [Resizing](06_ticket_management/03_resizing.md) - [Iterators](06_ticket_management/04_iterators.md) - [Iter](06_ticket_management/05_iter.md) - [Lifetimes](06_ticket_management/06_lifetimes.md) - [Combinators](06_ticket_management/07_combinators.md) - [`impl Trait`](06_ticket_management/08_impl_trait.md) - [`impl Trait`, pt.2](06_ticket_management/09_impl_trait_2.md) - [Slices](06_ticket_management/10_slices.md) - [Mutable slices](06_ticket_management/11_mutable_slices.md) - [Two states](06_ticket_management/12_two_states.md) - [`Index` trait](06_ticket_management/13_index.md) - [`IndexMut` trait](06_ticket_management/14_index_mut.md) - [`HashMap`](06_ticket_management/15_hashmap.md) - [`BTreeMap`](06_ticket_management/16_btreemap.md) - [Threads](07_threads/00_intro.md) - [Threads](07_threads/01_threads.md) - [`'static` lifetime](07_threads/02_static.md) - [Leaking memory](07_threads/03_leak.md) - [Scoped threads](07_threads/04_scoped_threads.md) - [Channels](07_threads/05_channels.md) - [Interior mutability](07_threads/06_interior_mutability.md) - [Ack pattern](07_threads/07_ack.md) - [Client](07_threads/08_client.md) - [Bounded channels](07_threads/09_bounded.md) - [Patching](07_threads/10_patch.md) - [`Mutex`, `Send` and `Arc`](07_threads/11_locks.md) - [`RwLock`](07_threads/12_rw_lock.md) - [Without channels](07_threads/13_without_channels.md) - [`Sync` trait](07_threads/14_sync.md) - [Futures](08_futures/00_intro.md) - [Asynchronous functions](08_futures/01_async_fn.md) - [Spawning tasks](08_futures/02_spawn.md) - [Runtime](08_futures/03_runtime.md) - [Future trait](08_futures/04_future.md) - [Blocking the runtime](08_futures/05_blocking.md) - [Async-aware primitives](08_futures/06_async_aware_primitives.md) - [Cancellation](08_futures/07_cancellation.md) - [Outro](08_futures/08_outro.md) * [Going further](going_further.md)