نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

التابع Object.enum_for في روبي

يُنشئ التابع enum_for نسخةً من الصنف Enumerator الذي يجري عملية عدٍّ (enumerate) وتكرار عبر استدعاء التابع المُمرَّر إليها مع كائنٍ محدَّد، وتمرير وسائط إن أعطيت. إذا مُرِّرت كتلة (block) إلى التابع، فستُستخدم لحساب حجم نسخة الصنف Enumerator دون الحاجة إلى تكرارها (ألقِ نظرة على التابع Enumerator.size). البنية العامة enum_for(method = :each, *args) → enum enum_for(method = :each, *args){|*args| block} → enum المعاملات method التابع الذي ستُطبَّق عليه العملية. القيمة الافتراضية لهذا المعامل هي: each:. args* الوسائط المراد تمريرها إلى التابع. args| ...

 التابع ENV.each_pair في روبي

يجلب التابع each_pair‎ الزوج اسم/قيمة لكل متغير من متغيرات البيئة بالتتابع، ويرسله إلى الكتلة البرمجية المعطاة. في حال عدم تمرير كتلة برمجية إلى التابع، فسيُعيد كائنًا من النوع Enumerator. البنية العامة each_pair { |name, value| } → Hash each_pair → Enumerator القيمة المعادة يعاد كائن من النوع Hash بعد تمرير الزوج اسم/قيمة لكل متغير من متغيرات البيئة إلى الكتلة المعطاة على حدة، أو يعاد كائن من النوع Enumerator في حال عدم تمرير أي كتلة برمجية. انظر أيضًا التابع each‎: يجلب أسماء ...

اختلال الشيفرات ومشاكلها (Code Smells)

قد تعاني الشيفرات الكثير من الاختلالات والمشاكل الشكلية؛ فبمجرد اكتشاف تلك الاختلالات الظاهرية، يسهل علينا معرفة العلاج (التقنيات) وتطبيقه (إعادة التصميم) للحصول على شيفرة سليمة نظيفة. من هذه الاختلالات: المبالغة والإطالة قد يزداد حجم الشيفرات والتوابع (methods) والأصناف (classes) ازديادًا كبيرًا ليصل لمرحلةٍ يصعُب التعامل معها، ولا يحدث هذا بشكلٍ فجائيِّ دفعةً واحدةً، بل يكون ناتجًا عن تراكم الإضافات أثناء تطوير البرنامج (وخاصةً عندما لا يبذل أحدٌ جهدًا للحدِّ من ذلك التشعب)، ويبدو هذا التضخم واضحًا التوابع الطويلة (long methods): ...

التابع Enumerable.collect_concat في روبي

يعيد التابع collect_concat مصفوفة جديدة مع نتائج متصلة لتنفيذ الكتلة المعطاة مع كل عنصر من عناصر المُعدِّد الذي استدعي معه. إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا من النوع Enumerator. البنية العامة collect_concat { |obj| block } → array collect_concat → an_enumerator القيمة المعادة تعاد مصفوفة تحوي نتائج تنفيذ الكتلة المعطاة بشكل متصل (concatenated) مع كل عنصر من عناصر المُعدِّد المعطى، أو يعاد كائن من النوع Enumerator إن لم تُعطَ أية كتلة. أمثلة مثال على استعمال التابع collect_concat: [1, 2, 3, 4].collect_concat ...

التابع Enumerator.each_with_object في روبي

يكرر التابع each_with_object الكتلة المعطاة على كل عنصر من عناصر الكائن الذي استدعي معه مع كائن آخر اعتباطي (الكائن المُمرَّر إليه). إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا جديدًا من النوع Enumerator. البنية العامة each_with_object(obj) {|(*args), obj| ... } each_with_object(obj) المعاملات obj الكائن الذي سيُكرَّر مع كل عنصر من عناصر الكائن المعطى. القيمة المعادة يعاد الكائن obj المعطى، أو يعاد كائن جديد من النوع Enumerator إن لم تُعطَ أية كتلة. أمثلة مثال على استعمال التابع each_with_object: to_three = Enumerator.new do |y| ...

التابع Enumerator.size في روبي

يكرِّر التابع with_index الكتلة المعطاة على كل عنصر من عناصر المُعدِّد الذي استدعي معه مع فهارسها والتي تبدأ عند موضع محدَّد. إن لم تُعطَ الكتلة، فسيعيد التابع كائنًا جديدًا من النوع Enumerator يحوي تلك الفهارس. البنية العامة with_index(offset = 0) {|(*args), idx| ... } with_index(offset = 0) المعاملات offset عدد صحيح يحدِّد فهرس العنصر المراد بدء عملية التكرار عنده. القيمة الافتراضية هي: 0. القيمة المعادة يعاد الناتج الذي تعيده الكتلة بعد تكرارها على كل عنصر من عناصر المُعدِّد المعطى مع فهارسها والتي ...

التابع Enumerator.with_object في روبي

يكرِّر التابع with_object الكتلة المعطاة على كل عنصر من عناصر المُعدِّد الذي استدعي معه مع كائن اعتباطي (الكائن المُمرَّر إليه) ثم يعيد هذا الكائن. إن لم تُعطَ الكتلة، فسيعيد التابع كائنًا جديدًا من النوع Enumerator. البنية العامة with_object(obj) {|(*args), obj| ... } with_object(obj) المعاملات obj الكائن الذي سيُكرَّر مع كل عنصر من عناصر الكائن المعطى. القيمة المعادة يعاد الكائن obj المعطى، أو يعاد كائن جديد من النوع Enumerator إن لم تُعطَ أية كتلة. أمثلة مثال على استعمال التابع with_object: to_three = Enumerator.new do |y| 3.times ...

التابع Enumerable.reverse_each في روبي

ينشئ التابع reverse_each مصفوفة مؤقتة تحوي عناصر الكائن القابل للتعداد ثم يمر عليها (يستعملها) بترتيب معاكس. إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا جديدًا من النوع Enumerator. البنية العامة reverse_each(*args) { |item| block } → enum reverse_each(*args) → an_enumerator المعاملات args الوسائط المراد استعمالها في العملية. القيمة المعادة يعاد ناتج تنفيذ الكتلة block على عناصر الكائن القابل للتعداد بترتيب معاكس بعد وضعها في مصفوفة مؤقتة، أو يعاد كائن جديد من النوع Enumerator. أمثلة مثال على استعمال التابع reverse_each: (1..3).reverse_each { |v| p ...

التابع Enumerator.rewind في روبي

يعيد التابع rewind موضع مؤشر السلسلة التعدادية (enumeration sequence) إلى البداية. إن استجاب كائن مغلق (enclosed object) إلى التابع rewind، فسيُستدعَى حينئذٍ. البنية العامة rewind → e القيمة المعادة تعاد e. انظر أيضًا التابع next: يعيد الكائن التالي في المُعدِّد الذي استدعي معه، ويحرك موضع المؤشر الداخلي للأمام خطوة واحدة. التابع peek: يعيد الكائن التالي في المُعدِّد الذي استدعي معه ولكن لا يحرِّك موضع المؤشر الداخلي للأمام.  مصادر قسم التابع rewind في الصنف Enumerator في توثيق روبي الرسمي.

التابع Array.drop_while في روبي

يحذف التابع drop_while عناصر المصفوفة الأولى التي تحقِّق شرطًا محدَّدًا ثمَّ يعيد مصفوفة جديدة تحوي بقية العناصر. إن لم تمرَّر أيَّة كتلة، فسيعيد التابع drop_while كائنًا من النوع Enumerator. البنية العامة drop_while { |obj| block } → new_ary drop_while → Enumerator القيم المعادة تعاد مصفوفة جديدة تحوي جميع عناصر المصفوفة المعطاة باستثناء العناصر الأولى التي تعيد كل منها القيمة true عند تطبيق الكتلة البرمجيَّة block عليها، أو يعاد كائنٌ من النوع Enumerator إن لم تعطَ الكتلة block. أمثلة مثالٌ على ...

عرض (20 السابقة | 20 التالية) (20 | 50 | 100 | 250 | 500).