الوثيقة ورثت Obj-C أساليب دون Doxygen/مترجم التحذيرات ؟

StackOverflow https://stackoverflow.com/questions/1002653

سؤال

الخلفية:

أنا خلق تسلسل مركب القاموس هياكل البيانات في الهدف جيم, وأنا وراثة من NSMutableDictionary لذلك هذه الفئات يمكن أن تستخدم في كل مكان على NSDictionary/NSMutableDictionary دعا.(فقط لكي لا يعتقد الناس أنني إعادة اختراع العجلة ، كل واحد يستخدم CFMutableDictionaryRef, بالإضافة إلى بعض إضافية هيكل مخازن المفاتيح في ترتيب فرزها ، الإدراج النظام ، إلخ.) تمشيا مع أبل الوثائق ، لقد تجاوز اللازمة NSDictionary الأوليات و NSMutableDictionary الأوليات جميع الطرق الأخرى في تلك الطبقات الاستخدام.

الهدف:

منذ أن كنت تسعى إلى توثيق واجهات برمجة التطبيقات بلدي الإطار تماما كما هو معقول ، أود وثائق بلدي مخصص فرعية (التي تم إنشاؤها بواسطة Doxygen) لتشمل الوصف من الأساليب الأكثر شيوعا من NS(قابلة للتغيير)قاموس, بحيث لا يحتاج المستخدمون إلى البحث في آخر الصفحة فقط إلى أساليب معينة قاموس مخصص يرث دون تغيير.وبالإضافة إلى ذلك, في بعض الأحيان الوثائق يجب أن تعكس وظائف مختلفة بسبب تجاوز أساليب بدائية ، على الرغم من أن طريقة التنفيذ دون تغيير عن NS(قابلة للتغيير)القاموس.

المشكلة:

أنا لا أحصل على الأخطاء تحذيرات فقط عندما تجاوز أساليب موثقة.إذا قمت بإضافة تعليقات الوثيقة الأساليب الموروثة, Doxygen يشكو (و لن تنتج وقال الوثائق) إلا إذا أضيف طريقة النموذج إلى ملف الرأس.إذا قمت بإضافة نموذج, مترجم القضايا تحذير من أن التنفيذ الكامل لأنه لا يتضمن تعريف الأسلوب عن الأسلوب أعلن.ومن الواضح أن هذا هو الأسلوب موجود في الطبقة الأم ، ولكن المترجم يجري المتمسك عن تنفيذ ذلك منذ النموذج هو أساسا redeclared في فرعية.

الأسئلة:

  • هل من الممكن لجعل كسكودي/دول مجلس التعاون الخليجي لقمع "طريقة تعريف 'X'" لم يتم العثور على تحذيرات الأساليب الموروثة من أحد الوالدين الصف ؟
  • هل من الممكن أن القوة Doxygen لإنشاء وثائق الأسلوب الذي لا delaration موجود ؟ حاولت استخدام \fn الأمر, ولكن حصلت على نفس النتائج.
  • هل من الممكن أن تخدع Doxygen إلى التفكير في أن الوثائق أكتب في الواقع ينطبق على NSMutableDictionary, بعد ذلك تظهر جميع مخصص فرعية?

تحرير:

بقدر ما أستطيع أن أقول, الجواب على السؤال الأول هو نعم ولا.تقنيا باستخدام -Wno-protocol الخيار (أو إلغاء تحديد "غير مكتملة الهدف-C البروتوكولات" تحذير في كسكودي بناء إعدادات) لا تسبب دول مجلس التعاون الخليجي لقمع وقت التحويل البرمجي تحذيرات حول الفئات التي لا تظهر على تنفيذ جميع الطرق البروتوكول.ولكن هذه الأقنعة المشكلة الفئات التي حقا لا تنفيذ جميع الوسائل الضرورية.من أجل بناء إطار أن يجعل يتنفس استخدام البروتوكولات, هذا ليس خيارا.حاليا في دول مجلس التعاون الخليجي لا يبدو أن تعرف عن الأساليب الموروثة من ربط (لغير المصدر) الفئة الأصل.

هل كانت مفيدة؟

المحلول

بقدر ما أعرف الجواب على ثلاثة أسئلة هي:لا.

أود أن ألفت انتباهكم إلى حقيقة أن أبل لم وثائق الوثيقة الأساليب الموروثة في فرعية الوثائق.

وعلاوة على ذلك NSDictionary و NSMutableDictionary ليست من غير المألوف أن تحتاج إلى تذكير من الأساليب الأكثر شيوعا.بالنسبة لي رابط الوثائق الموجودة, كما أن لديك بالفعل ، غير كافية.

حول نقطة محددة من سلوك هذه الطرق الشائعة على فئة فرعية ، وأود أن مجرد إدراج قسم مخصص في وصف مفصل الفصل.

على أي حال, ممكن الحل في إعطاء كل إعلان و تنفيذ الأساليب الموروثة.وإنما هو مبالغة بعض الشيء فقط للتوثيق الغرض:

- (NSArray *) allValues
{
    return [super allValues];
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top