Загрузка в фреймворк конкретных констант в MacRuby - PullRequest
0 голосов
/ 27 декабря 2011

Я пишу небольшой скрипт MacRuby, чтобы получить некоторые ABRecords из поискового запроса, но я не уверен, как получить доступ к перечислениям, объявленным в определенном заголовочном файле для платформы AddressBook.

У меня есть этот скрипт, и я пытаюсь, чтобы kABFirstNameProperty и kABEqual были введены в среду как константы. Но при запуске сценария две константы не могут быть найдены.

framework "Cocoa"
framework "AddressBook"

globalAddressBook = ABAddressBook.sharedAddressBook
criteriaElement = ABPerson.searchElementForProperty(kABFirstNameProperty, label:nil, key:nil, value:"Callum", comparison:kABEqual)

1 Ответ

4 голосов
/ 28 декабря 2011

В MacRuby (так же, как и в Ruby) константы начинаются с заглавной буквы по соглашению, поэтому даже если AddressBook определяет это как kABFirstNameProperty, его необходимо записать как KABFirstNameProperty. Конечно, то же самое относится и к константе KABEqual в вашем примере.

...