mth.Type.Out(0) == t &&
mth.Type.Out(1) == errorType {
out := mth.Func.Call([]reflect.Value{reflect.Zero(t), reflect.ValueOf(data)})
if !out[1].IsNil() {
if err, ok := out[1].Interface().(error); ok {
return nil, err