- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 23 for efaceeq (0.11 sec)
-
src/runtime/alg.go
} func interequal(p, q unsafe.Pointer) bool { x := *(*iface)(p) y := *(*iface)(q) return x.tab == y.tab && ifaceeq(x.tab, x.data, y.data) } func nilinterequal(p, q unsafe.Pointer) bool { x := *(*eface)(p) y := *(*eface)(q) return x._type == y._type && efaceeq(x._type, x.data, y.data) } func efaceeq(t *_type, x, y unsafe.Pointer) bool { if t == nil { return true } eq := t.Equal if eq == nil {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 17:58:53 UTC 2024 - 13.6K bytes - Viewed (0) -
src/cmd/compile/internal/typecheck/_builtin/runtime.go
// interface switches func interfaceSwitch(s *byte, t *byte) (int, *byte) // interface equality. Type/itab pointers are already known to be equal, so // we only need to pass one. func ifaceeq(tab *uintptr, x, y unsafe.Pointer) (ret bool) func efaceeq(typ *uintptr, x, y unsafe.Pointer) (ret bool) // panic for various rangefunc iterator errors func panicrangestate(state int) // defer in range over func
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 21 21:08:03 UTC 2024 - 10.6K bytes - Viewed (0) -
src/cmd/compile/internal/typecheck/builtin.go
{"assertE2I2", funcTag, 67}, {"panicdottypeE", funcTag, 68}, {"panicdottypeI", funcTag, 68}, {"panicnildottype", funcTag, 69}, {"typeAssert", funcTag, 67}, {"interfaceSwitch", funcTag, 70}, {"ifaceeq", funcTag, 72}, {"efaceeq", funcTag, 72}, {"panicrangestate", funcTag, 73}, {"deferrangefunc", funcTag, 74}, {"rand32", funcTag, 75}, {"makemap64", funcTag, 77}, {"makemap", funcTag, 78}, {"makemap_small", funcTag, 79},
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 21 21:08:03 UTC 2024 - 16.2K bytes - Viewed (0) -
src/runtime/error.go
func printanycustomtype(i any) { eface := efaceOf(&i) typestring := toRType(eface._type).string() switch eface._type.Kind_ { case abi.String: print(typestring, `("`) printindented(*(*string)(eface.data)) print(`")`) case abi.Bool: print(typestring, "(", *(*bool)(eface.data), ")") case abi.Int: print(typestring, "(", *(*int)(eface.data), ")") case abi.Int8:
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 08 19:10:41 UTC 2024 - 9.9K bytes - Viewed (0) -
src/runtime/mfinal.go
ityp := (*interfacetype)(unsafe.Pointer(f.fint)) // set up with empty interface (*eface)(r)._type = &f.ot.Type (*eface)(r).data = f.arg if len(ityp.Methods) != 0 { // convert to interface with methods // this conversion is guaranteed to succeed - we checked in SetFinalizer (*iface)(r).tab = assertE2I(ityp, (*eface)(r)._type) } default: throw("bad kind in runfinq") }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 01:56:56 UTC 2024 - 19K bytes - Viewed (0) -
src/runtime/hash_test.go
return "int64" } type EfaceKey struct { i any } func (k *EfaceKey) clear() { k.i = nil } func (k *EfaceKey) random(r *rand.Rand) { k.i = uint64(r.Int63()) } func (k *EfaceKey) bits() int { // use 64 bits. This tests inlined interfaces // on 64-bit targets and indirect interfaces on // 32-bit targets. return 64 } func (k *EfaceKey) flipBit(i int) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon May 06 17:50:18 UTC 2024 - 18.4K bytes - Viewed (0) -
src/runtime/iface.go
stringEface any = stringInterfacePtr("") sliceEface any = sliceInterfacePtr(nil) uint16Type *_type = efaceOf(&uint16Eface)._type uint32Type *_type = efaceOf(&uint32Eface)._type uint64Type *_type = efaceOf(&uint64Eface)._type stringType *_type = efaceOf(&stringEface)._type sliceType *_type = efaceOf(&sliceEface)._type ) // The conv and assert functions below do very similar things.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 17:58:53 UTC 2024 - 22.5K bytes - Viewed (0) -
src/runtime/heapdump.go
} for p := gp._panic; p != nil; p = p.link { dumpint(tagPanic) dumpint(uint64(uintptr(unsafe.Pointer(p)))) dumpint(uint64(uintptr(unsafe.Pointer(gp)))) eface := efaceOf(&p.arg) dumpint(uint64(uintptr(unsafe.Pointer(eface._type)))) dumpint(uint64(uintptr(eface.data))) dumpint(0) // was p->defer, no longer recorded dumpint(uint64(uintptr(unsafe.Pointer(p.link)))) } } func dumpgs() { assertWorldStopped()
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 09 04:07:57 UTC 2024 - 17.6K bytes - Viewed (0) -
src/runtime/runtime-gdb.py
# "0x429d6c <runtime.gopark+284>", so # chop at first space. pc = int(str(pc).split(None, 1)[0], 16) return pc # # For reference, this is what we're trying to do: # eface: p *(*(struct 'runtime.rtype'*)'main.e'->type_->data)->string # iface: p *(*(struct 'runtime.rtype'*)'main.s'->tab->Type->data)->string # # interface types can't be recognized by their name, instead we check
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 10 12:59:20 UTC 2023 - 15.4K bytes - Viewed (0) -
src/internal/reflectlite/value.go
// It returns the zero Value if v is nil. func (v Value) Elem() Value { k := v.kind() switch k { case abi.Interface: var eface any if v.typ().NumMethod() == 0 { eface = *(*any)(v.ptr) } else { eface = (any)(*(*interface { M() })(v.ptr)) } x := unpackEface(eface) if x.flag != 0 { x.flag |= v.flag.ro() } return x case abi.Pointer: ptr := v.ptr
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 07 17:01:54 UTC 2024 - 13.6K bytes - Viewed (0)