Опублікувати оновлення WWDC 2018
Починаючи з Xcode 10 та Swift 4.2, тепер ви зможете #warning
знову користуватися таким чином:
#warning("TODO: Clean up this code after testing")
Це відображатиметься як попередження в Xcode так само, як очікувалося!
Це працює навіть у поєднанні з #if
чеками, наприклад, наступне буде показувати попередження, лише якщо ваша цільова платформа - iOS:
#if os(iOS)
#warning("this code is untested in iOS")
#endif
Є також, #error
якщо ви хочете, щоб ваша збірка вийшла з ладу.
Попередній відповідь WWDC 2018
У Swift за допомогою XCode 6 ви можете використовувати різні види орієнтирів для різних цілей. Ось що Apple говорить про це:
Тепер Xcode підтримує // MARK :, // TODO: і // FIXME: орієнтири для анотування коду та перерахування їх на панелі стрибків.
Тож для встановлення попередження з описом ви б використовували щось подібне:
//TODO: Clean up this code after testing
Якщо ви просто хочете встановити коротку позначку (якщо пригадати, що вам потрібно запам'ятати), скористайтеся цим:
//FIXME
EDIT:
Однак ці орієнтири відображаються лише на панелі стрибків XCode, яка може бути не тим, чого ви хочете, і чого можна очікувати, особливо від знаків // TODO: та // FIXME. Я подав радари на те: # 17776817. Сподіваємось, Apple додасть це у наступних складах у XCode 6.
РІШЕННЯ (EDIT 2):
Якщо ви встановите Swift Linter через Homebrew (запустіть brew install swiftlint
після a brew update
) та додасте запропонований сценарій збірки до свого проекту, ви побачите, що всі ваші TODO
та FIXME
орієнтири відображаються як попередження в Xcode. SwiftLint навіть додасть ще кілька попереджень / помилок, які ви можете налаштувати відповідно до ваших потреб - я можу лише рекомендувати використовувати SwiftLint, і це прекрасно вирішує цю проблему!
//WARNING
само, як буде #pragma,//MARK
але наразі жодна з них не додається до бета-версії XCode.