reflect.Type.Implements (method)
80 uses
reflect (current package)
type.go#L104: Implements(u Type) bool
database/sql
convert.go#L556: rv.Type().Elem().Implements(valuerReflectType) {
database/sql/driver
types.go#L230: rv.Type().Elem().Implements(valuerReflectType) {
encoding/json
decode.go#L644: if !reflect.PointerTo(t.Key()).Implements(textUnmarshalerType) {
decode.go#L785: case reflect.PointerTo(kt).Implements(textUnmarshalerType):
encode.go#L422: if t.Kind() != reflect.Pointer && allowAddr && reflect.PointerTo(t).Implements(marshalerType) {
encode.go#L425: if t.Implements(marshalerType) {
encode.go#L428: if t.Kind() != reflect.Pointer && allowAddr && reflect.PointerTo(t).Implements(textMarshalerType) {
encode.go#L431: if t.Implements(textMarshalerType) {
encode.go#L826: if !t.Key().Implements(textMarshalerType) {
encode.go#L897: if !p.Implements(marshalerType) && !p.Implements(textMarshalerType) {
encoding/xml
marshal.go#L434: if val.CanInterface() && typ.Implements(marshalerType) {
marshal.go#L439: if pv.CanInterface() && pv.Type().Implements(marshalerType) {
marshal.go#L445: if val.CanInterface() && typ.Implements(textMarshalerType) {
marshal.go#L450: if pv.CanInterface() && pv.Type().Implements(textMarshalerType) {
marshal.go#L558: if val.CanInterface() && val.Type().Implements(marshalerAttrType) {
marshal.go#L571: if pv.CanInterface() && pv.Type().Implements(marshalerAttrType) {
marshal.go#L583: if val.CanInterface() && val.Type().Implements(textMarshalerType) {
marshal.go#L594: if pv.CanInterface() && pv.Type().Implements(textMarshalerType) {
marshal.go#L832: if vf.CanInterface() && vf.Type().Implements(textMarshalerType) {
marshal.go#L844: if pv.CanInterface() && pv.Type().Implements(textMarshalerType) {
read.go#L253: if val.CanInterface() && val.Type().Implements(unmarshalerAttrType) {
read.go#L260: if pv.CanInterface() && pv.Type().Implements(unmarshalerAttrType) {
read.go#L266: if val.CanInterface() && val.Type().Implements(textUnmarshalerType) {
read.go#L273: if pv.CanInterface() && pv.Type().Implements(textUnmarshalerType) {
read.go#L339: if val.CanInterface() && val.Type().Implements(unmarshalerType) {
read.go#L347: if pv.CanInterface() && pv.Type().Implements(unmarshalerType) {
read.go#L352: if val.CanInterface() && val.Type().Implements(textUnmarshalerType) {
read.go#L358: if pv.CanInterface() && pv.Type().Implements(textUnmarshalerType) {
read.go#L562: if saveData.IsValid() && saveData.CanInterface() && saveData.Type().Implements(textUnmarshalerType) {
read.go#L571: if pv.CanInterface() && pv.Type().Implements(textUnmarshalerType) {
github.com/go-pg/pg/v10/orm
table.go#L106: if typ.Implements(beforeScanHookType) {
table.go#L109: if typ.Implements(afterScanHookType) {
table.go#L112: if typ.Implements(afterSelectHookType) {
table.go#L115: if typ.Implements(beforeInsertHookType) {
table.go#L118: if typ.Implements(afterInsertHookType) {
table.go#L121: if typ.Implements(beforeUpdateHookType) {
table.go#L124: if typ.Implements(afterUpdateHookType) {
table.go#L127: if typ.Implements(beforeDeleteHookType) {
table.go#L130: if typ.Implements(afterDeleteHookType) {
table.go#L1198: return typ.Implements(scannerType) || reflect.PtrTo(typ).Implements(scannerType)
github.com/go-pg/pg/v10/types
append_value.go#L98: if typ.Implements(appenderType) {
append_value.go#L101: if typ.Implements(driverValuerType) {
array_scan.go#L20: if typ.Implements(arrayValueScannerType) {
scan_value.go#L101: if typ.Implements(valueScannerType) {
scan_value.go#L104: if reflect.PtrTo(typ).Implements(valueScannerType) {
scan_value.go#L108: if typ.Implements(sqlScannerType) {
scan_value.go#L111: if reflect.PtrTo(typ).Implements(sqlScannerType) {
github.com/go-pg/zerochecker
zerochecker.go#L23: if typ.Implements(isZeroerType) {
zerochecker.go#L47: if typ.Implements(appenderType) {
zerochecker.go#L50: if typ.Implements(driverValuerType) {
github.com/vmihailenco/msgpack/v5
decode_value.go#L66: if typ.Implements(customDecoderType) {
decode_value.go#L69: if typ.Implements(unmarshalerType) {
decode_value.go#L72: if typ.Implements(binaryUnmarshalerType) {
decode_value.go#L75: if typ.Implements(textUnmarshalerType) {
decode_value.go#L82: if ptr.Implements(customDecoderType) {
decode_value.go#L85: if ptr.Implements(unmarshalerType) {
decode_value.go#L88: if ptr.Implements(binaryUnmarshalerType) {
decode_value.go#L91: if ptr.Implements(textUnmarshalerType) {
encode_value.go#L60: if typ.Implements(customEncoderType) {
encode_value.go#L63: if typ.Implements(marshalerType) {
encode_value.go#L66: if typ.Implements(binaryMarshalerType) {
encode_value.go#L69: if typ.Implements(textMarshalerType) {
encode_value.go#L76: if ptr.Implements(customEncoderType) {
encode_value.go#L79: if ptr.Implements(marshalerType) {
encode_value.go#L82: if ptr.Implements(binaryMarshalerType) {
encode_value.go#L85: if ptr.Implements(textMarshalerType) {
google.golang.org/grpc
server.go#L671: if !st.Implements(ht) {
google.golang.org/protobuf/internal/impl
legacy_message.go#L252: if t.Implements(f.Type) {
message_reflect_field.go#L72: 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#L135: for !v.Type().Implements(jsonMarshalType) && v.Kind() == reflect.Pointer && !v.IsNil() {
text/template
exec.go#L1034: if !v.Type().Implements(errorType) && !v.Type().Implements(fmtStringerType) {
exec.go#L1035: if v.CanAddr() && (reflect.PointerTo(v.Type()).Implements(errorType) || reflect.PointerTo(v.Type()).Implements(fmtStringerType)) {
The pages are generated with Golds v0.4.9. (GOOS=linux GOARCH=amd64)