type userTypeInfo …
const xGob …
const xBinary …
const xText …
var userTypeCache …
func validUserType(rt reflect.Type) (*userTypeInfo, error) { … }
var gobEncoderInterfaceType …
var gobDecoderInterfaceType …
var binaryMarshalerInterfaceType …
var binaryUnmarshalerInterfaceType …
var textMarshalerInterfaceType …
var textUnmarshalerInterfaceType …
var wireTypeType …
func implementsInterface(typ, gobEncDecType reflect.Type) (success bool, indir int8) { … }
func userType(rt reflect.Type) *userTypeInfo { … }
type typeId …
var typeLock …
const firstUserId …
type gobType …
var types …
var idToTypeSlice …
var builtinIdToTypeSlice …
func idToType(id typeId) gobType { … }
func builtinIdToType(id typeId) gobType { … }
func setTypeId(typ gobType) { … }
func (t typeId) gobType() gobType { … }
func (t typeId) string() string { … }
func (t typeId) name() string { … }
type CommonType …
func (t *CommonType) id() typeId { … }
func (t *CommonType) setId(id typeId) { … }
func (t *CommonType) string() string { … }
func (t *CommonType) safeString(seen map[typeId]bool) string { … }
func (t *CommonType) name() string { … }
var tBool …
var tInt …
var tUint …
var tFloat …
var tBytes …
var tString …
var tComplex …
var tInterface …
var tReserved7 …
var tReserved6 …
var tReserved5 …
var tReserved4 …
var tReserved3 …
var tReserved2 …
var tReserved1 …
var tWireType …
var wireTypeUserInfo …
func init() { … }
type arrayType …
func newArrayType(name string) *arrayType { … }
func (a *arrayType) init(elem gobType, len int) { … }
func (a *arrayType) safeString(seen map[typeId]bool) string { … }
func (a *arrayType) string() string { … }
type gobEncoderType …
func newGobEncoderType(name string) *gobEncoderType { … }
func (g *gobEncoderType) safeString(seen map[typeId]bool) string { … }
func (g *gobEncoderType) string() string { … }
type mapType …
func newMapType(name string) *mapType { … }
func (m *mapType) init(key, elem gobType) { … }
func (m *mapType) safeString(seen map[typeId]bool) string { … }
func (m *mapType) string() string { … }
type sliceType …
func newSliceType(name string) *sliceType { … }
func (s *sliceType) init(elem gobType) { … }
func (s *sliceType) safeString(seen map[typeId]bool) string { … }
func (s *sliceType) string() string { … }
type fieldType …
type structType …
func (s *structType) safeString(seen map[typeId]bool) string { … }
func (s *structType) string() string { … }
func newStructType(name string) *structType { … }
func newTypeObject(name string, ut *userTypeInfo, rt reflect.Type) (gobType, error) { … }
func isExported(name string) bool { … }
func isSent(field *reflect.StructField) bool { … }
func getBaseType(name string, rt reflect.Type) (gobType, error) { … }
func getType(name string, ut *userTypeInfo, rt reflect.Type) (gobType, error) { … }
func checkId(want, got typeId) { … }
func bootstrapType(name string, e any) typeId { … }
type wireType …
func (w *wireType) string() string { … }
type typeInfo …
var typeInfoMap …
var typeInfoMapInit …
func lookupTypeInfo(rt reflect.Type) *typeInfo { … }
func getTypeInfo(ut *userTypeInfo) (*typeInfo, error) { … }
func buildTypeInfo(ut *userTypeInfo, rt reflect.Type) (*typeInfo, error) { … }
func mustGetTypeInfo(rt reflect.Type) *typeInfo { … }
type GobEncoder …
type GobDecoder …
var nameToConcreteType …
var concreteTypeToName …
func RegisterName(name string, value any) { … }
func Register(value any) { … }
func registerBasics() { … }
func init() { … }