8.1.1 API современного стека GNU Objective-C
Стек GNU Objective-C предоставляет API, аналогичный API «Objective-C 2.0» Apple/NeXT Objective-C. API документирован в публичных заголовочных файлах стека GNU Objective-C:
- objc/objc.h: это основной заголовочный файл Objective-C, определяющий основные типы Objective-C, такие как
id,ClassиBOOL. Этот заголовок необходимо включать для почти любой работы с Objective-C. - objc/runtime.h: этот заголовок объявляет большинство публичных функций API стека, позволяющих просматривать и изменять структуры данных стека Objective-C. Эти функции достаточно стандартизированы для различных стеков Objective-C и почти идентичны функциям стека Apple/NeXT Objective-C. В нём не объявлены функции некоторых специализированных областей (создание и пересылка вызовов сообщений, потоки), которые находятся в других заголовочных файлах ниже. Для использования любых функций, таких как
class_getName(), объявленных в objc/runtime.h, необходимо включить objc/objc.h и objc/runtime.h. - objc/message.h: этот заголовок объявляет публичные функции, используемые для создания, уничтожения и пересылки вызовов сообщений. Поскольку обмен сообщениями осуществляется совершенно по-разному в различных стеках, функции в этом заголовке специфичны для реализации стека GNU Objective-C.
- 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-6.5.0/gcc/Modern-GNU-Objective-C-runtime-API.html