الفرق بين المراجعتين لصفحة: «Ruby/Object/tap»
طلا ملخص تعديل |
طلا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
{{DISPLAYTITLE:التابع <code>Object.tap</code> في روبي}} | {{DISPLAYTITLE:التابع <code>Object.tap</code> في روبي}} | ||
يُدخل التابع <code>tap</code> الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة. | يُدخل التابع <code>tap</code> الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة. | ||
سطر 35: | سطر 36: | ||
* التابع <code>[[Ruby/Object/yield self|yield_self]]</code>: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة. | * التابع <code>[[Ruby/Object/yield self|yield_self]]</code>: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة. | ||
== مصادر == | == مصادر == | ||
* صفحة التابع Object | * [http://ruby-doc.org/core-2.5.1/Object.html#method-i-tap صفحة التابع tap في الصنف Object في توثيق روبي الرسمي.] | ||
[[تصنيف:Ruby]] | [[تصنيف:Ruby]] | ||
[[تصنيف:Ruby Method]] | [[تصنيف:Ruby Method]] | ||
[[تصنيف:Ruby Object]] | [[تصنيف:Ruby Object]] |
مراجعة 16:32، 22 نوفمبر 2018
يُدخل التابع tap
الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة.
البنية العامة
tap {|x| block } → obj
المعاملات
x
الكائن المراد إدخاله إلى الكتلة.
block
الكتلة المراد تنفيذها على الكائن.
القيم المعادة
يُعاد الكائن نفسه.
أمثلة
مثالٌ عن استخدام التابع tap
:
(1..10) .tap {|x| puts "original: #{x}" }
.to_a .tap {|x| puts "array: #{x}" }
.select {|x| x.even? } .tap {|x| puts "evens: #{x}" }
.map {|x| x*x } .tap {|x| puts "squares: #{x}" }
انظر أيضًا
- التابع
dup
: ينتج نسخةً سطحية من الكائن.
- التابع
yield_self
: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة.