Swift Как сделать импортированные протоколы импортированными из другого модуля доступными вне текущего модуля
Используя swift, я создал платформу Common, которая содержит функции и протоколы, которые я часто использую, чтобы сократить повторное использование кода.
Common.framework
public protocol CommonProtocol {}
Затем я создал структуру, которой я хочу поделиться с другими, которая включает в себя некоторые классы, которые расширяют CommonProtocol и передают CommonProtocol в ответ на некоторые вызовы функций. Sharable.framework
public class Sharable : CommonProtocol {
func getCommon() -> CommonProtocol
}
К сожалению, когда я пытаюсь использовать Sharable.framework в проекте, я получаю там ошибку:
Ошибка компилятора Swift
Использование необъявленного типа CommonProtocol
Кто-нибудь знает, как сделать протокол видимым для модулей, которые используют Sharable.framework?
Я копирую фрейм Common.framework на шаге "Копировать файлы" в Destination Frameworks (не было никаких заметных изменений, когда я сделал его Shared Frameworks)
Если возможно, я бы предпочел, чтобы только определенные протоколы из Common.framework были видны через Sharable.framework, и я не хочу заставлять своих пользователей импортировать несколько платформ, если я могу этого избежать.