Как проверять реализации функций swift

#swift #xcode

#swift #xcode

Вопрос:

Как я могу заглянуть за кулисы? Для примера я хотел бы узнать больше об isEqual функции … Command Click -&&t; Jump to Definition не показывает, как работает эта функция.

 let pi : Double = 3.14159265359
pi.isEqual(3.14159265359)

  

Комментарии:

1. Вы должны перейти к определению, щелкнув правой кнопкой мыши на isEqual, затем выберите Jumb к определению.

2. это то, что я сделал, и, как написал @EmilioPelaez, я вижу определение (сигнатуру функции), а также некоторые комментарии, но реализация отсутствует…

Ответ №1:

Если код находится в скомпилированном фреймворке, например, Foundation или UIKit , Xcode приведет вас к объявлению функции, где вы сможете увидеть сигнатуру функции и, возможно, некоторые комментарии к ней, но не полный код, поскольку код уже скомпилирован, у Xcode нет к нему доступа.

Swift имеет открытый исходный код, вы можете зайти в репозиторий и посмотреть, как это реализовано. Я думаю, что это включает в себя большинство из Foundation , но не будет включать фреймворки Apple, такие как UIKit , SwiftUI и т.д.

Комментарии:

1. например, как я читал здесь , isEqual функция является частью стандартной библиотеки Swift, но найти дополнительную информацию о ней сложно, поскольку все результаты Goo&le будут указывать на документацию Apple

2. Как я уже сказал, если вы хотите увидеть реализацию, вам нужно перейти в репозиторий Swift: &ithub.com/apple/swift . Тем не менее, ориентироваться в нем будет непросто, он будет более низкого уровня, и вы, вероятно, не найдете его намного полезнее, чем просто читать то, что описано в документации.