التابع 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}" }

انظر أيضًا

  • التابع class: يعيد صنف الكائن المعطى.
  • التابع clone: يُنتج نسخةً سطحيةً من الكائن المعطى.
  • التابع dup: ينتج نسخةً سطحية من الكائن.
  • التابع yield_self: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة.

مصادر

  • صفحة التابع Object.tap في توثيق روبي الرسمي.