From 4fe46cee4ea4eb15e38675ff32222f07e6b15404 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Sat, 21 Jan 2023 02:36:45 +0700 Subject: [PATCH] builtin: add documentation for clear Updates #56351 Change-Id: I7b1dd29e60f71d804a6d9cba3377e28c3a5b964e Reviewed-on: https://go-review.googlesource.com/c/go/+/462935 Auto-Submit: Cuong Manh Le Reviewed-by: Keith Randall Reviewed-by: Rob Pike Reviewed-by: Ian Lance Taylor Run-TryBot: Cuong Manh Le Reviewed-by: Keith Randall TryBot-Result: Gopher Robot --- src/builtin/builtin.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/builtin/builtin.go b/src/builtin/builtin.go index d3637584fe..bcfb7ce956 100644 --- a/src/builtin/builtin.go +++ b/src/builtin/builtin.go @@ -227,6 +227,15 @@ func real(c ComplexType) FloatType // the type of c. func imag(c ComplexType) FloatType +// The clear built-in function clears maps and slices. +// For maps, clear deletes all entries, resulting in an empty map. +// For slices, clear sets all elements up to the length of the slice +// to the zero value of the respective element type. If the argument +// type is a type parameter, the type parameter's type set must +// contain only map or slice types, and clear performs the operation +// implied by the type argument. +func clear[T ~[]Type | ~map[Type]Type1](t T) + // The close built-in function closes a channel, which must be either // bidirectional or send-only. It should be executed only by the sender, // never the receiver, and has the effect of shutting down the channel after -- 2.51.0