我正在尝试扩展 Optional 类型,使其成为 DataConvertible (我已在代码中的其他地方声明的协议),只有当 Wrapped 类型符合相同的协议时才通过添加协议一致性 .

我试过这个:

extension Optional: DataConvertible where Wrapped == DataConvertible { ... }

但后来我得到了错误:

带有约束的“可选”类型的扩展不能具有继承子句

有没有办法用当前版本的Swift实现这一目标?