التابع ?Object.kind_of في روبي

من موسوعة حسوب
< Ruby‏ | Object

يتحقَّق التابع ?kind_of إن كان الصنف المُمرَّر إليه هو نفسه صنف الكائن المعطى، أو أنه واحدٌ من الأصناف العليا  (superclasses) لذلك الكائن أو الوحدات المُضمَّنة فيه.

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

kind_of?(class)  true or false

المعاملات

class

الصنف المراد التحقق منه.

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

تُعاد القيمة true إذا كان الصنف class هو نفسه صنف الكائن المعطى، أو أنه واحدٌ من الأصناف العليا لهأو الوحدات المُضمَّنة فيه؛ خلاف ذلك، تُعاد القيمة false.

أمثلة

مثالٌ عن استخدام التابع ?kind_of:

module M;    end
class A
  include M
end
class B < A; end
class C < B; end

b = B.new
b.is_a? A          #=> true
b.is_a? B          #=> true
b.is_a? C          #=> false
b.is_a? M          #=> true

b.kind_of? A       #=> true
b.kind_of? B       #=> true
b.kind_of? C       #=> false
b.kind_of? M       #=> true

انظر أيضًا

  • التابع ?eql: يتحقَّق من استخدام كلا الكائنين نفس مفتاح التجزئة.
  • التابع ?nil: يتحقَّق فيما إذا كان الكائن المعطى هو nil أم لا.
  • التابع ?instance_of: يتحقَّق إذا كان الكائن الذي استدعي معه نسخةً من الصِّنف المُمرَّر إليه.
  • التابع ?instance_variable_defined: يتحقَّق إذا كان متغيِّر النسخة المُمرَّر إليه مُعرَّفًا في الكائن المعطى.
  • التابع ?is_a: يتحقَّق إن كان الصنف المُمرَّر إليه هو نفسه صنف الكائن الذي استدعي معه، أو إن كان هذا الصنف أحد الأصناف العليا للكائن المعطى أو الوحدات المُضمَّنة في هذا الكائن.
  • التابع ?respond_to: يتحقَّق من استجابة الكائن الذي استدعي معه للتابع المُمرَّر إليه.
  • التابع ?respond_to_missing: يتحقَّق فيما إذا كان الكائن المعطى يستجيب إلى تابعٍ محدِّدٍ أم لا.

مصادر