code: func (l VirtualDeviceList) Name(device types.BaseVirtualDevice) string {
  	var key string
  	var UnitNumber int32
  	d := device.GetVirtualDevice()
  	if d.UnitNumber != nil {
  		UnitNumber = *d.UnitNumber
  	}
  
  	dtype := l.Type(device)
  	switch dtype {
  	case DeviceTypeEthernet:
  		key = fmt.Sprintf("%d", UnitNumber-7)
  	case DeviceTypeDisk:
  		key = fmt.Sprintf("%d-%d", d.ControllerKey, UnitNumber)
  	default:
  		key = fmt.Sprintf("%d", d.Key)
  	}
  
  	return fmt.Sprintf("%s-%s", dtype, key)
  }
docs: // Name returns a stable, human-readable name for the given device