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. В нём не объявлены функции некоторых специализированных областей (создание и переадресация вызовов сообщений, потоки), которые находятся в других заголовочных файлах ниже. Вам необходимо включить objc/objc.h и objc/runtime.h, чтобы использовать любые функции, такие как
class_getName(), объявленные в objc/runtime.h. - objc/message.h: этот заголовок объявляет публичные функции, используемые для создания, разрушения и переадресации вызовов сообщений. Поскольку механизм передачи сообщений реализуется совершенно по-разному в разных runtime, функции в этом заголовке специфичны для реализации 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.
Далее: API традиционного ядра GNU Objective-C, Назад: API ядра GNU Objective-C [Оглавление][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-8.5.0/gcc/Modern-GNU-Objective-C-runtime-API.html