84 lines
1.5 KiB
Go
84 lines
1.5 KiB
Go
package pointers
|
|
|
|
import "time"
|
|
|
|
func Bool(v bool) *bool { return &v }
|
|
func Int(v int) *int { return &v }
|
|
func Int32(v int32) *int32 { return &v }
|
|
func Int64(v int64) *int64 { return &v }
|
|
func Uint32(v uint32) *uint32 { return &v }
|
|
func Uint64(v uint64) *uint64 { return &v }
|
|
func Float32(v float32) *float32 { return &v }
|
|
func Float64(v float64) *float64 { return &v }
|
|
func String(v string) *string { return &v }
|
|
func Time(v time.Time) *time.Time { return &v }
|
|
func StringSlice(v []string) *[]string { return &v }
|
|
func Int64Slice(v []int64) *[]int64 { return &v }
|
|
|
|
func GetBool(v *bool) bool {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return false
|
|
}
|
|
func GetInt(v *int) int {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetInt32(v *int32) int32 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetInt64(v *int64) int64 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetInt64Slice(v *[]int64) []int64 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return []int64{}
|
|
}
|
|
func GetUint32(v *uint32) uint32 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetUint64(v *uint64) uint64 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetFloat32(v *float32) float32 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetFloat64(v *float64) float64 {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return 0
|
|
}
|
|
func GetString(v *string) string {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return ""
|
|
}
|
|
func GetStringSlice(v *[]string) []string {
|
|
if v != nil {
|
|
return *v
|
|
}
|
|
return []string{}
|
|
}
|