github.com/zeebo/goof@v0.0.0-20190312211016-1ee209ef0510/helpers.go (about) 1 package goof 2 3 import ( 4 "reflect" 5 "unsafe" 6 ) 7 8 func makeInterface(typ, val unsafe.Pointer) interface{} { 9 return *(*interface{})(unsafe.Pointer(&[2]unsafe.Pointer{typ, val})) 10 } 11 12 func dataPtr(val interface{}) unsafe.Pointer { 13 return unsafe.Pointer(reflect.ValueOf(&val).Elem().InterfaceData()[1]) 14 }