Source File
unsafe.go
Belonging Package
go.etcd.io/bbolt
package bboltimport ()func ( unsafe.Pointer, uintptr) unsafe.Pointer {return unsafe.Pointer(uintptr() + )}func ( unsafe.Pointer, uintptr, uintptr, int) unsafe.Pointer {return unsafe.Pointer(uintptr() + + uintptr()*)}func ( unsafe.Pointer, uintptr, , int) []byte {// See: https://github.com/golang/go/wiki/cgo#turning-c-arrays-into-go-slices//// This memory is not allocated from C, but it is unmanaged by Go's// garbage collector and should behave similarly, and the compiler// should produce similar code. Note that this conversion allows a// subslice to begin after the base address, with an optional offset,// while the URL above does not cover this case and only slices from// index 0. However, the wiki never says that the address must be to// the beginning of a C allocation (or even that malloc was used at// all), so this is believed to be correct.return (*[maxAllocSize]byte)(unsafeAdd(, ))[::]}// unsafeSlice modifies the data, len, and cap of a slice variable pointed to by// the slice parameter. This helper should be used over other direct// manipulation of reflect.SliceHeader to prevent misuse, namely, converting// from reflect.SliceHeader to a Go slice type.func (, unsafe.Pointer, int) {:= (*reflect.SliceHeader)().Data = uintptr().Cap =.Len =}
The pages are generated with Golds v0.2.8-preview. (GOOS=darwin GOARCH=arm64)