التابع Module.extend_object‎ في روبي

من موسوعة حسوب
< Ruby‏ | Module
مراجعة 11:52، 19 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يوسع التابع extend_object الكائن المعطى بإضافة ثوابت و توابع هذه الوحدة (والتي تُضاف كتوابع فردية [singleton methods]).

هذا هو التابع المستخدم من قبل Object.extend.

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

extend_object(obj)  obj

المعاملات

obj‎

الكائن المراد توسعته.

القيمة المعادة

يعاد الكائن obj بعد توسيعه.

أمثلة

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

module Picky
  def Picky.extend_object(o)
    if String === o
      puts "Can't add Picky to a String"
    else
      puts "Picky added to #{o.class}"
      super
    end
  end
end
(s = Array.new).extend Picky  # Call Object.extend
(s = "quick brown fox").extend Picky

ناتج تنفيذ هذا المثال هو:

Picky added to Array
Can't add Picky to a String‎

انظر أيضا

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

مصادر