diff options
author | Unknwon <u@gogs.io> | 2019-10-23 23:03:17 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-23 23:03:17 -0700 |
commit | 613139e7bef81d3573e7988a47eb6765f3de347a (patch) | |
tree | 49de7277898d3ff47a122c072568edb8ed4c9ac9 /vendor/github.com/modern-go/reflect2/unsafe_eface.go | |
parent | fb100dbf98f02e4c631d142ff0f52ec29ee2f00c (diff) |
Enable Go modules (#5835)
* Remove vendor
* Enable Go modules
* ci: add command to fetch dependencies
* ci: update setting
* ci: update settings
* Require Go 1.11
* Rename module name to gogs.io/gogs
Diffstat (limited to 'vendor/github.com/modern-go/reflect2/unsafe_eface.go')
-rw-r--r-- | vendor/github.com/modern-go/reflect2/unsafe_eface.go | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/vendor/github.com/modern-go/reflect2/unsafe_eface.go b/vendor/github.com/modern-go/reflect2/unsafe_eface.go deleted file mode 100644 index 805010f3..00000000 --- a/vendor/github.com/modern-go/reflect2/unsafe_eface.go +++ /dev/null @@ -1,59 +0,0 @@ -package reflect2 - -import ( - "reflect" - "unsafe" -) - -type eface struct { - rtype unsafe.Pointer - data unsafe.Pointer -} - -func unpackEFace(obj interface{}) *eface { - return (*eface)(unsafe.Pointer(&obj)) -} - -func packEFace(rtype unsafe.Pointer, data unsafe.Pointer) interface{} { - var i interface{} - e := (*eface)(unsafe.Pointer(&i)) - e.rtype = rtype - e.data = data - return i -} - -type UnsafeEFaceType struct { - unsafeType -} - -func newUnsafeEFaceType(cfg *frozenConfig, type1 reflect.Type) *UnsafeEFaceType { - return &UnsafeEFaceType{ - unsafeType: *newUnsafeType(cfg, type1), - } -} - -func (type2 *UnsafeEFaceType) IsNil(obj interface{}) bool { - if obj == nil { - return true - } - objEFace := unpackEFace(obj) - assertType("Type.IsNil argument 1", type2.ptrRType, objEFace.rtype) - return type2.UnsafeIsNil(objEFace.data) -} - -func (type2 *UnsafeEFaceType) UnsafeIsNil(ptr unsafe.Pointer) bool { - if ptr == nil { - return true - } - return unpackEFace(*(*interface{})(ptr)).data == nil -} - -func (type2 *UnsafeEFaceType) Indirect(obj interface{}) interface{} { - objEFace := unpackEFace(obj) - assertType("Type.Indirect argument 1", type2.ptrRType, objEFace.rtype) - return type2.UnsafeIndirect(objEFace.data) -} - -func (type2 *UnsafeEFaceType) UnsafeIndirect(ptr unsafe.Pointer) interface{} { - return *(*interface{})(ptr) -} |