我有一个协议(protocol),它有一个类型别名:protocolFooable{typealiasT:EquatablefuncmakeFoo()->T}我希望所有符合它的类型都将从makeFoo返回Equatable值。现在我想做一个数组扩展,它存储Fooable值:extensionArraywhereElement:Fooable{funcarrayFoo(array:Array,transform:(Element,[F])->S)->[S]{我希望给定数组A,其中包含Fooable元素和数组B,其中包含Fooable元素,我可以制作:a.arrayFoo(b,{...})