mirror of
https://github.com/golang/go
synced 2024-11-13 17:30:24 -07:00
28c1ad9d35
Variables can be declared and shadowing is supported, but modifying existing variables via assignments was not available. This meant that modifying a variable from a nested block was not possible: {{ $v := "init" }} {{ if true }} {{ $v := "changed" }} {{ end }} v: {{ $v }} {{/* "init" */}} Introduce the "=" assignment token, such that one can now do: {{ $v := "init" }} {{ if true }} {{ $v = "changed" }} {{ end }} v: {{ $v }} {{/* "changed" */}} To avoid confusion, rename PipeNode.Decl to PipeNode.Vars, as the variables may not always be declared after this change. Also change a few other names to better reflect the added ambiguity of variables in pipelines. Modifying the text/template/parse package in a backwards incompatible manner is acceptable, given that the package godoc clearly states that it isn't intended for general use. It's the equivalent of an internal package, back when internal packages didn't exist yet. To make the changes to the parse package sit well with the cmd/api test, update except.txt with the changes that we aren't worried about. Fixes #10608. Change-Id: I1f83a4297ee093fd45f9993cebb78fc9a9e81295 Reviewed-on: https://go-review.googlesource.com/84480 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
14 lines
520 B
Plaintext
14 lines
520 B
Plaintext
Files in this directory are data for Go's API checker ("go tool api", in src/cmd/api).
|
|
|
|
Each file is a list of API features, one per line.
|
|
|
|
go1.txt (and similarly named files) are frozen once a version has been
|
|
shipped. Each file adds new lines but does not remove any.
|
|
|
|
except.txt lists features that may disappear without breaking true
|
|
compatibility.
|
|
|
|
next.txt is the only file intended to be mutated. It's a list of
|
|
features that may be added to the next version. It only affects
|
|
warning output from the go api tool.
|