import UIKit
//Написать перечисление, содержащее в себе устройства apple (для упрощения можно взять 5-7 устройств, включающий iPhone, iPad), перечисление должно поддерживать протокол CustomStringConvertible (https://developer.apple.com/documentation/swift/customstringconvertible) и выводить свое описание, также должны быть реализованы свойства:
//
//размер экрана в пикселях (можно использовать CGSize структуру или написать свою - с height width параметрами)
//булевая (Bool) переменная отвечающая iPad это или нет
//struct Device {
// var displaySize: CGSize = CGSize(width: 100, height: 100)
// var isIpad: Bool = false
//}
//
//enum AppleDevices: Device {
//
// case iPhone7 = Device()
//}
enum AppleDevices: CustomStringConvertible {
case iPhone7(CGSize = CGSize(width: 100.20, height: 300.2), Bool = false)
case ipad11(CGSize = CGSize(width: 800, height: 600.10), Bool = true)
var description: String {
switch self {
case .iPhone7(let displaySize, let isIpad):
return "This is \(self), with display (width): \(displaySize.width) (height): \(displaySize.height). Is it ipad - \(isIpad)"
case .ipad11(let displaySize, let isIpad):
return "This is \(self), with display (width): \(displaySize.width) (height): \(displaySize.height). Is it ipad - \(isIpad)"
}
}
}
let iphone = AppleDevices.iPhone7(CGSize(width: 100.20, height: 300.2), false)
print(iphone.description)
let iphone2 = AppleDevices.iPhone7(CGSize(width: 600.10, height: 100.2), false)
print(iphone2.description)
let ipadWithoutParams = AppleDevices.ipad11(CGSize(), true)