diff --git a/utils/conversions.go b/utils/conversions.go index f8b1542b..133ddb5d 100644 --- a/utils/conversions.go +++ b/utils/conversions.go @@ -8,7 +8,7 @@ import ( // MapToStrs takes a map of interfaces and returns a map of strings func MapToStrs(aMap map[string]interface{}) map[string]string { - results := make(map[string]string) + results := make(map[string]string, len(aMap)) for key, val := range aMap { results[key] = val.(string) @@ -21,10 +21,10 @@ func MapToStrs(aMap map[string]interface{}) map[string]string { // ToInts takes a slice of interfaces and returns a slice of ints func ToInts(slice []interface{}) []int { - results := []int{} + results := make([]int, len(slice)) - for _, val := range slice { - results = append(results, val.(int)) + for i, val := range slice { + results[i] = val.(int) } return results @@ -32,14 +32,14 @@ func ToInts(slice []interface{}) []int { // ToStrs takes a slice of interfaces and returns a slice of strings func ToStrs(slice []interface{}) []string { - results := []string{} + results := make([]string, len(slice)) - for _, val := range slice { - switch val.(type) { + for i, val := range slice { + switch t := val.(type) { case int: - results = append(results, strconv.Itoa(val.(int))) + results[i] = strconv.Itoa(t) case string: - results = append(results, val.(string)) + results[i] = t } }