Documentation ¶
Index ¶
- Variables
- func ConstraintUnderlying(params *types.TypeParamList, underlying types.Type) types.Type
- func EachField(t Type, key string, ...)
- func FieldDisplayName(tag reflect.StructTag, key string, name string) (keyTag string, omitempty, exists bool)
- func FullTypeName(t Type) string
- func IsBasicReflectKind(k reflect.Kind) bool
- func IsFloatReflectKind(k reflect.Kind) bool
- func IsIntegerReflectKind(k reflect.Kind) bool
- func IsNumericReflectKind(k reflect.Kind) bool
- func IsSignedIntReflectKind(k reflect.Kind) bool
- func IsUnsignedIntReflectKind(k reflect.Kind) bool
- func NewGoTypeFromReflectType(t reflect.Type) types.Type
- func NewPackage(path string) *types.Package
- func TryNew(u Type) (reflect.Value, bool)
- func TypeByName(path string, name string) types.Type
- func TypeFor(id string) (t types.Type)
- func TypeString(t Type) string
- type GoMethod
- type GoStructField
- type GoType
- func (t *GoType) AssignableTo(u Type) bool
- func (t *GoType) Comparable() bool
- func (t *GoType) ConvertibleTo(u Type) bool
- func (t *GoType) Elem() Type
- func (t *GoType) Field(i int) StructField
- func (t *GoType) FieldByName(name string) (StructField, bool)
- func (t *GoType) FieldByNameFunc(match func(string) bool) (StructField, bool)
- func (t *GoType) Implements(u Type) bool
- func (t *GoType) In(i int) Type
- func (t *GoType) IsVariadic() bool
- func (t *GoType) Key() Type
- func (t *GoType) Kind() reflect.Kind
- func (t *GoType) Len() int
- func (t *GoType) Method(i int) Method
- func (t *GoType) MethodByName(name string) (Method, bool)
- func (t *GoType) Name() string
- func (t *GoType) NumField() int
- func (t *GoType) NumIn() int
- func (t *GoType) NumMethod() int
- func (t *GoType) NumOut() int
- func (t *GoType) Out(i int) Type
- func (t *GoType) PkgPath() string
- func (t *GoType) String() string
- func (t *GoType) Unwrap() any
- type Method
- type ReflectMethod
- type ReflectStructField
- type ReflectType
- func (t *ReflectType) AssignableTo(u Type) bool
- func (t *ReflectType) ConvertibleTo(u Type) bool
- func (t *ReflectType) Elem() Type
- func (t *ReflectType) Field(i int) StructField
- func (t *ReflectType) FieldByName(name string) (StructField, bool)
- func (t *ReflectType) FieldByNameFunc(match func(string) bool) (StructField, bool)
- func (t *ReflectType) Implements(u Type) bool
- func (t *ReflectType) In(i int) Type
- func (t *ReflectType) Key() Type
- func (t *ReflectType) Method(i int) Method
- func (t *ReflectType) MethodByName(name string) (Method, bool)
- func (t *ReflectType) Out(i int) Type
- func (t *ReflectType) String() string
- func (t *ReflectType) Unwrap() any
- type StructField
- type Type
Constants ¶
This section is empty.
Variables ¶
View Source
var ( LoadFiles = packages.NeedName | packages.NeedFiles | packages.NeedCompiledGoFiles LoadImports = LoadFiles | packages.NeedImports LoadTypes = LoadImports | packages.NeedTypes | packages.NeedTypesSizes )
View Source
var ReflectKindToTypesKind = map[reflect.Kind]types.BasicKind{ reflect.Bool: types.Bool, reflect.Int: types.Int, reflect.Int8: types.Int8, reflect.Int16: types.Int16, reflect.Int32: types.Int32, reflect.Int64: types.Int64, reflect.Uint: types.Uint, reflect.Uint8: types.Uint8, reflect.Uint16: types.Uint16, reflect.Uint32: types.Uint32, reflect.Uint64: types.Uint64, reflect.Uintptr: types.Uintptr, reflect.Float32: types.Float32, reflect.Float64: types.Float64, reflect.Complex64: types.Complex64, reflect.Complex128: types.Complex128, reflect.String: types.String, reflect.UnsafePointer: types.UnsafePointer, }
View Source
var RtTextMarshaler = FromReflectType(reflect.TypeOf((*encoding.TextMarshaler)(nil)).Elem())
View Source
var TypesKindToReflectKind = map[types.BasicKind]reflect.Kind{ types.Bool: reflect.Bool, types.Int: reflect.Int, types.Int8: reflect.Int8, types.Int16: reflect.Int16, types.Int32: reflect.Int32, types.Int64: reflect.Int64, types.Uint: reflect.Uint, types.Uint8: reflect.Uint8, types.Uint16: reflect.Uint16, types.Uint32: reflect.Uint32, types.Uint64: reflect.Uint64, types.Uintptr: reflect.Uintptr, types.Float32: reflect.Float32, types.Float64: reflect.Float64, types.Complex64: reflect.Complex64, types.Complex128: reflect.Complex128, types.String: reflect.String, types.UnsafePointer: reflect.UnsafePointer, types.UntypedBool: reflect.Bool, types.UntypedInt: reflect.Int, types.UntypedRune: reflect.Int32, types.UntypedFloat: reflect.Float32, types.UntypedComplex: reflect.Complex64, types.UntypedString: reflect.String, }
Functions ¶
func ConstraintUnderlying ¶
func FieldDisplayName ¶
func FullTypeName ¶
func IsBasicReflectKind ¶
func IsFloatReflectKind ¶
func IsIntegerReflectKind ¶
func IsNumericReflectKind ¶
func IsSignedIntReflectKind ¶
func NewPackage ¶
func TypeString ¶
Types ¶
type GoMethod ¶
func MethodsOfGoType ¶
type GoStructField ¶
func (*GoStructField) PkgPath ¶
func (f *GoStructField) PkgPath() string
func (*GoStructField) Tag ¶
func (f *GoStructField) Tag() reflect.StructTag
func (*GoStructField) Type ¶
func (f *GoStructField) Type() Type
type GoType ¶
func FromGoType ¶
func (*GoType) AssignableTo ¶
func (*GoType) Comparable ¶
func (*GoType) ConvertibleTo ¶
func (*GoType) Field ¶
func (t *GoType) Field(i int) StructField
func (*GoType) FieldByName ¶
func (t *GoType) FieldByName(name string) (StructField, bool)
func (*GoType) FieldByNameFunc ¶
func (t *GoType) FieldByNameFunc(match func(string) bool) (StructField, bool)
func (*GoType) Implements ¶
func (*GoType) IsVariadic ¶
type ReflectMethod ¶
func (*ReflectMethod) Name ¶
func (m *ReflectMethod) Name() string
func (*ReflectMethod) PkgPath ¶
func (m *ReflectMethod) PkgPath() string
func (*ReflectMethod) Type ¶
func (m *ReflectMethod) Type() Type
type ReflectStructField ¶
type ReflectStructField struct{ StructField reflect.StructField }
func (*ReflectStructField) Anonymous ¶
func (f *ReflectStructField) Anonymous() bool
func (*ReflectStructField) Name ¶
func (f *ReflectStructField) Name() string
func (*ReflectStructField) PkgPath ¶
func (f *ReflectStructField) PkgPath() string
func (*ReflectStructField) Tag ¶
func (f *ReflectStructField) Tag() reflect.StructTag
func (*ReflectStructField) Type ¶
func (f *ReflectStructField) Type() Type
type ReflectType ¶
func FromReflectType ¶
func FromReflectType(t reflect.Type) *ReflectType
func (*ReflectType) AssignableTo ¶
func (t *ReflectType) AssignableTo(u Type) bool
func (*ReflectType) ConvertibleTo ¶
func (t *ReflectType) ConvertibleTo(u Type) bool
func (*ReflectType) Elem ¶
func (t *ReflectType) Elem() Type
func (*ReflectType) Field ¶
func (t *ReflectType) Field(i int) StructField
func (*ReflectType) FieldByName ¶
func (t *ReflectType) FieldByName(name string) (StructField, bool)
func (*ReflectType) FieldByNameFunc ¶
func (t *ReflectType) FieldByNameFunc(match func(string) bool) (StructField, bool)
func (*ReflectType) Implements ¶
func (t *ReflectType) Implements(u Type) bool
func (*ReflectType) In ¶
func (t *ReflectType) In(i int) Type
func (*ReflectType) Key ¶
func (t *ReflectType) Key() Type
func (*ReflectType) Method ¶
func (t *ReflectType) Method(i int) Method
func (*ReflectType) MethodByName ¶
func (t *ReflectType) MethodByName(name string) (Method, bool)
func (*ReflectType) Out ¶
func (t *ReflectType) Out(i int) Type
func (*ReflectType) String ¶
func (t *ReflectType) String() string
func (*ReflectType) Unwrap ¶
func (t *ReflectType) Unwrap() any
type StructField ¶
type Type ¶
type Type interface { Unwrap() any Name() string PkgPath() string String() string Kind() reflect.Kind Implements(Type) bool AssignableTo(Type) bool ConvertibleTo(Type) bool Comparable() bool Key() Type Elem() Type Len() int NumField() int Field(int) StructField FieldByName(string) (StructField, bool) FieldByNameFunc(func(string) bool) (StructField, bool) NumMethod() int Method(int) Method MethodByName(string) (Method, bool) IsVariadic() bool NumIn() int In(int) Type NumOut() int Out(int) Type }
Click to show internal directories.
Click to hide internal directories.