Ябло (Свежее) / Говнокод #28823 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
status = message.status
        
        if message.status == .delivered || message.status == .failed || message.status == .read {
            button.isHidden == false
            button.isUserInteractionEnabled = true
        } else {
            button.isHidden == true
            button.isUserInteractionEnabled = false
        }

песааатель

alexis-ag alexis-ag, (Updated )

Комментарии (0)

Ябло (Свежее) / Говнокод #28803 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
nonisolated
private static func mapRules(firstName: String, surname: String, middleName: String) -> Bool {
    let mainRule = firstName.isNotEmpty &&
    surname.isNotEmpty &&
    firstName.isValidPersonalData &&
    surname.isValidPersonalData

    let additionalRule = middleName.isNotEmpty &&
    middleName.isValidPersonalData

    return additionalRule ? mainRule && additionalRule : mainRule
}

extension String {
var isValidPersonalData: Bool {
let regex = "^(?!\\s)[a-zA-Zа-яА-ЯёЁ\\s'-.]*[a-zA-Zа-яА-ЯёЁ][a-zA-Zа-яА-ЯёЁ\\s'-.]*$"
return NSPredicate(format: "SELF MATCHES %@", regex).evaluate(with: self)
}
}

alexis-ag alexis-ag, (Updated )

Комментарии (0)

Ябло (Свежее) / Говнокод #26738 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
struct Ololo: Comparable {
    let value: Int
    
    static func < (lhs: Ololo, rhs: Ololo) -> Bool {
        return lhs.value < rhs.value
    }
    
    static func < (lhs: Ololo, rhs: Ololo) -> String {
        if lhs.value < rhs.value {
            return "LESS"
        } else if lhs.value > rhs.value {
            return "MORE"
        } else {
            return "EQUAL"
        }
    }
}

let ololo1 = Ololo(value: 100)
let ololo2 = Ololo(value: 200)

let bool: Bool = ololo1 < ololo2
let string: String = ololo1 < ololo2

А в плюсах можно в operator> любую херь вернуть © jojaxon

Наверное, я поторопился, когда сказал, что крестобляди будет в свифте тесно.

Desktop Desktop, (Updated )

Комментарии (65, +65)

Ябло (Свежее) / Говнокод #26534 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
import Foundation

@objc protocol SomethingDoable {
    func doSomething()
}

class Inner: SomethingDoable {
    @objc func doSomething() {
        print("Inner!")
    }
}

@objc class Outer: NSObject {

    let inner: SomethingDoable = Inner()

    override func forwardingTarget(for aSelector: Selector!) -> Any? {
        return inner
    }
}

let outer = Outer()
outer.perform(#selector(SomethingDoable.doSomething))

Удачного дебага!

Desktop Desktop, (Updated )

Комментарии (52, +52)