go/src
Matthew Dempsky 12c9d753f8 cmd/compile: refactor generic AST walking code
racewalk's "foreach" function applies a function to all of a Node's
immediate children, but with a non-idiomatic signature.

This CL reworks it to recursively iterate over the entire subtree
rooted at Node and provides a way to short-circuit iteration.

Passes toolstash -cmp for std cmd with -race.

Change-Id: I738b73953d608709802c97945b7e0f4e4940d3f4
Reviewed-on: https://go-review.googlesource.com/71911
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Robert Griesemer <gri@golang.org>
2017-10-19 20:06:45 +00:00
..
archive archive/tar: ignore ChangeTime and AccessTime unless Format is specified 2017-10-10 20:13:27 +00:00
bufio
builtin
bytes bytes: add examples of Equal and IndexByte 2017-10-16 03:34:28 +00:00
cmd cmd/compile: refactor generic AST walking code 2017-10-19 20:06:45 +00:00
compress
container
context
crypto crypto/elliptic: don't unmarshal invalid encoded points 2017-10-15 02:24:19 +00:00
database/sql database/sql: fix example usage of Out 2017-10-18 03:07:46 +00:00
debug debug/dwarf: clarify StructField.ByteSize doc 2017-10-18 21:45:30 +00:00
encoding encoding/json: use Deprecated markers 2017-10-11 22:09:22 +00:00
errors
expvar
flag flag: simplify switch-case in isZeroValue 2017-10-17 20:23:14 +00:00
fmt fmt: clarify wording of * flag 2017-10-15 06:03:34 +00:00
go io: simplify pipe implementation 2017-10-11 20:00:54 +00:00
hash
html all: revert "all: prefer strings.IndexByte over strings.Index" 2017-10-05 23:19:10 +00:00
image image/gif: make blockReader a ByteReader, harden tests 2017-10-19 04:03:39 +00:00
index/suffixarray
internal internal/poll: always decref if setting deadline fails 2017-10-19 00:16:21 +00:00
io io: simplify pipe implementation 2017-10-11 20:00:54 +00:00
log
math math/big: fix ModSqrt optimized path for x = z 2017-10-16 21:41:44 +00:00
mime all: revert "all: prefer strings.IndexByte over strings.Index" 2017-10-05 23:19:10 +00:00
net net/http: update bundled http2 2017-10-18 18:07:22 +00:00
os os: add period at end of O_EXCL comment 2017-10-17 23:30:52 +00:00
path all: revert "all: prefer strings.LastIndexByte over strings.LastIndex" 2017-10-05 23:19:42 +00:00
plugin
reflect reflect: allow Copy to a byte array or byte slice from a string 2017-10-13 02:35:56 +00:00
regexp all: revert "all: prefer strings.IndexByte over strings.Index" 2017-10-05 23:19:10 +00:00
runtime runtime: separate error result for mmap 2017-10-18 19:22:08 +00:00
sort
strconv
strings
sync sync/atomic: add memory barriers to Load/StoreInt32 on darwin/arm 2017-10-02 09:57:23 +00:00
syscall syscall: correct type for timeout argument to Select on linux/{arm64,mips64x} 2017-10-13 14:01:17 +00:00
testing testing/iotest: fix NewReadLogger documentation typo 2017-10-19 15:59:21 +00:00
text text/template: add break, continue actions in ranges 2017-10-17 02:06:15 +00:00
time all: revert "all: prefer strings.LastIndexByte over strings.LastIndex" 2017-10-05 23:19:42 +00:00
unicode all: revert "all: prefer strings.IndexByte over strings.Index" 2017-10-05 23:19:10 +00:00
unsafe
vendor/golang_org/x
Make.dist
all.bash
all.bat
all.rc
androidtest.bash
bootstrap.bash
buildall.bash
clean.bash
clean.bat
clean.rc
cmp.bash
iostest.bash
make.bash
make.bat
make.rc
naclmake.bash
nacltest.bash
race.bash
race.bat
run.bash
run.bat
run.rc