الفرق بين المراجعتين ل"Ruby/Module/instance method"

من موسوعة حسوب
< Ruby‏ | Module
اذهب إلى التنقل اذهب إلى البحث
ط (مراجعة وتدقيق.)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>instance_method‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: التابع <code>Module.instance_method‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
+
[[تصنيف: Ruby Module Class]]
يعيد التابع <code>instance_method</code> كائن <code>[[Ruby/UnboundMethod|UnboundMethod]]</code> يمثل تابع النسخة (instance method) المعطى في الوحدة التي استُدعي معها.
+
يعيد التابع <code>instance_method</code> كائنًا من النوع <code>[[Ruby/UnboundMethod|UnboundMethod]]</code> يمثل تابع النسخة (instance method) المعطى في الوحدة التي استُدعي معها.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">instance_method(symbol)→ unbound_method‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">instance_method(symbol)→ unbound_method‎</syntaxhighlight>
 
==المعاملات==
 
==المعاملات==
===<code>symbol‎</code> رمز===
+
===<code>symbol‎</code>===
==القيمة المُعادة==
+
كائن من النوع <code>[[Ruby/Symbol|Symbol]]</code>.
يعيد التابع <code>instance_method</code> كائن <code>[[Ruby/UnboundMethod|UnboundMethod]]</code> يمثل تابع النسخة المعطى في الوحدة التي استُدعي معها.
+
 
 +
==القيمة المعادة==
 +
يعاد كائنٌ من النوع <code>[[Ruby/UnboundMethod|UnboundMethod]]</code> يمثل تابع النسخة المعطى في الوحدة التي استُدعي معها.
  
 
==أمثلة==
 
==أمثلة==
سطر 29: سطر 31:
 
end
 
end
 
interpreter = Interpreter.new
 
interpreter = Interpreter.new
interpreter.interpret('dave')‎</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">Hello there, Dave!
+
interpreter.interpret('dave')‎</syntaxhighlight>سيعطي هذا المثال عند تنفيذه الناتج التالي:<syntaxhighlight lang="text">Hello there, Dave!
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/Module/instance_methods|instance_methods]]</code>: يعيد مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل (receiver).  
+
* التابع <code>[[Ruby/Module/instance_methods|instance_methods]]</code>: يعيد مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل.  
  
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-instance_method قسم التابع instance_method‎ في الصنف Module‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-instance_method قسم التابع instance_method‎ في الصنف Module‎ في توثيق روبي الرسمي.]

مراجعة 12:15، 19 نوفمبر 2018

يعيد التابع instance_method كائنًا من النوع UnboundMethod يمثل تابع النسخة (instance method) المعطى في الوحدة التي استُدعي معها.

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

instance_method(symbol) unbound_method

المعاملات

symbol‎

كائن من النوع Symbol.

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

يعاد كائنٌ من النوع UnboundMethod يمثل تابع النسخة المعطى في الوحدة التي استُدعي معها.

أمثلة

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

class Interpreter
  def do_a() print "there, "; end
  def do_d() print "Hello ";  end
  def do_e() print "!\n";     end
  def do_v() print "Dave";    end
  Dispatcher = {
    "a" => instance_method(:do_a),
    "d" => instance_method(:do_d),
    "e" => instance_method(:do_e),
    "v" => instance_method(:do_v)
  }
  def interpret(string)
    string.each_char {|b| Dispatcher[b].bind(self).call }
  end
end
interpreter = Interpreter.new
interpreter.interpret('dave')

سيعطي هذا المثال عند تنفيذه الناتج التالي:

Hello there, Dave!

انظر أيضا

  • التابع instance_methods: يعيد مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل.

مصادر