diff --git a/doc/rust.md b/doc/rust.md index 92d5ee2122293..aa4ce002e021b 100644 --- a/doc/rust.md +++ b/doc/rust.md @@ -2177,7 +2177,11 @@ Expressions are divided into two main categories: _lvalues_ and _rvalues_. Likewise within each expression, sub-expressions may occur in _lvalue context_ or _rvalue context_. The evaluation of an expression depends both on its own category and the context it occurs within. -[Path](#path-expressions), [field](#field-expressions) and [index](#index-expressions) expressions are lvalues. +An lvalue is an expression that represents a memory location. These +expressions are [paths](#path-expressions) (which refer to local +variables, function and method arguments, or static variables), +dereferences (`*expr`), [indexing expressions](#index-expressions) +(`expr[expr]`), and [field references](#field-expressions) (`expr.f`). All other expressions are rvalues. The left operand of an [assignment](#assignment-expressions),