type internal/abi.Type

195 uses

	internal/abi (current package)
		iface.go#L16: 	Type  *Type
		iface.go#L25: 	Type *Type
		map_noswiss.go#L26: 	Type
		map_noswiss.go#L27: 	Key    *Type
		map_noswiss.go#L28: 	Elem   *Type
		map_noswiss.go#L29: 	Bucket *Type // internal type representing a hash bucket
		map_swiss.go#L33: 	Type
		map_swiss.go#L34: 	Key   *Type
		map_swiss.go#L35: 	Elem  *Type
		map_swiss.go#L36: 	Group *Type // internal type representing a slot group
		type.go#L20: type Type struct {
		type.go#L178: func TypeOf(a any) *Type {
		type.go#L185: 	return (*Type)(NoEscape(unsafe.Pointer(eface.Type)))
		type.go#L189: func TypeFor[T any]() *Type {
		type.go#L197: func (t *Type) Kind() Kind { return t.Kind_ & KindMask }
		type.go#L199: func (t *Type) HasName() bool {
		type.go#L204: func (t *Type) Pointers() bool { return t.PtrBytes != 0 }
		type.go#L207: func (t *Type) IfaceIndir() bool {
		type.go#L212: func (t *Type) IsDirectIface() bool {
		type.go#L216: func (t *Type) GcSlice(begin, end uintptr) []byte {
		type.go#L276: 	Type
		type.go#L277: 	Elem  *Type // array element type
		type.go#L278: 	Slice *Type // slice type
		type.go#L283: func (t *Type) Len() int {
		type.go#L290: func (t *Type) Common() *Type {
		type.go#L305: 	Type
		type.go#L306: 	Elem *Type
		type.go#L316: func (t *Type) ChanDir() ChanDir {
		type.go#L325: func (t *Type) Uncommon() *UncommonType {
		type.go#L376: 			Type
		type.go#L384: func (t *Type) Elem() *Type {
		type.go#L406: func (t *Type) StructType() *StructType {
		type.go#L414: func (t *Type) MapType() *mapType {
		type.go#L422: func (t *Type) ArrayType() *ArrayType {
		type.go#L430: func (t *Type) FuncType() *FuncType {
		type.go#L438: func (t *Type) InterfaceType() *InterfaceType {
		type.go#L446: func (t *Type) Size() uintptr { return t.Size_ }
		type.go#L449: func (t *Type) Align() int { return int(t.Align_) }
		type.go#L451: func (t *Type) FieldAlign() int { return int(t.FieldAlign_) }
		type.go#L454: 	Type
		type.go#L459: func (t *Type) ExportedMethods() []Method {
		type.go#L467: func (t *Type) NumMethod() int {
		type.go#L478: func (t *Type) Key() *Type {
		type.go#L486: 	Type
		type.go#L487: 	Elem *Type // slice element type
		type.go#L502: 	Type
		type.go#L507: func (t *FuncType) In(i int) *Type {
		type.go#L519: func (t *FuncType) Out(i int) *Type {
		type.go#L523: func (t *FuncType) InSlice() []*Type {
		type.go#L531: 	return (*[1 << 16]*Type)(addChecked(unsafe.Pointer(t), uadd, "t.inCount > 0"))[:t.InCount:t.InCount]
		type.go#L533: func (t *FuncType) OutSlice() []*Type {
		type.go#L542: 	return (*[1 << 17]*Type)(addChecked(unsafe.Pointer(t), uadd, "outCount > 0"))[t.InCount : t.InCount+outCount : t.InCount+outCount]
		type.go#L550: 	Type
		type.go#L551: 	Elem *Type // pointer element (pointed at) type
		type.go#L556: 	Typ    *Type   // type of field
		type.go#L565: 	Type

	internal/race
		norace.go#L37: func ReadObjectPC(t *abi.Type, addr unsafe.Pointer, callerpc, pc uintptr) {
		norace.go#L46: func WriteObjectPC(t *abi.Type, addr unsafe.Pointer, callerpc, pc uintptr) {

	internal/reflectlite
		type.go#L66: 	common() *abi.Type
		type.go#L95: 	*abi.Type
		type.go#L237: func (t rtype) typeOff(off typeOff) *abi.Type {
		type.go#L238: 	return (*abi.Type)(resolveTypeOff(unsafe.Pointer(t.Type), int32(off)))
		type.go#L253: func (t rtype) common() *abi.Type { return t.Type }
		type.go#L301: func toRType(t *abi.Type) rtype {
		type.go#L305: func elem(t *abi.Type) *abi.Type {
		type.go#L414: func implements(T, V *abi.Type) bool {
		type.go#L505: func directlyAssignable(T, V *abi.Type) bool {
		type.go#L521: func haveIdenticalType(T, V *abi.Type, cmpTags bool) bool {
		type.go#L533: func haveIdenticalUnderlyingType(T, V *abi.Type, cmpTags bool) bool {
		type.go#L638: func toType(t *abi.Type) Type {
		value.go#L39: 	typ_ *abi.Type
		value.go#L91: func (v Value) typ() *abi.Type {
		value.go#L97: 	return (*abi.Type)(abi.NoEscape(unsafe.Pointer(v.typ_)))
		value.go#L398: func unsafe_New(*abi.Type) unsafe.Pointer
		value.go#L412: func (v Value) assignTo(context string, dst *abi.Type, target unsafe.Pointer) Value {
		value.go#L459: func ifaceE2I(t *abi.Type, src any, dst unsafe.Pointer)
		value.go#L464: func typedmemmove(t *abi.Type, dst, src unsafe.Pointer)

	internal/runtime/maps
		runtime.go#L21: func typedmemmove(typ *abi.Type, dst, src unsafe.Pointer)
		runtime.go#L24: func typedmemclr(typ *abi.Type, ptr unsafe.Pointer)
		runtime.go#L27: func newarray(typ *abi.Type, n int) unsafe.Pointer
		runtime.go#L30: func newobject(typ *abi.Type) unsafe.Pointer

	reflect
		abi.go#L124: func (a *abiSeq) addArg(t *abi.Type) *abiStep {
		abi.go#L165: func (a *abiSeq) addRcvr(rcvr *abi.Type) (*abiStep, bool) {
		abi.go#L198: func (a *abiSeq) regAssign(t *abi.Type, offset uintptr) bool {
		abi.go#L387: func newAbiDesc(t *funcType, rcvr *abi.Type) abiDesc {
		badlinkname.go#L29: func unusedIfaceIndir(t *abi.Type) bool {
		badlinkname.go#L127: func badlinkname_rtype_ptrTo(*rtype) *abi.Type
		type.go#L251: 	common() *abi.Type
		type.go#L314: 	abi.Type
		type.go#L320: 	t abi.Type
		type.go#L323: func (t *rtype) common() *abi.Type {
		type.go#L372: func nameOffFor(t *abi.Type, off aNameOff) abi.Name {
		type.go#L376: func typeOffFor(t *abi.Type, off aTypeOff) *abi.Type {
		type.go#L380: func (t *interfaceType) typeOff(off aTypeOff) *abi.Type {
		type.go#L384: func (t *interfaceType) common() *abi.Type {
		type.go#L542: func resolveReflectType(t *abi.Type) aTypeOff {
		type.go#L557: func (t *rtype) typeOff(off aTypeOff) *abi.Type {
		type.go#L558: 	return (*abi.Type)(resolveTypeOff(unsafe.Pointer(t), int32(off)))
		type.go#L565: func textOffFor(t *abi.Type, off aTextOff) unsafe.Pointer {
		type.go#L689: func pkgPathFor(t *abi.Type) string {
		type.go#L712: func nameFor(t *abi.Type) string {
		type.go#L724: func toRType(t *abi.Type) *rtype {
		type.go#L728: func elem(t *abi.Type) *abi.Type {
		type.go#L884: func canRangeFunc(t *abi.Type) bool {
		type.go#L912: func canRangeFunc2(t *abi.Type) bool {
		type.go#L1223: 				var ntyp *abi.Type
		type.go#L1307: func rtypeOf(i any) *abi.Type {
		type.go#L1329: func (t *rtype) ptrTo() *abi.Type {
		type.go#L1373: func ptrTo(t *abi.Type) *abi.Type {
		type.go#L1415: func implements(T, V *abi.Type) bool {
		type.go#L1503: func specialChannelAssignability(T, V *abi.Type) bool {
		type.go#L1516: func directlyAssignable(T, V *abi.Type) bool {
		type.go#L1536: func haveIdenticalType(T, V *abi.Type, cmpTags bool) bool {
		type.go#L1548: func haveIdenticalUnderlyingType(T, V *abi.Type, cmpTags bool) bool {
		type.go#L1670: func rtypeOff(section unsafe.Pointer, off int32) *abi.Type {
		type.go#L1671: 	return (*abi.Type)(add(section, uintptr(off), "sizeof(rtype) > 0"))
		type.go#L1689: func typesByString(s string) []*abi.Type {
		type.go#L1691: 	var ret []*abi.Type
		type.go#L1732: 	t1    *abi.Type
		type.go#L1733: 	t2    *abi.Type
		type.go#L1891: 		for _, t := range ts.([]*abi.Type) {
		type.go#L1902: 		for _, t := range ts.([]*abi.Type) {
		type.go#L1909: 	addToCache := func(tt *abi.Type) Type {
		type.go#L1910: 		var rts []*abi.Type
		type.go#L1912: 			rts = rti.([]*abi.Type)
		type.go#L1931: func stringFor(t *abi.Type) string {
		type.go#L1971: func isReflexive(t *abi.Type) bool {
		type.go#L1995: func needKeyUpdate(t *abi.Type) bool {
		type.go#L2022: func hashMightPanic(t *abi.Type) bool {
		type.go#L2044: func emitGCMask(out []byte, base uintptr, typ *abi.Type, n uintptr) {
		type.go#L2554: func typeptrdata(t *abi.Type) uintptr {
		type.go#L2718: func toType(t *abi.Type) Type {
		type.go#L2727: 	rcvr *abi.Type // receiver type, or nil if none
		type.go#L2731: 	t         *abi.Type
		type.go#L2745: func funcLayout(t *funcType, rcvr *abi.Type) (frametype *abi.Type, framePool *sync.Pool, abid abiDesc) {
		type.go#L2762: 	x := &abi.Type{
		type.go#L2816: func addTypeBits(bv *bitVector, offset uintptr, t *abi.Type) {
		value.go#L42: 	typ_ *abi.Type
		value.go#L99: func (v Value) typ() *abi.Type {
		value.go#L105: 	return (*abi.Type)(abi.NoEscape(unsafe.Pointer(v.typ_)))
		value.go#L394: 		rcvrtype *abi.Type
		value.go#L875: func methodReceiver(op string, v Value, methodIndex int) (rcvrtype *abi.Type, t *funcType, fn unsafe.Pointer) {
		value.go#L1787: func copyVal(typ *abi.Type, fl flag, ptr unsafe.Pointer) Value {
		value.go#L2391: func (v Value) abiType() *abi.Type {
		value.go#L2398: func (v Value) abiTypeSlow() *abi.Type {
		value.go#L2897: func unsafe_New(*abi.Type) unsafe.Pointer
		value.go#L2900: func unsafe_NewArray(*abi.Type, int) unsafe.Pointer
		value.go#L3039: func (v Value) assignTo(context string, dst *abi.Type, target unsafe.Pointer) Value {
		value.go#L3226: func convertOp(dst, src *abi.Type) func(Value, Type) Value {
		value.go#L3578: func makechan(typ *abi.Type, size int) (ch unsafe.Pointer)
		value.go#L3579: func makemap(t *abi.Type, cap int) (m unsafe.Pointer)
		value.go#L3582: func mapaccess(t *abi.Type, m unsafe.Pointer, key unsafe.Pointer) (val unsafe.Pointer)
		value.go#L3585: func mapaccess_faststr(t *abi.Type, m unsafe.Pointer, key string) (val unsafe.Pointer)
		value.go#L3588: func mapassign0(t *abi.Type, m unsafe.Pointer, key, val unsafe.Pointer)
		value.go#L3600: func mapassign(t *abi.Type, m unsafe.Pointer, key, val unsafe.Pointer) {
		value.go#L3607: func mapassign_faststr0(t *abi.Type, m unsafe.Pointer, key string, val unsafe.Pointer)
		value.go#L3609: func mapassign_faststr(t *abi.Type, m unsafe.Pointer, key string, val unsafe.Pointer) {
		value.go#L3616: func mapdelete(t *abi.Type, m unsafe.Pointer, key unsafe.Pointer)
		value.go#L3619: func mapdelete_faststr(t *abi.Type, m unsafe.Pointer, key string)
		value.go#L3624: func mapclear(t *abi.Type, m unsafe.Pointer)
		value.go#L3652: func call(stackArgsType *abi.Type, f, stackArgs unsafe.Pointer, stackArgsSize, stackRetOffset, frameSize uint32, regArgs *abi.RegArgs)
		value.go#L3654: func ifaceE2I(t *abi.Type, src any, dst unsafe.Pointer)
		value.go#L3664: func typedmemmove(t *abi.Type, dst, src unsafe.Pointer)
		value.go#L3669: func typedmemclr(t *abi.Type, ptr unsafe.Pointer)
		value.go#L3675: func typedmemclrpartial(t *abi.Type, ptr unsafe.Pointer, off, size uintptr)
		value.go#L3681: func typedslicecopy(t *abi.Type, dst, src unsafeheader.Slice) int
		value.go#L3687: func typedarrayclear(elemType *abi.Type, ptr unsafe.Pointer, len int)
		value.go#L3690: func typehash(t *abi.Type, p unsafe.Pointer, h uintptr) uintptr
		value.go#L3695: func growslice(t *abi.Type, old unsafeheader.Slice, num int) unsafeheader.Slice
		value.go#L3698: func unsafeslice(t *abi.Type, ptr unsafe.Pointer, len int)

	runtime
		mbarrier.go#L150: func typedmemmove(typ *abi.Type, dst, src unsafe.Pointer) {
		mbitmap.go#L213: func (span *mspan) typePointersOfType(typ *abi.Type, addr uintptr) typePointers {
		mbitmap.go#L417: func bulkBarrierPreWrite(dst, src, size uintptr, typ *abi.Type) {
		mbitmap.go#L503: func bulkBarrierPreWriteSrcOnly(dst, src, size uintptr, typ *abi.Type) {
		traceallocfree.go#L113: func (tl traceLocker) HeapObjectExists(addr uintptr, typ *abi.Type) {
		traceallocfree.go#L120: func (tl traceLocker) HeapObjectAlloc(addr uintptr, typ *abi.Type) {
		traceevent.go#L171: func (tl traceLocker) rtype(typ *abi.Type) traceArg {
		tracetype.go#L25: func (t *traceTypeTable) put(typ *abi.Type) uint64 {
		tracetype.go#L47: 	typ := (*abi.Type)(*(*unsafe.Pointer)(unsafe.Pointer(&node.data[0])))
		type.go#L21: type _type = abi.Type
		type.go#L25: 	*abi.Type // embedding is okay here (unlike reflect) because none of this is public
		type.go#L490: func toRType(t *abi.Type) rtype {

	unique
		clone.go#L38: func makeCloneSeq(typ *abi.Type) cloneSeq {
		clone.go#L56: func buildStructCloneSeq(typ *abi.Type, seq *cloneSeq, baseOffset uintptr) {
		clone.go#L72: func buildArrayCloneSeq(typ *abi.Type, seq *cloneSeq, baseOffset uintptr) {
		handle.go#L101: 	uniqueMaps isync.HashTrieMap[*abi.Type, any] // any is always a *uniqueMap[T].
		handle.go#L121: func addUniqueMap[T comparable](typ *abi.Type) *uniqueMap[T] {