1package utils 2 3import ( 4 "strconv" 5) 6 7/* -------------------- Map Conversion -------------------- */ 8 9// MapToStrs takes a map of interfaces and returns a map of strings 10func MapToStrs(aMap map[string]interface{}) map[string]string { 11 results := make(map[string]string) 12 13 for key, val := range aMap { 14 results[key] = val.(string) 15 } 16 17 return results 18} 19 20/* -------------------- Slice Conversion -------------------- */ 21 22// ToInts takes a slice of interfaces and returns a slice of ints 23func ToInts(slice []interface{}) []int { 24 results := []int{} 25 26 for _, val := range slice { 27 results = append(results, val.(int)) 28 } 29 30 return results 31} 32 33// ToStrs takes a slice of interfaces and returns a slice of strings 34func ToStrs(slice []interface{}) []string { 35 results := []string{} 36 37 for _, val := range slice { 38 switch val.(type) { 39 case int: 40 results = append(results, strconv.Itoa(val.(int))) 41 case string: 42 results = append(results, val.(string)) 43 } 44 } 45 46 return results 47} 48