reflectx
reflectx copied to clipboard
Golang reflect package hack tools
reflectx
Golang reflect package hack tools
ABI
support ABI0 and ABIInternal
-
ABI0 stack-based ABI
-
ABIInternal register-based Go calling convention proposal
- Go1.17: amd64
- Go1.18: amd64 arm64 ppc64/ppc64le
- Go1.19: amd64 arm64 ppc64/ppc64le riscv64
- Go1.20: amd64 arm64 ppc64/ppc64le riscv64
- Go1.21: amd64 arm64 ppc64/ppc64le riscv64
Field
- reflectx.CanSet
- reflectx.Field
- reflectx.FieldByIndex
- reflectx.FieldByName
- reflectx.FieldByNameFunc
Named
-
reflectx.StructOf(fs)
-
reflectx.NamedTypeOf
-
SetUnderlying
-
SetTypeName
Method
-
reflectx.Method
-
reflectx.MakeMethod
-
reflectx.NewMethodSet
-
reflectx.SetMethodSet
-
reflectx.StructToMethodSet
Interface
- reflectx.InterfaceOf
- reflectx.NamedInterfaceOf
- reflectx.NewInterfaceType
- reflectx.SetInterfaceType
Context
- reflectx.NewContext()
Method allocs
- allocs
import _ "github.com/goplus/reflectx/icall/icall[N]"
- install icall_gen
go get github.com/goplus/reflectx/cmd/icall_gen
icall_gen -o icall1024.go -pkg main -size 1024