Size: a a a

iOS Developers — русскоговорящее сообщество

2020 December 02

AY

Alex Yatsenko in iOS Developers — русскоговорящее сообщество
Say my name
и это еще более удивительно
там ничего удивительного, в surface процу уже сто лет в обед, а м1 - свежак
источник

S

Say my name in iOS Developers — русскоговорящее сообщество
подождем М2
источник

S

Say my name in iOS Developers — русскоговорящее сообщество
под шумок эппл решила нагадить
источник

S

Say my name in iOS Developers — русскоговорящее сообщество
Полный список iMac, добавленных в список устаревших продуктов:
▪️ iMac 21,5, конец 2013 г.
▪️ iMac 27, конец 2013 г.
▪️ iMac 21,5, середина 2014 г.
▪️ iMac 27 Retina 5K, конец 2014 г.
▪️ iMac 27 Retina 5K, середина 2015 г.
источник

I

Ivan in iOS Developers — русскоговорящее сообщество
Say my name
Полный список iMac, добавленных в список устаревших продуктов:
▪️ iMac 21,5, конец 2013 г.
▪️ iMac 27, конец 2013 г.
▪️ iMac 21,5, середина 2014 г.
▪️ iMac 27 Retina 5K, конец 2014 г.
▪️ iMac 27 Retina 5K, середина 2015 г.
А вот это нифига себе прикол. 5к в помойку отправили. Охренеть.
источник

IG

Ivan Gaydamakin in iOS Developers — русскоговорящее сообщество
Say my name
Полный список iMac, добавленных в список устаревших продуктов:
▪️ iMac 21,5, конец 2013 г.
▪️ iMac 27, конец 2013 г.
▪️ iMac 21,5, середина 2014 г.
▪️ iMac 27 Retina 5K, конец 2014 г.
▪️ iMac 27 Retina 5K, середина 2015 г.
офигели
источник

S

Say my name in iOS Developers — русскоговорящее сообщество
так что несите свои аймаки на помойку а денежку эппл за новые М1
источник

S

Say my name in iOS Developers — русскоговорящее сообщество
😂
источник

AM

A Mika in iOS Developers — русскоговорящее сообщество
Мне м1 понравился ток тем, что та можно лигу легенд играть
источник

NK

Nameless King in iOS Developers — русскоговорящее сообщество
источник

IG

Ivan Gnatyuk in iOS Developers — русскоговорящее сообщество
а кто как использует энамчик Result в случае если при успехе ничего не нужно возвращать? Нужно просто видеть сам факт того успех или ошибка.

Просто вот так?

func doSomething(_ result: Result<Bool, NSError>)


а на вызывающей стороне:

switch result {
case .success(_):
  // ...
case .failure(let error):
  //
}
источник

IG

Ivan Gnatyuk in iOS Developers — русскоговорящее сообщество
просто в таком случае на вызывающей стороне может быть вопрос, а если в случае успеха там будет false например, что тогда?

я задумался над этим и только такое придумал:

struct DumbSuccess {
   
private init() {}
   
   
static let success = DumbSuccess()
}



func doSomething(_ result: Result<DumbSuccess, NSError>)
источник

AK

Aleksey Konshin in iOS Developers — русскоговорящее сообщество
Result<Void, Error>
switch result {
ca
se .success:
  // ...
ca
se .failure(let error):
  //
}
источник

IG

Ivan Gnatyuk in iOS Developers — русскоговорящее сообщество
Aleksey Konshin
Result<Void, Error>
switch result {
ca
se .success:
  // ...
ca
se .failure(let error):
  //
}
норм решение. Только количество скобочек удручает

doSomething(.success(()))
источник

AK

Aleksey Konshin in iOS Developers — русскоговорящее сообщество
Ivan Gnatyuk
норм решение. Только количество скобочек удручает

doSomething(.success(()))
extension Result where Success == Void {
   static var success: Self {
       return .success(())
   }
}

func someFunc(_ completion: (Result<Void, Error>) -> Void) {
   completion(.success)
}
источник

IG

Ivan Gnatyuk in iOS Developers — русскоговорящее сообщество
Aleksey Konshin
extension Result where Success == Void {
   static var success: Self {
       return .success(())
   }
}

func someFunc(_ completion: (Result<Void, Error>) -> Void) {
   completion(.success)
}
источник

AK

Aleksey Konshin in iOS Developers — русскоговорящее сообщество
Еще для большего сахара:

extension Result where Success == Void {
   static var success: Self {
       return .success(())
   }
}

typealias Failable<Error: Swift.Error> = Result<Void, Error>

func someFunc(_ completion: (Failable<Error>) -> Void) {
   completion(.success)
}
источник

AK

Aleksey Konshin in iOS Developers — русскоговорящее сообщество
Ну и для полной радости

extension Result where Success == Void {
   static var success: Self {
       return .success(())
   }
}

typealias Failable<Error: Swift.Error> = Result<Void, Error>

typealias AnyFailable = Result<Void, Error>

func someFunc(_ completion: (AnyFailable) -> Void) {
   completion(.success)
}
источник

IG

Ivan Gnatyuk in iOS Developers — русскоговорящее сообщество
Aleksey Konshin
Ну и для полной радости

extension Result where Success == Void {
   static var success: Self {
       return .success(())
   }
}

typealias Failable<Error: Swift.Error> = Result<Void, Error>

typealias AnyFailable = Result<Void, Error>

func someFunc(_ completion: (AnyFailable) -> Void) {
   completion(.success)
}
для полной можно еще return убрать
источник

AK

Aleksey Konshin in iOS Developers — русскоговорящее сообщество
Ivan Gnatyuk
для полной можно еще return убрать
Идеально
источник