Hi Axel,

Okay, that helps! Thanks for the details.

Regards
dharani


On Wed, Jul 5, 2023 at 1:38 AM Axel Wagner <axel.wagner...@googlemail.com>
wrote:

> Hi,
>
> this has come up on the issue as well. Robert Griesemer provided an
> explanation
> <https://github.com/golang/go/issues/56351#issuecomment-1601751291>:
>
> If the argument type (the type of the argument provided to clear) is a
>> type parameter (is of type parameter type), all types in its type set (in
>> the type set of the constraint corresponding to the type parameter) must be
>> maps or slices, and clear performs the operation corresponding to the
>> actual type argument (corresponding to the type of the actual type argument
>> with which the type parameter was instantiated).
>
>
> That is, the sentence is about this situation:
>
> func Clear[T, any, S ~[]T](s S) {
>     clear(s)
> }
> func main() {
>     Clear(make([]int, 42))
> }
>
> In this case, the type of s is S, which is a type parameter. So `clear`
> performs the operation corresponding to the type argument - in this example
> []int.
>
> The sentence is a bit confusing (I've seen this question come up four
> times now), so it probably should be clarified a bit.
>
> On Wed, Jul 5, 2023 at 9:06 AM Tharaneedharan Vilwanathan <
> vdhar...@gmail.com> wrote:
>
>> Hi All,
>>
>> Go 1.21 introduces a new clear() builtin function. I see this text in
>> https://tip.golang.org/ref/spec#Clear:
>>
>> clear(t) type parameter see below
>>
>> If the argument type is a type parameter
>> <https://tip.golang.org/ref/spec#Type_parameter_declarations>, all types
>> in its type set must be maps or slices, and clear performs the operation
>> corresponding to the actual type argument.
>>
>> I am not able to make sense of it. What does this mean? Any examples on
>> the usage?
>>
>> Appreciate your help.
>>
>> Thanks
>> dharani
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "golang-nuts" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to golang-nuts+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/golang-nuts/CAN-HoCn99D-m71aJr3DRzCJvk_c7h8OhG2O4wPC-1Wd2ruEYNg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/golang-nuts/CAN-HoCn99D-m71aJr3DRzCJvk_c7h8OhG2O4wPC-1Wd2ruEYNg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CAN-HoCnjqOpDJjqsj9j%3DDQrvocHbhSvUx2bWOi%2BpRFKiWhv6jQ%40mail.gmail.com.

Reply via email to