Documentation
¶
Index ¶
- func GetBool(ptr uintptr) bool
- func GetBoolArr(ptr uintptr) []bool
- func GetBoolP(ptr uintptr) *bool
- func GetFloat32(ptr uintptr) float32
- func GetFloat32Arr(ptr uintptr) []float32
- func GetFloat32P(ptr uintptr) *float32
- func GetFloat64(ptr uintptr) float64
- func GetFloat64Arr(ptr uintptr) []float64
- func GetFloat64P(ptr uintptr) *float64
- func GetInt(ptr uintptr) int
- func GetInt8(ptr uintptr) int8
- func GetInt8Arr(ptr uintptr) []int8
- func GetInt8P(ptr uintptr) *int8
- func GetInt16(ptr uintptr) int16
- func GetInt16Arr(ptr uintptr) []int16
- func GetInt16P(ptr uintptr) *int16
- func GetInt32(ptr uintptr) int32
- func GetInt32Arr(ptr uintptr) []int32
- func GetInt32P(ptr uintptr) *int32
- func GetInt64(ptr uintptr) int64
- func GetInt64Arr(ptr uintptr) []int64
- func GetInt64P(ptr uintptr) *int64
- func GetIntArr(ptr uintptr) []int
- func GetIntP(ptr uintptr) *int
- func GetPtr(v interface{}, offset uintptr) uintptr
- func GetString(ptr uintptr) string
- func GetStringArr(ptr uintptr) []string
- func GetStringP(ptr uintptr) *string
- func GetTime(ptr uintptr) time.Time
- func GetTimeP(ptr uintptr) *time.Time
- func GetUint(ptr uintptr) uint
- func GetUint8(ptr uintptr) uint8
- func GetUint8Arr(ptr uintptr) []uint8
- func GetUint8P(ptr uintptr) *uint8
- func GetUint16(ptr uintptr) uint16
- func GetUint16Arr(ptr uintptr) []uint16
- func GetUint16P(ptr uintptr) *uint16
- func GetUint32(ptr uintptr) uint32
- func GetUint32Arr(ptr uintptr) []uint32
- func GetUint32P(ptr uintptr) *uint32
- func GetUint64(ptr uintptr) uint64
- func GetUint64Arr(ptr uintptr) []uint64
- func GetUint64P(ptr uintptr) *uint64
- func GetUintArr(ptr uintptr) []uint
- func GetUintP(ptr uintptr) *uint
- func NewFloat32(b []byte) (float32, error)
- func NewFloat64(b []byte) (float64, error)
- func NewInt(b []byte) (int, error)
- func NewInt8(b []byte) (int8, error)
- func NewInt16(b []byte) (int16, error)
- func NewInt32(b []byte) (int32, error)
- func NewInt64(b []byte) (int64, error)
- func NewString(b []byte) (string, error)
- func NewUint(b []byte) (uint, error)
- func NewUint8(b []byte) (uint8, error)
- func NewUint16(b []byte) (uint16, error)
- func NewUint32(b []byte) (uint32, error)
- func NewUint64(b []byte) (uint64, error)
- func SetBool(ptr uintptr, v bool)
- func SetBoolArr(ptr uintptr, v []bool)
- func SetBoolP(ptr uintptr, v *bool)
- func SetFloat32(ptr uintptr, v float32)
- func SetFloat32Arr(ptr uintptr, v []float32)
- func SetFloat32P(ptr uintptr, v *float32)
- func SetFloat64(ptr uintptr, v float64)
- func SetFloat64Arr(ptr uintptr, v []float64)
- func SetFloat64P(ptr uintptr, v *float64)
- func SetInt(ptr uintptr, v int)
- func SetInt8(ptr uintptr, v int8)
- func SetInt8Arr(ptr uintptr, v []int8)
- func SetInt8P(ptr uintptr, v *int8)
- func SetInt16(ptr uintptr, v int16)
- func SetInt16Arr(ptr uintptr, v []int16)
- func SetInt16P(ptr uintptr, v *int16)
- func SetInt32(ptr uintptr, v int32)
- func SetInt32Arr(ptr uintptr, v []int32)
- func SetInt32P(ptr uintptr, v *int32)
- func SetInt64(ptr uintptr, v int64)
- func SetInt64Arr(ptr uintptr, v []int64)
- func SetInt64P(ptr uintptr, v *int64)
- func SetIntArr(ptr uintptr, v []int)
- func SetIntP(ptr uintptr, v *int)
- func SetString(ptr uintptr, v string)
- func SetStringArr(ptr uintptr, v []string)
- func SetStringP(ptr uintptr, v *string)
- func SetTime(ptr uintptr, v time.Time)
- func SetTimeP(ptr uintptr, v *time.Time)
- func SetUint(ptr uintptr, v uint)
- func SetUint8(ptr uintptr, v uint8)
- func SetUint8Arr(ptr uintptr, v []uint8)
- func SetUint8P(ptr uintptr, v *uint8)
- func SetUint16(ptr uintptr, v uint16)
- func SetUint16Arr(ptr uintptr, v []uint16)
- func SetUint16P(ptr uintptr, v *uint16)
- func SetUint32(ptr uintptr, v uint32)
- func SetUint32Arr(ptr uintptr, v []uint32)
- func SetUint32P(ptr uintptr, v *uint32)
- func SetUint64(ptr uintptr, v uint64)
- func SetUint64Arr(ptr uintptr, v []uint64)
- func SetUint64P(ptr uintptr, v *uint64)
- func SetUintArr(ptr uintptr, v []uint)
- func SetUintP(ptr uintptr, v *uint)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewString ¶
NewString 零拷贝转换 []byte 为 string
⚠️ 重要警告:返回的 string 与原始 []byte 共享内存
使用场景:
- SQL 驱动返回的 []byte(不会被修改)
- 网络协议解析的 []byte(不会被修改)
- 任何不会被修改的 []byte
性能:
- 0.10 ns/op(比 string(b) 快 200x)
- 0 B/op 零内存分配
注意:
- 不要修改原始 []byte,否则会破坏 string 的不可变性
- 此转换对任何 len/cap 组合都是正确的(总是读取 len 字段)
- 此实现依赖 Go 内部 slice/string 内存布局,未来 Go 版本可能失效
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.