diff options
| author | Diggory Hardy <git@dhardy.name> | 2017-05-16 18:54:41 +0100 |
|---|---|---|
| committer | Diggory Hardy <git@dhardy.name> | 2017-05-16 18:54:41 +0100 |
| commit | 3f980beb3eeb545ff9de7f3976beb7872b4e2ae6 (patch) | |
| tree | f5699b4292d57a9a91aaa418ef62c40c8c3e1cee /src | |
| parent | 7488ff5c44f8e7515aa68e43011784de0893a6a6 (diff) | |
| download | rust-3f980beb3eeb545ff9de7f3976beb7872b4e2ae6.tar.gz rust-3f980beb3eeb545ff9de7f3976beb7872b4e2ae6.zip | |
loop_break_value: fix tests (but ignore one expected not to compile)
Diffstat (limited to 'src')
| -rw-r--r-- | src/doc/unstable-book/src/language-features/loop-break-value.md | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/doc/unstable-book/src/language-features/loop-break-value.md b/src/doc/unstable-book/src/language-features/loop-break-value.md index 7218cad1c22..9e36ea7b1a7 100644 --- a/src/doc/unstable-book/src/language-features/loop-break-value.md +++ b/src/doc/unstable-book/src/language-features/loop-break-value.md @@ -15,6 +15,8 @@ never exits. A `loop` can instead evaluate to a useful value via *break with value*: ```rust +#![feature(loop_break_value)] + // Find the first square number over 1000: let mut n = 1; let square = loop { @@ -28,6 +30,8 @@ let square = loop { The evaluation type may be specified externally: ```rust +#![feature(loop_break_value)] + // Declare that value returned is unsigned 64-bit: let n: u64 = loop { break 1; @@ -37,9 +41,11 @@ let n: u64 = loop { It is an error if types do not agree, either between a "break" value and an external requirement, or between multiple "break" values: -```rust +```no_compile +#![feature(loop_break_value)] + loop { - if random_bool() { + if true { break 1u32; } else { break 0u8; // error: types do not agree @@ -69,6 +75,8 @@ When no value is given, the value `()` is assumed, thus `break;` is equivalent t Using a label allows returning a value from an inner loop: ```rust +#![feature(loop_break_value)] + let result = 'outer: loop { for n in 1..10 { if n > 4 { |
