David Tolnay | 055a704 | 2016-10-02 19:23:54 -0700 | [diff] [blame] | 1 | fn closure() { |
David Tolnay | 89e0567 | 2016-10-02 14:39:42 -0700 | [diff] [blame] | 2 | ( |
| 3 | || (), |
| 4 | |_| (), |
| 5 | || -> () { () }, |
| 6 | |a| a, |
| 7 | |a, b| a + b, |
| 8 | |a: u8, b: u8| a + b, |
| 9 | |a, b| -> u8 { a + b }, |
| 10 | move |a, b| a + b, |
| 11 | ) |
David Tolnay | 4260229 | 2016-10-01 22:25:45 -0700 | [diff] [blame] | 12 | } |
David Tolnay | 9636c05 | 2016-10-02 17:11:17 -0700 | [diff] [blame] | 13 | |
| 14 | fn ascript() { |
| 15 | ( |
| 16 | G::<u8>::f::<S>(), |
| 17 | <G<u8> as m::Trait<u8>>::Assoc::f::<S>(), |
| 18 | ) |
| 19 | } |
David Tolnay | 3c2467c | 2016-10-02 17:55:08 -0700 | [diff] [blame] | 20 | |
| 21 | fn conditional() { |
| 22 | if a == b { |
| 23 | 0 |
| 24 | } else if a > b { |
| 25 | 1 |
| 26 | } else { |
| 27 | -1 |
David Tolnay | 29f9ce1 | 2016-10-02 20:58:40 -0700 | [diff] [blame] | 28 | }; |
| 29 | |
| 30 | if let a = b { |
| 31 | 0 |
| 32 | } else if c { |
| 33 | 1 |
| 34 | } else if let d = e { |
| 35 | -1 |
| 36 | }; |
David Tolnay | 3c2467c | 2016-10-02 17:55:08 -0700 | [diff] [blame] | 37 | } |
David Tolnay | 191e058 | 2016-10-02 18:31:09 -0700 | [diff] [blame] | 38 | |
David Tolnay | bb6feae | 2016-10-02 21:25:20 -0700 | [diff] [blame^] | 39 | fn looping() { |
| 40 | loop { |
| 41 | print(a); |
| 42 | }; |
| 43 | |
| 44 | while true { |
| 45 | print(a); |
| 46 | }; |
| 47 | |
| 48 | while let a = true { |
| 49 | print(a); |
| 50 | }; |
| 51 | |
| 52 | for a in b { |
| 53 | print(a); |
| 54 | }; |
| 55 | } |
| 56 | |
David Tolnay | 191e058 | 2016-10-02 18:31:09 -0700 | [diff] [blame] | 57 | fn item() { |
| 58 | struct S; |
| 59 | |
| 60 | let a = 1; |
| 61 | let a: u8 = 1; |
| 62 | let mut a = 1; |
| 63 | } |
David Tolnay | 055a704 | 2016-10-02 19:23:54 -0700 | [diff] [blame] | 64 | |
| 65 | fn expr() { |
| 66 | fallible()?; |
| 67 | |
| 68 | [repeat; 1 + 1]; |
| 69 | |
| 70 | A::B {}; |
| 71 | A::B { a: () }; |
| 72 | A::B { .. c }; |
| 73 | A::B { a: (), b: (), .. c }; |
| 74 | } |