mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-21 17:52:12 +03:00
Clean up E0501 explanation
This commit is contained in:
@@ -1,12 +1,4 @@
|
||||
This error indicates that a mutable variable is being used while it is still
|
||||
captured by a closure. Because the closure has borrowed the variable, it is not
|
||||
available for use until the closure goes out of scope.
|
||||
|
||||
Note that a capture will either move or borrow a variable, but in this
|
||||
situation, the closure is borrowing the variable. Take a look at the chapter
|
||||
on [Capturing][capturing] in Rust By Example for more information.
|
||||
|
||||
[capturing]: https://doc.rust-lang.org/stable/rust-by-example/fn/closures/capture.html
|
||||
A mutable variable is used but it is already captured by a closure.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
@@ -29,6 +21,16 @@ fn foo(a: &mut i32) {
|
||||
}
|
||||
```
|
||||
|
||||
This error indicates that a mutable variable is used while it is still captured
|
||||
by a closure. Because the closure has borrowed the variable, it is not available
|
||||
until the closure goes out of scope.
|
||||
|
||||
Note that a capture will either move or borrow a variable, but in this
|
||||
situation, the closure is borrowing the variable. Take a look at the chapter
|
||||
on [Capturing][capturing] in Rust By Example for more information.
|
||||
|
||||
[capturing]: https://doc.rust-lang.org/stable/rust-by-example/fn/closures/capture.html
|
||||
|
||||
To fix this error, you can finish using the closure before using the captured
|
||||
variable:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user