الفرق بين المراجعتين ل"Ruby/Object/tap"
اذهب إلى التنقل
اذهب إلى البحث
(أنشأ الصفحة ب'{{DISPLAYTITLE:التابع Object.tap في روبي}} يُدخل التابع <code>tap</code> الكائن المعطى إلى الكتلة (block)، ثم يعيده....') |
ط |
||
(مراجعتان متوسطتان بواسطة نفس المستخدم غير معروضتين) | |||
سطر 1: | سطر 1: | ||
− | {{DISPLAYTITLE:التابع Object.tap في روبي}} | + | {{DISPLAYTITLE:التابع <code>Object.tap</code> في روبي}} |
− | |||
يُدخل التابع <code>tap</code> الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة. | يُدخل التابع <code>tap</code> الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة. | ||
سطر 20: | سطر 19: | ||
== أمثلة == | == أمثلة == | ||
− | مثالٌ عن استخدام التابع <code>tap</code>: | + | مثالٌ عن استخدام التابع <code>tap</code>:<syntaxhighlight lang="ruby"> |
+ | (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}" } | ||
− | + | </syntaxhighlight> | |
− | + | == انظر أيضًا == | |
− | + | *التابع <code>[[Ruby/Object/class|class]]</code>: يعيد صنف الكائن المعطى. | |
− | + | *التابع <code>[[Ruby/Object/clone|clone]]</code>: يُنتج نسخةً سطحيةً من الكائن المعطى. | |
− | + | * التابع <code>[[Ruby/Object/dup|dup]]</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:33، 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
: يُدخل الكائن المعطى إلى الكتلة ويُعيد ناتج تنفيذ هذه الكتلة.