1package common 2 3func IntPtr(v int) *int { 4 return &v 5} 6 7func Int64Ptr(v int64) *int64 { 8 return &v 9} 10 11func UintPtr(v uint) *uint { 12 return &v 13} 14 15func Uint64Ptr(v uint64) *uint64 { 16 return &v 17} 18 19func Float64Ptr(v float64) *float64 { 20 return &v 21} 22 23func BoolPtr(v bool) *bool { 24 return &v 25} 26 27func StringPtr(v string) *string { 28 return &v 29} 30 31func StringValues(ptrs []*string) []string { 32 values := make([]string, len(ptrs)) 33 for i := 0; i < len(ptrs); i++ { 34 if ptrs[i] != nil { 35 values[i] = *ptrs[i] 36 } 37 } 38 return values 39} 40 41func IntPtrs(vals []int) []*int { 42 ptrs := make([]*int, len(vals)) 43 for i := 0; i < len(vals); i++ { 44 ptrs[i] = &vals[i] 45 } 46 return ptrs 47} 48 49func Int64Ptrs(vals []int64) []*int64 { 50 ptrs := make([]*int64, len(vals)) 51 for i := 0; i < len(vals); i++ { 52 ptrs[i] = &vals[i] 53 } 54 return ptrs 55} 56 57func UintPtrs(vals []uint) []*uint { 58 ptrs := make([]*uint, len(vals)) 59 for i := 0; i < len(vals); i++ { 60 ptrs[i] = &vals[i] 61 } 62 return ptrs 63} 64 65func Uint64Ptrs(vals []uint64) []*uint64 { 66 ptrs := make([]*uint64, len(vals)) 67 for i := 0; i < len(vals); i++ { 68 ptrs[i] = &vals[i] 69 } 70 return ptrs 71} 72 73func Float64Ptrs(vals []float64) []*float64 { 74 ptrs := make([]*float64, len(vals)) 75 for i := 0; i < len(vals); i++ { 76 ptrs[i] = &vals[i] 77 } 78 return ptrs 79} 80 81func BoolPtrs(vals []bool) []*bool { 82 ptrs := make([]*bool, len(vals)) 83 for i := 0; i < len(vals); i++ { 84 ptrs[i] = &vals[i] 85 } 86 return ptrs 87} 88 89func StringPtrs(vals []string) []*string { 90 ptrs := make([]*string, len(vals)) 91 for i := 0; i < len(vals); i++ { 92 ptrs[i] = &vals[i] 93 } 94 return ptrs 95} 96