Source File
unsafe_iface.go
Belonging Package
github.com/modern-go/reflect2
package reflect2import ()type iface struct {itab *itabdata unsafe.Pointer}type itab struct {ignore unsafe.Pointerrtype unsafe.Pointer}func ( unsafe.Pointer) interface{} {:= (*iface)()if .itab == nil {return nil}return packEFace(.itab.rtype, .data)}type UnsafeIFaceType struct {unsafeType}func newUnsafeIFaceType( *frozenConfig, reflect.Type) *UnsafeIFaceType {return &UnsafeIFaceType{unsafeType: *newUnsafeType(, ),}}func ( *UnsafeIFaceType) ( interface{}) interface{} {:= unpackEFace()assertType("Type.Indirect argument 1", .ptrRType, .rtype)return .UnsafeIndirect(.data)}func ( *UnsafeIFaceType) ( unsafe.Pointer) interface{} {return IFaceToEFace()}func ( *UnsafeIFaceType) ( interface{}) bool {if == nil {return true}:= unpackEFace()assertType("Type.IsNil argument 1", .ptrRType, .rtype)return .UnsafeIsNil(.data)}func ( *UnsafeIFaceType) ( unsafe.Pointer) bool {if == nil {return true}:= (*iface)()if .itab == nil {return true}return false}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |