التابع Object.tap
في روبي
يُدخل التابع 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
: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة.