39 lines
1.3 KiB
Go
39 lines
1.3 KiB
Go
|
// Copyright (c) 2012-2020 Ugorji Nwoke. All rights reserved.
|
||
|
// Use of this source code is governed by a MIT license found in the LICENSE file.
|
||
|
|
||
|
package codec
|
||
|
|
||
|
import "reflect"
|
||
|
|
||
|
// This file exists, so that the files for specific formats do not all import reflect.
|
||
|
// This just helps us ensure that reflect package is isolated to a few files.
|
||
|
|
||
|
// SetInterfaceExt sets an extension
|
||
|
func (h *JsonHandle) SetInterfaceExt(rt reflect.Type, tag uint64, ext InterfaceExt) (err error) {
|
||
|
return h.SetExt(rt, tag, makeExt(ext))
|
||
|
}
|
||
|
|
||
|
// SetInterfaceExt sets an extension
|
||
|
func (h *CborHandle) SetInterfaceExt(rt reflect.Type, tag uint64, ext InterfaceExt) (err error) {
|
||
|
return h.SetExt(rt, tag, makeExt(ext))
|
||
|
}
|
||
|
|
||
|
// SetBytesExt sets an extension
|
||
|
func (h *MsgpackHandle) SetBytesExt(rt reflect.Type, tag uint64, ext BytesExt) (err error) {
|
||
|
return h.SetExt(rt, tag, makeExt(ext))
|
||
|
}
|
||
|
|
||
|
// SetBytesExt sets an extension
|
||
|
func (h *SimpleHandle) SetBytesExt(rt reflect.Type, tag uint64, ext BytesExt) (err error) {
|
||
|
return h.SetExt(rt, tag, makeExt(ext))
|
||
|
}
|
||
|
|
||
|
// SetBytesExt sets an extension
|
||
|
func (h *BincHandle) SetBytesExt(rt reflect.Type, tag uint64, ext BytesExt) (err error) {
|
||
|
return h.SetExt(rt, tag, makeExt(ext))
|
||
|
}
|
||
|
|
||
|
// func (h *XMLHandle) SetInterfaceExt(rt reflect.Type, tag uint64, ext InterfaceExt) (err error) {
|
||
|
// return h.SetExt(rt, tag, &interfaceExtWrapper{InterfaceExt: ext})
|
||
|
// }
|