|author||Jonathan Amsterdam <email@example.com>||Thu Jun 10 16:17:40 2021 -0400|
|committer||Jonathan Amsterdam <firstname.lastname@example.org>||Fri Jun 11 17:44:01 2021 +0000|
event: Builder.Start returns a builder Currently, Builder.Start's second return value is a function which, when called, sends an End event with a copy of the Start event's builder. This makes the common case ctx, end := event.To(ctx).Start(name) defer end() easy to write. But it's not possible to add additional labels that way; instead a whole new builder needs to be constructed from scratch. So in this CL, Start's second return value is a Builder. The simple case is almost as short: ctx, b := event.To(ctx).Start(name) defer b.End() but now it's equally easy to add more information to the end event: ctx, b := event.To(ctx).Start(name) defer b.With(Result.Of(err)).End() Change-Id: Ib489a2704ac78479317eeb3f1f3de0f1b38d610c Reviewed-on: https://go-review.googlesource.com/c/exp/+/326849 Trust: Jonathan Amsterdam <email@example.com> Run-TryBot: Jonathan Amsterdam <firstname.lastname@example.org> TryBot-Result: Go Bot <email@example.com> Reviewed-by: Ian Cottrell <firstname.lastname@example.org>
This subrepository holds experimental and deprecated (in the
old directory) packages.
The idea for this subrepository originated as the
pkg/exp directory of the main repository, but its presence there made it unavailable to users of the binary downloads of the Go installation. The subrepository has therefore been created to make it possible to
go get these packages.
Warning: Packages here are experimental and unreliable. Some may one day be promoted to the main repository or other subrepository, or they may be modified arbitrarily or even disappear altogether.
In short, code in this subrepository is not subject to the Go 1 compatibility promise. (No subrepo is, but the promise is even more likely to be violated by go.exp than the others.)