Переопределение linkingObjectsProperties от Swift 2.0

Я использую realm-cocoa(v1.0.1) с проектом Swift 2.0 (требуется совместимость с target-c) и у меня возникают проблемы с переопределением метода linkingObjectsProperties.

Я следовал документации Realm ( https://realm.io/docs/objc/latest/) и определил переопределение моей функции в моем подклассе RLMObject следующим образом:

override class func linkingObjectsProperties() -> NSDictionary {
    return ["owners": RLMPropertyDescriptor(withClass: Person.self, propertyName: "dogs")]
}

Затем компилятор жалуется, говоря: "Метод не переопределяет ни один метод из своего суперкласса".

Если я добавлю префикс к @objc, ошибка изменится на "Переопределение метода с помощью селектора" linkingObjectsProperties "имеет несовместимый тип" () -> NSDictionary'

Есть идеи?

Спасибо!

1 ответ

Решение

+[RLMObject linkingObjectsProperties] подвергается Swift как class func linkingObjectsProperties() -> [String : RLMPropertyDescriptor], Обновление переопределения для соответствия этой подписи должно помочь.

Другие вопросы по тегам