// and make an exception.
// Pointer returns v's value as a uintptr.
-// It returns uintptr instead of [unsafe.Pointer] so that
-// code using reflect cannot obtain [unsafe.Pointer]s
-// without importing the [unsafe] package explicitly.
// It panics if v's Kind is not Chan, Func, Map, Pointer, Slice, or UnsafePointer.
//
// If v's Kind is Func, the returned pointer is an underlying
// and make an exception.
// UnsafeAddr returns a pointer to v's data, as a uintptr.
-// It is for advanced clients that also import the [unsafe] package.
// It panics if v is not addressable.
//
// It's preferred to use uintptr(Value.Addr().UnsafePointer()) to get the equivalent result.