Documentation
¶
Overview ¶
Example ¶
for _, v := range []any{ testdata.AmbiguousL1x2{ StringerL1: testdata.StringerL1("StringerL1"), Stringer: ptrx.Ptr(testdata.StringerL1("fmt.Stringer")), }, testdata.AmbiguousL1AndField{ StringerL1: testdata.StringerL1("v.StringerL1"), String: "StringField", }, testdata.AmbiguousL2x2{ StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL2"))}, StringerL2WrapL1: &testdata.StringerL2WrapL1{StringerL1: ptrx.Ptr(testdata.StringerL1("StringerL2WrapL1"))}, }, testdata.UnambiguousL1AndL2x2{ StringerL2: &testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL2"))}, StringerL2WrapL1: testdata.StringerL2WrapL1{StringerL1: ptrx.Ptr(testdata.StringerL1("StringerL2WrapL1"))}, StringerL1: ptrx.Ptr(testdata.StringerL1("StringerL1")), }, testdata.AmbiguousL1x2AndL2{ StringerL1: testdata.StringerL1("StringerL1"), Stringer: ptrx.Ptr(testdata.StringerL1("fmt.Stringer")), StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL2"))}, }, testdata.UnambiguousL2AndL3x2{ StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL2"))}, StringerL3: testdata.StringerL3{StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL3"))}}, StringerL3WrapL2: testdata.StringerL3WrapL2{StringerL2WrapL1: testdata.StringerL2WrapL1{StringerL1: ptrx.Ptr(testdata.StringerL1("StringerL3WrapL2"))}}, }, testdata.AmbiguousL2AndL3x2AndField{ StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL2"))}, StringerL3: testdata.StringerL3{StringerL2: testdata.StringerL2{Stringer: ptrx.Ptr(testdata.StringerL1("StringerL3"))}}, StringerL3WrapL2: testdata.StringerL3WrapL2{StringerL2WrapL1: testdata.StringerL2WrapL1{StringerL1: ptrx.Ptr(testdata.StringerL1("StringerL3WrapL2"))}}, StringField: testdata.StringField{String: "any"}, }, } { rt := reflect.TypeOf(v) fmt.Println(rt, rt.NumMethod()) for i := range rt.NumMethod() { fmt.Println(rt.Method(i).Name, reflect.ValueOf(v).Method(i).Call(nil)[0].Interface()) } fmt.Println() }
Output: testdata.AmbiguousL1x2 0 testdata.AmbiguousL1AndField 0 testdata.AmbiguousL2x2 0 testdata.UnambiguousL1AndL2x2 1 String StringerL1 testdata.AmbiguousL1x2AndL2 0 testdata.UnambiguousL2AndL3x2 1 String StringerL2 testdata.AmbiguousL2AndL3x2AndField 0
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
Click to show internal directories.
Click to hide internal directories.