package tests import ( "github.com/modern-go/reflect2" "testing" ) func Test_struct_eface(t *testing.T) { type TestObject struct { Field1 interface{} } var pEFace = func(val interface{}) interface{} { return &val } t.Run("SetIndex", testOp(func(api reflect2.API) interface{} { valType := api.TypeOf(TestObject{}).(reflect2.StructType) field1 := valType.FieldByName("Field1") obj := TestObject{} field1.Set(&obj, pEFace(100)) return obj })) t.Run("GetIndex", testOp(func(api reflect2.API) interface{} { obj := TestObject{Field1: 100} valType := api.TypeOf(obj).(reflect2.StructType) field1 := valType.FieldByName("Field1") return field1.Get(&obj) })) }