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

من موسوعة حسوب
< Ruby‏ | Module
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>extended‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude> تصنيف: Ruby تصن...'
 
ط مراجعة وتدقيق.
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>extended‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>Module.extended‎</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
[[تصنيف: Ruby Module Class]]
يكافئ <code>included</code>، إلا أنه يُستخدم مع الوحدات الموسعة (extended modules).
يكافئ التابع <code>extended</code> التابع <code>[[Ruby/Module/included|included]]</code> إلا أنه يُستخدم مع الوحدات الموسعة (extended modules).
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">extended(othermod)‎</syntaxhighlight>
<syntaxhighlight lang="ruby">extended(othermod)‎</syntaxhighlight>
==المعاملات==
==المعاملات==
===<code>othermod‎</code>===
===<code>othermod‎</code>===
 
وحدة من النوع <code>[[Ruby/Module|Module]]</code>.
 
==القيمة المُعادة==
 
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>extended‎</code>:
مثال على استخدام التابع <code>extended‎</code>:<syntaxhighlight lang="ruby">module A
<syntaxhighlight lang="ruby">module A
   def self.extended(mod)
   def self.extended(mod)
     puts "#{self} extended in #{mod}"
     puts "#{self} extended in #{mod}"
سطر 24: سطر 20:
  # => prints "A extended in Enumerable"‎</syntaxhighlight>
  # => prints "A extended in Enumerable"‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/Module/extend_object|extend_object]]</code>: يوسع  الكائن المعطى بإضافة ثوابت و توابع هذه الوحدة (التي تُضاف كتوابع فردية [singleton methods]). هذا هو التابع المستخدم من قبل <code>Object#extend</code>.
*التابع <code>[[Ruby/Module/included|included]]</code>: يمثِّل رد نداء يُستدعَى في كل مرة يتم تضمين المستقبل (receiver) في وحدة أو صنف آخر.
* التابع <code>[[Ruby/Module/freeze|freeze]]</code>: يمنع إجراء المزيد من التعديلات على الوحدة.
*التابع <code>[[Ruby/Module/extend object|extend_object]]</code>: يوسع الكائن المعطى بإضافة ثوابت و توابع هذه الوحدة.
 
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-extended قسم التابع extended‎ في الصنف Module‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-extended قسم التابع extended‎ في الصنف Module‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 11:51، 19 نوفمبر 2018

يكافئ التابع extended التابع included إلا أنه يُستخدم مع الوحدات الموسعة (extended modules).

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

extended(othermod)

المعاملات

othermod‎

وحدة من النوع Module.

أمثلة

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

module A
  def self.extended(mod)
    puts "#{self} extended in #{mod}"
  end
end
module Enumerable
  extend A
end
 # => prints "A extended in Enumerable"‎

انظر أيضا

  • التابع included: يمثِّل رد نداء يُستدعَى في كل مرة يتم تضمين المستقبل (receiver) في وحدة أو صنف آخر.
  • التابع extend_object: يوسع الكائن المعطى بإضافة ثوابت و توابع هذه الوحدة.

مصادر