تغيير أسماء الطرق

التعليق التوضيحي لـ ObjectiveCName

يمكنك إضافة تعليق توضيحي لأي طريقة في Java باستخدام @ObjectiveCName لتغيير الاسم المُترجَم لـ تلك الطريقة وأي طريقة تلغيها. على سبيل المثال:

@ObjectiveCName("setTimeWithHours:minutes:seconds:")
public void setTime(int hours, int minutes, int seconds) {
  ...
}

تتم ترجمته على النحو التالي:

- (void)setTimeWithHours:(jint)hours
                 minutes:(jint)minutes
                 seconds:(jint)seconds;

ملف التعيين

يمكن تغيير أسماء الطرق باستخدام العلامة --mapping، التي تأخذ ملفًا بالخصائص مع التخطيطات المراد استخدامها. يتم تحديد كل عملية ربط لكل طريقة من خلال التوقيع الكامل لطريقة Java للمفتاح، قيمة محدد الهدف-ج. على سبيل المثال، السطر المراد تعيين Object.equals() إلى NSObject.isEqual: :

java.lang.Object.equals(Ljava/lang/Object;)Z = isEqual:

التعريف الأيمن هو توقيع الطريقة الكاملة، كما هو محدد من خلال جهاز Java الافتراضي. المواصفات: اليمين يدويًا يتكون من محدد iOS (أي ما ستمرره إلى @selector()). يجب أن تحتوي الطريقة وربطها على نفس عدد المعلمات.

مثال آخر، هذا السطر مكافئ للمثال الوارد في القسم السابق:

pkg.ClassName.setTime(III)V = setTimeWithHours:minutes:seconds:

يمكن تحديد ملفات تعيين إضافية في سطر الأوامر، باستخدام الخيار --mapping.