8.1.1 API современного модуля времени выполнения GNU Objective-C
Модуль времени выполнения GNU Objective-C предоставляет API, аналогичный API «Objective-C 2.0» Apple/NeXT Objective-C runtime. API документирован в общедоступных заголовочных файлах модуля времени выполнения GNU Objective-C:
-
objc/objc.h: это базовый заголовочный файл Objective-C, определяющий базовые типы Objective-C, такие какid,ClassиBOOL. Этот заголовок необходимо включать для работы практически с любыми функциями Objective-C. -
objc/runtime.h: этот заголовок объявляет большинство функций публичного API времени выполнения, позволяющих просматривать и изменять структуры данных Objective-C runtime. Эти функции достаточно стандартизированы для различных реализаций Objective-C runtime и почти идентичны функциям Apple/NeXT Objective-C runtime. В нем не объявлены функции некоторых специализированных областей (создание и пересылка вызовов сообщений, потоки), которые находятся в других заголовочных файлах ниже. Для использования любых функций, таких какclass_getName(), объявленных вobjc/runtime.h, необходимо включитьobjc/objc.hиobjc/runtime.h. -
objc/message.h: этот заголовок объявляет публичные функции, используемые для создания, разрушения и пересылки вызовов сообщений. Поскольку обработка сообщений осуществляется по-разному в различных реализациях, функции в этом заголовке специфичны для реализации GNU Objective-C runtime. -
objc/objc-exception.h: этот заголовок объявляет некоторые публичные функции, связанные с исключениями Objective-C. Например, функции в этом заголовке позволяют генерировать исключение Objective-C из обычного кода C/C++. -
objc/objc-sync.h: этот заголовок объявляет некоторые публичные функции, связанные с синтаксисом Objective-C@synchronized(), позволяя эмулировать блок Objective-C@synchronized()в обычном коде C/C++. -
objc/thr.h: этот заголовок объявляет публичный API-слой для управления потоками, предоставляемый только модулем времени выполнения GNU Objective-C. В нем объявлены функции, такие какobjc_mutex_lock(), которые предоставляют платформонезависимый набор функций потоков.
Заголовочные файлы содержат подробную документацию для каждой функции API времени выполнения GNU Objective-C.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/Modern-GNU-Objective-C-runtime-API.html