func subresourceListString(data []interface{}) string {
	var strs []string
	for _, v := range data {
		if v == nil {
			strs = append(strs, "(<nil>)")
			continue
		}
		m := v.(map[string]interface{})
		devaddr := m["device_address"].(string)
		if devaddr == "" {
			devaddr = "<new device>"
		}
		strs = append(strs, fmt.Sprintf("(key %d at %s)", m["key"].(int), devaddr))
	}
	return strings.Join(strs, ",")
}
func subresourceListString(data []interface{}) string {
	var strs []string
	for _, v := range data {
		if v == nil {
			strs = append(strs, "(<nil>)")
			continue
		}
		m := v.(map[string]interface{})
		devaddr := m["device_address"].(string)
		if devaddr == "" {
			devaddr = "<new device>"
		}
		strs = append(strs, fmt.Sprintf("(key %d at %s)", m["key"].(int), devaddr))
	}
	return strings.Join(strs, ",")
}
func subresourceListString ( data [ ] interface { } ) string { var strs [ ] string for _ , v := range data { if v == nil { strs = append ( strs , " " ) continue } m := v . ( map [ string ] interface { } ) devaddr := m [ " " ] . ( string ) if devaddr == " " { devaddr = " " } strs = append ( strs , fmt . Sprintf ( " " , m [ " " ] . ( int ) , devaddr ) ) } return strings . Join ( strs , " " ) }
// subresourceListString takes a list of sub-resources and pretty-prints the
// key and device address.
subresourceListString takes a list of sub - resources and pretty - prints the key and device address .