From e53d10dc0435d69138bcce6375a5ff454d56f687 Mon Sep 17 00:00:00 2001 From: Dmitri Shuralyov Date: Wed, 5 Jun 2024 15:21:25 -0400 Subject: [PATCH] doc: mark range-over-func as documented The language change for the accepted range-over-func proposal #61405 was documented in CL 590616. Remove the corresponding 'TODO' entry. Also improve formatting slightly, and switch to preferred relative links. They'll work better in the long term and in more contexts. While here, also simplify the suggested line to preview release notes locally: setting the -content='' flag explicitly is no longer required as of CL 589936. For #65614. Change-Id: I6cee951b9ede33900bca48c9f709e3b2c5e87337 Reviewed-on: https://go-review.googlesource.com/c/go/+/590756 Reviewed-by: Dmitri Shuralyov LUCI-TryBot-Result: Go LUCI Auto-Submit: Dmitri Shuralyov Reviewed-by: Robert Griesemer --- doc/README.md | 2 +- doc/next/2-language.md | 14 +++++++------- doc/next/9-todo.md | 3 --- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/doc/README.md b/doc/README.md index bfd3c1e6a1..b0d99456da 100644 --- a/doc/README.md +++ b/doc/README.md @@ -48,7 +48,7 @@ Use the following forms in your markdown: To preview `next` content in merged form using a local instance of the website, run: ``` -go run golang.org/x/website/cmd/golangorg@latest -content='' -goroot=.. +go run golang.org/x/website/cmd/golangorg@latest -goroot=.. ``` Then open http://localhost:6060/doc/next. Refresh the page to see your latest edits. diff --git a/doc/next/2-language.md b/doc/next/2-language.md index db5d83a73e..9bd0bde083 100644 --- a/doc/next/2-language.md +++ b/doc/next/2-language.md @@ -1,16 +1,16 @@ ## Changes to the language {#language} -Go 1.23 makes the (Go 1.22) ["range-over-func" experiment](https://tip.golang.org/wiki/RangefuncExperiment) a part of the language. +Go 1.23 makes the (Go 1.22) ["range-over-func" experiment](/wiki/RangefuncExperiment) a part of the language. The "range" clause in a "for-range" loop now accepts iterator functions of the following types - func(func() bool) - func(func(K) bool) - func(func(K, V) bool) + func(func() bool) + func(func(K) bool) + func(func(K, V) bool) - as range expressions. - Calls of the iterator argument function produce the iteration values for the "for-range" loop. - For details see the [language spec](https://tip.golang.org/ref/spec#For_statements). +as range expressions. +Calls of the iterator argument function produce the iteration values for the "for-range" loop. +For details see the [language spec](/ref/spec#For_statements). Go 1.23 includes preview support for [generic type aliases](/issue/46477). diff --git a/doc/next/9-todo.md b/doc/next/9-todo.md index e253aa736a..eefdbe293c 100644 --- a/doc/next/9-todo.md +++ b/doc/next/9-todo.md @@ -1,8 +1,5 @@ - -TODO: Document that range-over-func is enabled (and that GOEXPERIMENT=rangefunc is relevant) in Go 1.23. This note should be moved to an appropriate location in the release notes. - TODO: The new `GOARM64` environment variable needs to be documented. This note should be moved to an appropriate location in the release notes.