The question was about detecting cyclic references. For that, the `l[0] = l` case is enough.
On Wed, Nov 11, 2020 at 2:31 AM jake...@gmail.com <jake6...@gmail.com> wrote: > FYI, that does detect the simple case of l[0] = l, but not more > complicated circular cases like l[1] = l[1:] > > On Tuesday, November 10, 2020 at 2:38:26 AM UTC-5 > axel.wa...@googlemail.com wrote: > >> If the slice is empty, it doesn't reference anything. >> If it is not empty, &x[0] can be used to identify the slice (potentially >> also using len/cap, if it's interesting). >> >> On Tue, Nov 10, 2020 at 4:11 AM arpad ryszka <arpad....@gmail.com> wrote: >> >>> Hi, >>> >>> is there a way to detect the cyclic reference in the following example >>> somehow? Either via reflection or by other means? My understanding is that >>> slices cannot be compared with == (unless to nil), or used as keys in maps. >>> Is there a different way? >>> >>> l := []interface{}{"foo"} >>> l[0] = l >>> fmt.Println(l) >>> >>> or here it is as a playground link: >>> https://play.golang.org/p/T0qZlF8m-vi >>> >>> Cheers, >>> Arpad >>> >>> -- >>> 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...@googlegroups.com. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/golang-nuts/b2cb6b5e-febc-407f-b5b3-d9ca196ce68bn%40googlegroups.com >>> <https://groups.google.com/d/msgid/golang-nuts/b2cb6b5e-febc-407f-b5b3-d9ca196ce68bn%40googlegroups.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/250107e9-f688-4205-ae52-728221eb2e4cn%40googlegroups.com > <https://groups.google.com/d/msgid/golang-nuts/250107e9-f688-4205-ae52-728221eb2e4cn%40googlegroups.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/CAEkBMfERbOW1OzURNKJ4xfazPmwz-Ph1vd-SuxjZ41uNrgS17Q%40mail.gmail.com.