Как я сопоставляю между документацией объекта Какао и соглашениями вызова Objective C? - PullRequest
0 голосов
/ 20 ноября 2018

Я работаю над приложением MacOS в Rust.В настоящее время у Rust нет хороших библиотек для привязки к Какао (у него есть полная библиотека, но она исключает все преимущества статической проверки типов), поэтому я пытаюсь использовать Objective-C для генерации объектов самостоятельно.

Однако как я могу достаточно хорошо понять документацию по Какао, чтобы знать, как называются методы?

Например: NSWindow init

NSWindow init(contentRect: NSRect,
              styleMask: NSWindow.StyleMask,
              backing: NSWindow.BackingStoreType,
              defer: Bool)

Это соответствует (используя objc ящик из Rust):

msg_send![self.ptr,
          initWithContentRect:rect
          styleMask:style.bits
          backing:backing as NSUInteger
          defer:defer_]

И NSWindow cascadeTopLeft

NSWindow func cascadeTopLeft(from: NSPoint) -> NSPoint

соответствует

msg_send![self.ptr, cascadeTopLeftFromPoint:point]

Я понял это с помощью поиска в Google и чтения кода других людей.Но каков шаблон?Как мне найти правильное сообщение для отправки из документации Apple?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...