diff options
Diffstat (limited to 'Rust.md')
-rw-r--r-- | Rust.md | 48 |
1 files changed, 48 insertions, 0 deletions
@@ -0,0 +1,48 @@ +[[Why it is good to learn rust]] +[[A cool tool that visualizes the borrow checker]] +[[Rust principles]] +[[Cargo]] +[[Items that are always imported by default in Rust are called the prelude]] +[[Static class functions are called associated functions]] +[[References are also immutable by default]] +[[Random numbers in Rust]] +[[Pattern matching with a match expression]] +[[Shadowing variables]] +[[Integers can overflow if compiled with --release]] +[[Char is a unicode scalar value]] +[[Unlike integers floats do not have an architecture dependent size]] +[[Why is it called destructuring]] +[[Accessing a tuple by index is different from an array]] +[[An empty tuple is called a unit]] +[[Primitive values such as the array are allocated on the stack]] +[[Arrays are useful when you know the length will not change]] +[[Array notation]] +[[A scope block is an expression]] +[[Adding a semicolon to the end of a line turns it into a statement]] +[[How to return from a function]] +[[Statement vs expression]] +[[There is no truthiness]] +[[If is not a statement but an expression]] +[[Returning values from loops]] +[[Loop over an array with for-in]] +[[Undefined behaviour is caught by the compiler]] +[[Variables lives on the stack]] +[[To put data on the heap use a Box]] +[[Cloning a box does a deep copy of the heap data]] +[[Aliasing just means that multiple variables point to the same heap data]] +[[A place is anything that is valid to put on the left-hand side of an assignment]] +[[Ownership]] +[[Dereferencing is to access the data behind a pointer]] +[[Aliasing just means that multiple variables point to the same heap data]] +[[Variables are subject to permissions similar to files on linux]] +[[References temporarily remove permissions]] +[[Creating a reference to a variable is called borrowing]] +[[It is illegal to create a mutable reference while an immutable reference is live]] +[[Data must outlive any references to it]] +[[Move ownership out of the function]] +[[Return a static literal]] +[[Defer borrow checking to runtime with garbage collection]] +[[Provide a slot by the caller]] +[[Clone a reference in a function to modify it]] +[[Shortening the lifetime of borrowed variables before mutating it]] + |