diff options
author | Ian Lance Taylor <iant@golang.org> | 2010-01-13 12:50:45 -0800 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2010-01-13 12:50:45 -0800 |
commit | ae13f43810e8afe2b1c68a59b10d93e8522b90e3 (patch) | |
tree | 58d5267b9d8ccaeab88f88f68dd8ae5dd0a6d5ab | |
parent | 14a74378f45298853ea1292321bcaa6788b163fb (diff) | |
download | go-ae13f43810e8afe2b1c68a59b10d93e8522b90e3.tar.gz go-ae13f43810e8afe2b1c68a59b10d93e8522b90e3.zip |
Clarify when expressions are evaluated for a range clause.
R=gri, rsc
CC=golang-dev
https://golang.org/cl/189057
-rw-r--r-- | doc/go_spec.html | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/doc/go_spec.html b/doc/go_spec.html index f4f2f56a0d..5243db37da 100644 --- a/doc/go_spec.html +++ b/doc/go_spec.html @@ -3783,7 +3783,12 @@ string or array element or map value. The types of the array or slice index (always <code>int</code>) and element, or of the map key and value respectively, must be <a href="#Assignment_compatibility">assignment compatible</a> with -the type of the iteration variables. +the type of the iteration variables. The expression on the right hand +side is evaluated once before beginning the loop. At each iteration +of the loop, the values produced by the range clause are assigned to +the left hand side as in an <a href="#Assignments">assignment +statement</a>. Function calls on the left hand side will be evaluated +exactly once per iteration. </p> <p> For strings, the "range" clause iterates over the Unicode code points |