الفرق بين المراجعتين لصفحة: «Ruby/Struct/dig»

من موسوعة حسوب
< Ruby‏ | Struct
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>dig‎</code> الخاص بالصنف <code>Struct</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف:...'
 
ط مراجعة وتدقيق.
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>dig‎</code> الخاص بالصنف <code>Struct</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>Struct.dig‎</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Struct]]
[[تصنيف: Ruby Struct]]
يستخلص التابع <code>dig</code> القيمة المتشعبة (nested) المحددة بواسطة تسلسل الكائنات <code>key</code> (انظر فقرة البنية العامة) عن طريق استدعاء <code>dig</code> في كل خطوة، ويُعيد <code>nil</code> إن كانت قيمة أي خطوة وسطية تساوي <code>nil</code>.
يستخلص التابع <code>dig</code> القيمة المتشعبة (nested) المحددة بواسطة سلسلة من الكائنات عن طريق استدعاء التابع <code>dig</code> في كل خطوة، ويُعيد القيمة <code>nil</code> إن كانت قيمة أي خطوة وسطية تساوي <code>nil</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">dig(key, ...)  → object‎</syntaxhighlight>
<syntaxhighlight lang="ruby">dig(key, ...)  → object‎</syntaxhighlight>
==المعاملات==
==المعاملات==
===<code>key‎</code>===
===<code>key‎</code>===
===<code>...‎</code>===
كائن.
==القيمة المُعادة==
 
==القيمة المعادة==
تعاد القيمة المتشعبة (nested) المحددة بواسطة سلسلة الكائنات <code>key</code>، أو تعاد القيمة <code>nil</code> إن كانت قيمة أي خطوة وسطية تساوي <code>nil</code>.
 
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>dig‎</code>:
مثال على استخدام التابع <code>dig‎</code>:
سطر 17: سطر 20:
f.dig(:b, 0)            # => nil
f.dig(:b, 0)            # => nil
f.dig(:a, :a, :b, :c)  # TypeError: no implicit conversion of Symbol into Integer‎</syntaxhighlight>
f.dig(:a, :a, :b, :c)  # TypeError: no implicit conversion of Symbol into Integer‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/Struct/index_operator-3D|[]=]]</code>: معامل التعيين - يضبط قيمة عضو ال[[Ruby/Struct|بنية]] المعطى <code>member</code> (انظر فقرة البنية العامة)، أو العضو الموجود عند الفهرس <code>index</code>.  يطلق الاستثناء <code>[[Ruby/NameError|NameError]]</code> إن كان <code>member</code> غير موجود، أو الاستثناء <code>[[Ruby/IndexError|IndexError]]</code> إن كان <code>index</code> خارج النطاق.
* التابع <code>[[Ruby/Struct/each|each]]</code>: يعيد قيمة كل عضو من أعضاء ال[[Ruby/Struct|بنية]] بالترتيب.  
* التابع <code>[[Ruby/Struct/each|each]]</code>: يعيد التابع <code>dig</code> قيمة كل عضو من أعضاء ال[[Ruby/Struct|بنية]] بالترتيب.  في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف Enumerator بدلاً من ذلك.
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Struct.html#method-i-dig قسم التابع dig‎ في الصنف Struct‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Struct.html#method-i-dig قسم التابع dig‎ في الصنف Struct‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:27، 5 ديسمبر 2018

يستخلص التابع dig القيمة المتشعبة (nested) المحددة بواسطة سلسلة من الكائنات عن طريق استدعاء التابع dig في كل خطوة، ويُعيد القيمة nil إن كانت قيمة أي خطوة وسطية تساوي nil.

البنية العامة

dig(key, ...)   object

المعاملات

key‎

كائن.

القيمة المعادة

تعاد القيمة المتشعبة (nested) المحددة بواسطة سلسلة الكائنات key، أو تعاد القيمة nil إن كانت قيمة أي خطوة وسطية تساوي nil.

أمثلة

مثال على استخدام التابع dig‎:

Foo = Struct.new(:a)
f = Foo.new(Foo.new({b: [1, 2, 3]}))
f.dig(:a, :a, :b, 0)    # => 1
f.dig(:b, 0)            # => nil
f.dig(:a, :a, :b, :c)   # TypeError: no implicit conversion of Symbol into Integer‎

انظر أيضًا

  • التابع each: يعيد قيمة كل عضو من أعضاء البنية بالترتيب.

مصادر