reflect.Type.Implements (method)

25 uses

	reflect (current package)
		type.go#L107: 	Implements(u Type) bool

	encoding/json
		decode.go#L637: 			if !reflect.PointerTo(t.Key()).Implements(textUnmarshalerType) {
		decode.go#L772: 			if reflect.PointerTo(kt).Implements(textUnmarshalerType) {
		encode.go#L395: 	if t.Kind() != reflect.Pointer && allowAddr && reflect.PointerTo(t).Implements(marshalerType) {
		encode.go#L398: 	if t.Implements(marshalerType) {
		encode.go#L401: 	if t.Kind() != reflect.Pointer && allowAddr && reflect.PointerTo(t).Implements(textMarshalerType) {
		encode.go#L404: 	if t.Implements(textMarshalerType) {
		encode.go#L796: 		if !t.Key().Implements(textMarshalerType) {
		encode.go#L851: 		if !p.Implements(marshalerType) && !p.Implements(textMarshalerType) {
		encode.go#L1191: 						case t.Kind() == reflect.Interface && t.Implements(isZeroerType):
		encode.go#L1199: 						case t.Kind() == reflect.Pointer && t.Implements(isZeroerType):
		encode.go#L1204: 						case t.Implements(isZeroerType):
		encode.go#L1208: 						case reflect.PointerTo(t).Implements(isZeroerType):

	google.golang.org/grpc
		server.go#L755: 		if !st.Implements(ht) {

	google.golang.org/protobuf/internal/impl
		legacy_message.go#L259: 				if t.Implements(f.Type) {
		message_reflect_field.go#L69: 	if !reflect.PtrTo(ot).Implements(ft) {

	gotest.tools/v3/assert/cmp
		compare.go#L364: 	if errValue.Type().Implements(expectedType) {

	html/template
		content.go#L143: 	for !v.Type().Implements(fmtStringerType) && !v.Type().Implements(errorType) && v.Kind() == reflect.Pointer && !v.IsNil() {
		js.go#L142: 	for !v.Type().Implements(jsonMarshalType) && v.Kind() == reflect.Pointer && !v.IsNil() {

	text/template
		exec.go#L1123: 	if !v.Type().Implements(errorType) && !v.Type().Implements(fmtStringerType) {
		exec.go#L1124: 		if v.CanAddr() && (reflect.PointerTo(v.Type()).Implements(errorType) || reflect.PointerTo(v.Type()).Implements(fmtStringerType)) {