Hinzufügen von NSCoding als Erweiterung

Ich möchte eine Framework-Klasse erweitern Ich möchte den Quellcode nicht direkt bearbeiten), und passen Sie es an @ NSCoding.

rundsätzlich ist hier eine Vereinfachung der Situation, in der ich mich befind

/* Can't be edited. */
class Car: NSObject {
    var color: String?
}

/* Can be edited */
extension Car: NSCoding {
    init(coder aDecoder: NSCoder) {
    }

    func encodeWithCoder(aCoder: NSCoder) {
    }
}

Das Problem istinit(coder aDecoder: NSCoder) ist laut Header-Datei eindesignated initializer ( Ist das nicht komisch? sollte es nicht ein @ seconvenience initializer ?). DasDokumentatio sagt, dass die Erweiterung keinen neuen festgelegten Initialisierer hinzufügen kann.

Mein Englisch ist nicht perfekt und vielleicht habe ich etwas verpasst ... Oder ist es wirklich unmöglich?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage