تخطَّ إلى المحتوى

التعداد

منقول من الكتاب المرجعي: docs/handbook/language/12-enums.md · الإيداع 7a52f6c

القاعدة (منذ 0.7.0). تعداد الاسم: في المستوى الأعلى، ثم عضو في كل سطر. الاسم نوع، والعضو الاسم.العضو، ورقمه موضعه من 0. القرار وتفصيله في enums.md (وثيقة في مستودع المجمّع).

العملية ما تفعله
== و!= بين قيمتين من التعداد نفسه
اطبع(ل) ونص(ل) اسم العضو
عدد(ل) رقم العضو
لون(ن) العضو برقمه: !لون، وخارج الأعضاء خطأ.خارج_المدى
حالات ل: بلا حاله _ يجب أن يُذكر كل عضو (خطأ ترجمة يسمّي الناقص)؛ ودالة كل فروع حالات المكتملة فيها ارجع لا تُحذَّر
لكل ل في لون: الأعضاء بترتيب تعريفها (منذ 0.8.0)
مفتاح قاموس قاموس[لون, عدد] و{لون.احمر: 1} (منذ 0.8.0)
في وحدة مستوردة لون وحده إن لم يتكرر في وحدتين، ووحدة.لون.احمر دائماً؛ وخاص تعداد لا يُصدَّر (منذ 0.8.0)
مثال
تعداد اشارة:
احمر
اصفر
اخضر
داله التالية(ا اشارة) اشارة:
حالات ا:
حاله اشارة.احمر:
ارجع اشارة.اخضر
حاله اشارة.اخضر:
ارجع اشارة.اصفر
حاله اشارة.اصفر:
ارجع اشارة.احمر
ا = اشارة.احمر
لكل خطوة في مدى(0, 4):
اطبع(خطوة, ": ", ا, " (", عدد(ا), ")")
ا = التالية(ا)
اطبع(اشارة(1) والا اشارة.احمر, " ", اشارة(9) والا اشارة.احمر)
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
0: احمر (0)1: اخضر (2)2: اصفر (1)3: احمر (0)اصفر احمر

لكل على التعداد ومفتاح القاموس منه (منذ 0.8.0):

مثال
تعداد يوم:
سبت
احد
اثنين
ساعات قاموس[يوم, عدد] = {}
لكل ي في يوم:
ساعات[ي] = 8 - عدد(ي)
اطبع(ساعات, " ", ساعات[يوم.احد])
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
{سبت: 8, احد: 7, اثنين: 6} 7

القيود المعروفة. لا ترتيب (<) بين الأعضاء، ولا قيمة مكتوبة للعضو. الأخطاء ليست تعداداً: مجموعتها مفتوحة عامة (معالجة الأخطاء).

أخطاء محتملة.

مثال
تعداد اشارة:
احمر
اخضر
ا = اشارة.احمر
حالات ا:
حاله اشارة.احمر:
اطبع("قف")
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
​[خطأ دلالي E0388] سطر 5:1 - 'حالات' على التعداد 'اشارة' لا تذكر: اخضر   5 | حالات ا:     | ^~~~~  تلميح: اذكر كل عضو في 'حاله'، أو أضف  حاله _:  لما بقي.

رمز الخروج: 2

في فهرس الأخطاء: E0388