Модификаторы доступа Swift Package
Я просто создал
Swift Package
с одним
UI class
в этом.
Мне удалось загрузить в репо и использовать в проекте.
В первый раз, когда я попытался импортировать его и использовать в основном проекте, возникла проблема с модификаторами доступа, потому что мой
package
было
not public
но определяется как
class MainView: UIView {}
.
После того, как я изменил свой пакет на
public class MainView: UIView {}
это сработало хорошо.
Мой вопрос:
Разве этот пакет не похож на любой другой из моих классов проекта? Почему предполагается использовать с
public
?
Есть ли способ использовать мои классы пакетов без
public access modifier
?
1 ответ
Модификатор доступа по умолчанию - «внутренний», что указывает на то, что он находится внутри самого проекта. Пакет (фреймворк) Swift - это сторонний «проект», который вы реализуете вложенным в свой проект. Это означает, что вы пытаетесь получить доступ к коду из другого проекта.
TL;DR, Нет, вы не можете пропустить использование модификаторов публичного доступа, если хотите достичь функциональности