Objective-C имеет следующие директивы:
- @ interface
- @ реализация
- @ end
- @ протокол
- @ property
- @ synthesize
Я думаю о таких вещах, как сложные marco или генераторы кода.Можно ли создавать собственные директивы для целей генерации кода?Одним из возможных применений является генерация методов для CoreData.
Я думаю, что нет, потому что я никогда ничего не видел об этом, но мой мир не мир.
Дополнительный вопрос:
Джонатан упомянул ниже, что можно написать свой собственный препроцессор, и возникает вопрос о том, как.В настоящее время #define SYMBOLIC_CONSTANT 102 заменит все экземпляры символов SYMBOLIC_CONSTANT на символы 102 в файле, прежде чем файлы перейдут в компилятор.
Я знаю, что в XCode вы можете добавить «Фазу запуска сценария»Целевой процесс сборки.Таким образом, я мог бы написать скрипт, чтобы найти мои пользовательские директивы препроцессора, такие как '$ coredata', и затем заставить скрипт генерировать новый файл, в котором символы $ coredata заменены некоторыми символами кода.Но из того, что я понимаю в процессе сборки XCode, вы не можете подавать измененные файлы в фазу источников компиляции.Файлы указаны и заблокированы IDE.
Кто-нибудь делал что-то подобное?Я знаю, что это возможно с внешней системой сборки, но, честно говоря, я не на этом уровне понимания.Я не знаю технических подробностей о том, что делает кнопка Build and Run.
А пока я начну читать документацию Apple XCode ...
Спасибо за ответы!