String?.isNullOrEmpty
protocol StringOptionalProtocol {}
extension String: StringOptionalProtocol {}
extension Optional where Wrapped: StringOptionalProtocol {
var isNullOrEmpty: Bool {
if let str = self as? String {
return str.isEmpty
}
return true
}
}