diff --git a/slides/src/control.md b/slides/src/control.md index fe5b8163111787658ce90a3806821dbcbd5348e5..5279524abd711aaac66ef0c81fb1f8a751ee1a03 100644 --- a/slides/src/control.md +++ b/slides/src/control.md @@ -36,7 +36,7 @@ fn main() { ## La boucle infinie: `loop` -```rust [] ignore +```rust ignore [] fn main() { loop { println!("En boucle!"); diff --git a/slides/src/errors.md b/slides/src/errors.md index eb96c9c11a54cad331de84d1d0839e5aa7812041..4d98114e26dcb7db1067de6d57c7fccf65f27e3b 100644 --- a/slides/src/errors.md +++ b/slides/src/errors.md @@ -9,7 +9,7 @@ ## `panic!()` -```rust [2-4|] should_panic +```rust should_panic [2-4|] fn elem(v: &[i32], i: usize) -> i32 { if i >= v.len() { panic!("Erreur fatale!"); @@ -67,7 +67,7 @@ stack backtrace: ## Asserts -```rust [4,6,7|] should_panic +```rust should_panic [4,6,7|] fn main() { let num = 1; let denum = 0; @@ -131,7 +131,7 @@ fn main() { ## Options: `unwrap()` -```rust [11|] should_panic +```rust should_panic [11|] fn div(num: i32, denum: i32) -> Option<i32> { if denum == 0 { None @@ -179,7 +179,7 @@ fn main() { ## `unwrap()` -```rust [10|] should_panic +```rust should_panic [10|] fn elem(v: &[i32], i: usize) -> Result<i32, &str> { if i >= v.len() { return Err("L'index est trop grand!") @@ -192,4 +192,4 @@ fn main() { let res = elem(&v, 100).unwrap(); println!("L'élément est {}", res); } -``` \ No newline at end of file +``` diff --git a/slides/src/generics.md b/slides/src/generics.md index a84135d1316f44b00c01bbe3bf59fd4d237c5488..a96b13f7099ce83186dba2b7b67be2dfe7cef185 100644 --- a/slides/src/generics.md +++ b/slides/src/generics.md @@ -27,7 +27,7 @@ fn main() { ## Exemple avec générique (concept) -```rust [1|2|] compile_fail +```rust compile_fail [1|2|] fn max<T>(a: T, b: T) -> T { if a > b { a } else { b } } @@ -54,7 +54,7 @@ fn main() { ## Un seul type générique -```rust [6-7|8|] compile_fail +```rust compile_fail [6-7|8|] struct Point<T> { x: T, y: T, diff --git a/slides/src/lifetimes.md b/slides/src/lifetimes.md index b1d7834c84e47ac4b8c935fa5c8a28ec43752480..4b5f508f63570dfc68957442cf02a76d2be50ae0 100644 --- a/slides/src/lifetimes.md +++ b/slides/src/lifetimes.md @@ -7,7 +7,7 @@ ## Problématique -```rust [2|3-6|7|] compile_fail +```rust compile_fail [2|3-6|7|] fn main() { let r; { @@ -20,7 +20,7 @@ fn main() { ## Durée de vie: annotation -```rust [] compile_fail +```rust compile_fail [] fn main() { let r: &'a i32; // --------+-- 'a { // | @@ -42,7 +42,7 @@ fn main() { ## Exemple -```rust [8-13|1,7|] compile_fail +```rust compile_fail [8-13|1,7|] fn longest(x: &str, y: &str) -> &str { if x.len() > y.len() { x @@ -82,7 +82,7 @@ fn main() { * Ne permet pas d'augmenter une durée de vie, * Le compilateur vérifie que la durée de vie est **compatible** avec la durée de vie. -```rust [] ignore +```rust ignore [] &T // référence &'a T // référence avec durée de vie a &'a mut T // référence mutable avec durée de vie a diff --git a/slides/src/methods.md b/slides/src/methods.md index 4242165f86b5e5009601f9e6d6fa53b81d826cd5..56a7d279e03778377338e4c9189d13645b195f17 100644 --- a/slides/src/methods.md +++ b/slides/src/methods.md @@ -45,7 +45,7 @@ fn main() { ## Le mot-clé `self` -```rust [6-9|10-12|16-18|] compile_fail +```rust compile_fail [6-9|10-12|16-18|] struct Rectangle { width: u32, height: u32, diff --git a/slides/src/modules.md b/slides/src/modules.md index 591faf124ae2ea27d9720bed26902fb2ec991b13..31e55fdf1b3cf0844a5a7c53d1f57d21326464ff 100644 --- a/slides/src/modules.md +++ b/slides/src/modules.md @@ -55,7 +55,7 @@ fn main() { ## Le contenu d'un module est privé -```rust [2-3,6|] compile_fail +```rust compile_fail [2-3,6|] mod hepia { fn uni_automne() { } @@ -114,7 +114,7 @@ ecole ## Les fichiers et visibilité -```rust [1-3|4-6|7-8|9-10|11-12|13-17|] ignore +```rust ignore [1-3|4-6|7-8|9-10|11-12|13-17|] // dans lib.rs pub mod hepia; pub mod heg; @@ -153,4 +153,4 @@ pub | pub ( self ) // public dans le module courant | pub ( super ) // public dans le module parent | pub ( in path ) // public dans le path explicite -``` \ No newline at end of file +``` diff --git a/slides/src/ownership.md b/slides/src/ownership.md index 19c914b7776a54b04c93bb0b5c537fc20d8c73b9..281d402bd92fcd80f4415984afe1e19dabf72b28 100644 --- a/slides/src/ownership.md +++ b/slides/src/ownership.md @@ -117,7 +117,7 @@ fn main() { ## Changement de propriétaire: invalide -```rust [7-8|9|] compile_fail +```rust compile_fail [7-8|9|] fn main() { let mut y = Vec::new(); for i in 0..5 { @@ -167,7 +167,7 @@ fn main() { ## Lors du passage en paramètre à une fonction -```rust [1-3,8|] compile_fail +```rust compile_fail [1-3,8|] fn take_own(_v: Vec<i32>) { // on fait des choses } @@ -242,7 +242,7 @@ fn main() { ## Exemple 2 -```rust [1-4,10|] compile_fail +```rust compile_fail [1-4,10|] fn get_len(v: &Vec<i32>) -> usize { v.push(2); // on ajoute 2 à v v.len() @@ -281,7 +281,7 @@ fn main() { ## Sans la règle sur la référence mutable -```rust [2|3|4|5-6|] compile_fail +```rust compile_fail [2|3|4|5-6|] fn main() { let mut y = Vec::new(); let z = &y; diff --git a/slides/src/smart_pointers.md b/slides/src/smart_pointers.md index 5f5dbcf559a312c074c721dacd8be714a0a03a0b..2eee5f58b304498fefc8c296f9cb65063f87ab87 100644 --- a/slides/src/smart_pointers.md +++ b/slides/src/smart_pointers.md @@ -68,7 +68,7 @@ fn main() { ## Cas pratique: la liste chaînée -```rust [1,4|2-3|1-4|] compile_fail +```rust compile_fail [1,4|2-3|1-4|] enum List { Elem(i32, List), Nil, diff --git a/slides/src/types.md b/slides/src/types.md index 3d66c117891d30837c0880aa460604a2a498cc0e..512484ee4836858d064da3d250f165cf7fc45eac 100644 --- a/slides/src/types.md +++ b/slides/src/types.md @@ -48,7 +48,7 @@ fn main() { - La conversion implicite **n'existe pas**. -```rust [2|] compile_fail +```rust compile_fail [2|] fn main() { let x:i64 = 5i32; // entier 32 bits dans une variable 64 bits } @@ -66,7 +66,7 @@ fn main() { ## Les entiers (3/3) - Le dépassement de capacité est **interdit**. -```rust [4|] compile_fail +```rust compile_fail [4|] fn main() { let x:i32 = 12345678; let y:i32 = 12345678; @@ -84,7 +84,7 @@ fn main() { - On ne **peut pas** convertir implicitement d'un type à un autre. -```rust [2|] compile_fail +```rust compile_fail [2|] fn main() { let x:f64 = 3.14159265359f32; // flottant 32 bits en flottant 64 bits } diff --git a/slides/src/types_avances.md b/slides/src/types_avances.md index 76b1b4c529fa48cef0e1ae55142f120655a4c539..c808e65e11cb53d2c3c43d4967da4e5233309f1e 100644 --- a/slides/src/types_avances.md +++ b/slides/src/types_avances.md @@ -239,7 +239,7 @@ fn main() { ## `match`: bras manquant -```rust [8-10|] compile_fail +```rust compile_fail [8-10|] enum TypeEnum { Id1, Id2, diff --git a/slides/src/variables.md b/slides/src/variables.md index fff742a40241fe4bda6129b2777b66d2e9dd8b68..5f4077cf210e8bf2bcd869c240c520c830c29c8e 100644 --- a/slides/src/variables.md +++ b/slides/src/variables.md @@ -40,7 +40,7 @@ fn main() { ## Interdiction: utilisation sans initialisation -```rust [2-3|] compile_fail +```rust compile_fail [2-3|] fn main() { let x: i32; println!("La valeur de x est: {}", x); @@ -60,7 +60,7 @@ fn main() { ## Portée: pas ok -```rust [2-5|6|] compile_fail +```rust compile_fail [2-5|6|] fn main() { { let x = 5; @@ -88,7 +88,7 @@ fn main() { ## Mutabilité/**Immutabilité** -```rust [2|3|] compile_fail +```rust compile_fail [2|3|] fn main() { let x = 5; // variable immutable x = 6; // interdit diff --git a/slides/src/vec.md b/slides/src/vec.md index 44018d4cab366b630b1cb982defaf108d3a385cf..0984df721d83aab06980d8b4063f44b3b0c9f3f3 100644 --- a/slides/src/vec.md +++ b/slides/src/vec.md @@ -63,7 +63,7 @@ fn main() { // Prob: on veut modifier v[1] ## Modification d'élément (version 2) -```rust [3] compile_fail +```rust compile_fail [3] fn main() { let v = vec![1, 2, 3, 4]; let mut elem = &v[1]; // que se passe-t-il à votre avis? @@ -74,7 +74,7 @@ fn main() { ## Modification d'élément (version 3) -```rust [2,3|6|] compile_fail +```rust compile_fail [2,3|6|] fn main() { let v = vec![1, 2, 3, 4]; let mut elem = &mut v[1]; // que se passe-t-il à votre avis? @@ -85,7 +85,7 @@ fn main() { ## Modification d'élément (version 4) -```rust [3-6|7|] compile_fail +```rust compile_fail [3-6|7|] fn main() { let mut v = vec![1, 2, 3, 4]; let mut elem = &mut v[1]; // que se passe-t-il à votre avis?