Вопросы по теме 'protocol-extension'

Как создать расширение протокола, возвращающее подтверждающий тип?
Я пытаюсь реализовать расширение протокола JsonProcess, которое имеет функцию, которая принимает NSData в качестве аргумента, и я хочу создавать различные расширения протокола, используя собственные требования, что-то вроде этого extension...
528 просмотров

Методы расширения протокола не вызываются, когда протокол расширяет существующий протокол Apple API
Я хочу, чтобы протокол унаследовал от протокола Apple UIViewControllerTransitioningDelegate , добавил дополнительные требования к протоколу и предоставил реализацию по умолчанию для некоторых методов в этом протоколе. Когда я это делаю, методы не...
296 просмотров

Отправка статических методов расширения протокола Swift с суперклассом и подклассом
У меня похожая, но немного другая проблема, описанная в: Swift диспетчеризация метода расширения протокола с суперклассом и подклассом . Проблема связана со статическими методами в протоколах. У меня есть следующий код: protocol Protocol:...
737 просмотров

Swift 2.0: метод класса расширения протокола, возвращающий Self
Чтобы расширить некоторые функциональные возможности моих NSManagedObject подклассов, я определил ряд протоколов: protocol ManagedObjectFindable { static func find(format:String, arguments: [AnyObject]?, inContext...
423 просмотров
schedule 04.07.2022

Расширения протокола не действуют (Swift)
На момент написания этого вопроса я использую Swift 2.1 и Xcode 7.2.1. Приведенный ниже код (предназначенный для кодирования struct ) не работает и приводит к сбою игровой площадки Xcode без ошибок. В проекте это вызывает ошибку сегментации во...
98 просмотров

Отправка метода расширения протокола Swift с суперклассом и подклассом
Я обнаружил интересное поведение, похожее на ошибку... На основе поведения описаны следующие статьи: https://medium.com/ios-os-x-development/swift-protocol-extension-method-dispatch-6a6bf270ba94...
2265 просмотров
schedule 28.11.2022

Расширьте существующие протоколы, чтобы реализовать другой протокол с реализациями по умолчанию.
Можно ли добавить соответствие протокола другому протоколу с помощью расширения? Например, мы хотели бы, чтобы A соответствовало B: protocol A { var a : UIView {get} } protocol B { var b : UIView {get} } Я хочу дать реализацию по...
15710 просмотров
schedule 05.06.2023

Вызов функции расширения протокола из селектора
у меня есть класс протокола с именем MenuDisplayable. Этот протокол имеет расширение. protocol MenuDisplayable {} extension MenuDisplayable where Self: UIViewController { func showMenu( ) { let storyboard = UIStoryboard(storyboard: .Menu)...
295 просмотров

Протокол Swift реализуется только определенными классами
Я хочу создать протокол, который будет принят только определенным классом и его подклассами в swift. Я знаю, что могу использовать такие расширения протокола protocol PeopleProtocol: class { } extension PeopleProtocol where Self: People...
3250 просмотров
schedule 21.01.2023

«Equatable» не может быть автоматически синтезирован в расширении
Это работает: // Conformance to protocol correctly synthesized by compiler struct MyStruct: Equatable { } Это не: struct MyStruct { } // Doesn't work, even though the extension is in the same file extension MyStruct: Equatable { }...
1845 просмотров
schedule 18.02.2023