# Summary - [Rust By Practice](why-exercise.md) - [Variables](variables.md) - [Basic Types](basic-types/intro.md) - [Numbers](basic-types/numbers.md) - [Char, Bool and Unit](basic-types/char-bool-unit.md) - [Statements and Expressions](basic-types/statements-expressions.md) - [Functions](basic-types/functions.md) - [Ownership and Borrowing](ownership/intro.md) - [Ownership](ownership/ownership.md) - [Reference and Borrowing](ownership/borrowing.md) - [Compound Types doing](compound-types/intro.md) - [string](compound-types/string.md) - [array todo](compound-types/array.md) - [slice todo](compound-types/slice.md) - [tuple todo](compound-types/tuple.md) - [struct todo](compound-types/struct.md) - [enum todo](compound-types/enum.md) - [Flow Control todo](flow-control.md) - [Pattern Match todo](pattern-match/intro.md) - [match, if let](pattern-match/match-iflet.md) - [Option destructing](pattern-match/option.md) - [Patterns](pattern-match/patterns.md) - [Method todo](method.md) - [Generics and Traits todo](generics-traits/intro.md) - [Generics](generics-traits/generics.md) - [Traits](generics-traits/traits.md) - [Trait Object](generics-traits/trait-object.md) - [Advance Traits](generics-traits/advance-traits.md) - [Collection Types todo](collections/intro.md) - [Vector](collections/vector.md) - [HashMap](collections/hashmap.md) - [Type Conversion todo](type-conversion.md) - [Result and panic todo](result-panic/intro.md) - [panic!](result-panic/panic.md) - [result and ?](result-panic/result.md) - [Crate and module todo](crate-module/intro.md) - [Crate](crate-module/crate.md) - [Module](crate-module/module.md) - [use and pub](crate-module/use-pub.md) - [Comments and Docs todo](comments-docs.md) - [Formatted output todo](formatted-output.md) - [Lifetime todo](lifetime/intro.md) - [basic](lifetime/basic.md) - [&'static and T: 'static](lifetime/static.md) - [advance](lifetime/advance.md) - [Functional programing todo](functional-programing/intro.md) - [Closure](functional-programing/cloure.md) - [Iterator](functional-programing/iterator.md) - [newtype and Sized todo](newtype-sized.md) - [Smart pointers todo](smart-pointers/intro.md) - [Box](smart-pointers/box.md) - [Deref](smart-pointers/deref.md) - [Drop](smart-pointers/drop.md) - [Rc and Arc](smart-pointers/rc-arc.md) - [Cell and RefCell](smart-pointers/cell-refcell.md) - [Weak and Circle reference todo](weak.md) - [Self referential todo](self-referential.md) - [Threads todo](threads/intro.md) - [Basic using](threads/basic-using.md) - [Message passing](threads/message-passing.md) - [Sync](threads/sync.md) - [Atomic](threads/atomic.md) - [Send and Sync](threads/send-sync.md) - [Global variables todo](global-variables.md) - [Errors todo](errors.md) - [Unsafe doing](unsafe/intro.md) - [Inline assembly](unsafe/inline-asm.md) - [Macro todo](macro.md) - [Tests todo](tests/intro.md) - [Write Tests](tests/write-tests.md) - [Benchmark](tests/benchmark.md) - [Unit and Integration](tests/unit-integration.md) - [Assertions](tests/assertions.md) - [Async/Await todo](async/intro.md) - [async and await!](async/async-await.md) - [Future](async/future.md) - [Pin and Unpin](async/pin-unpin.md) - [Stream](async/stream.md)