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.