Невозможно расширить протокол с другим протоколом в Swift - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь реализовать этот фрагмент кода в моем проекте.

private protocol AnyOptional {
    var isNil: Bool { get }
}

extension Optional: AnyOptional {
    var isNil: Bool { self == nil }
}

Я видел его на SwiftBySundell https://www.swiftbysundell.com/articles/property-wrappers-in-swift/. Но, к сожалению, я получаю эту ошибку: « Расширение протокола« Необязательно »не может иметь условие наследования ». Хотя, когда я попробовал тот же код на детской площадке, он работал просто отлично. Есть идеи почему?

1 Ответ

1 голос
/ 25 марта 2020

Убедитесь, что имя типа Optional не переопределено сторонним модулем (или даже вашим собственным модулем). Если это так, тогда вы можете использовать Swift.Optional вместо ссылки на перечисление Optional, встроенное в Swift.

...