التابع module_function
الخاص بالصنف Module
في روبي
ينشئ التابع module_function
دوال وحدة (module functions) للتابع المعطى. يمكن استدعاء هذه الدوال مع الوحدة كمُستقبِلات (receiver)، كما يمكن أن تصير متاحة كتوابع نسخة (instance methods) للأصناف التي تُمزج (mix) في الوحدة. دوال النوع Module
هي نسخ من الدالة الأصلية، وبالتالي يمكن تغييرها بشكل مستقل.
توابع النسخة (instance-method) ستُجعل خاصة. وإذا تم استدعاء التابع module_function
دون وسائط، ستصبح التوابع المعرفة لاحقاً دوال وحدة (module functions).
تُحوّل الوسائط النصية إلى رموز.
البنية العامة
module_function(symbol, ...) → self
module_function(string, ...) → self
المعاملات
symbol
رمز.
string
سلسلة نصية.
القيمة المُعادة
يعيد التابع module_function
الكائن الذي استُدعي معه.
أمثلة
مثال على استخدام التابع module_function
:
module Mod
def one
"This is one"
end
module_function :one
end
class Cls
include Mod
def call_one
one
end
end
Mod.one #=> "This is one"
c = Cls.new
c.call_one #=> "This is one"
module Mod
def one
"This is the new one"
end
end
Mod.one #=> "This is one"
c.call_one #=> "This is the new one"
انظر أيضا
- التابع
module_exec
: يقيّم الكتلة الممررة في سياق الصنف/الوحدة. - التابع
name
: يعيد اسم الوحدة.