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

من موسوعة حسوب
< Ruby‏ | Module
لا ملخص تعديل
ط مراجعة وتدقيق
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>new‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>Module.new‎</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
[[تصنيف: Ruby Module Class]]
ينشئ التابع <code>new</code> وحدة مجهولة (anonymous module) جديدة. في حال إعطاء كتلة، فسيٌمرر إليها الوحدة (module)، وستُقيم الكتلة في سياق هذه الوحدة مثل <code>[[Ruby/Module/module eval|module_eval]]</code>.
ينشئ التابع <code>new</code> وحدة مجهولة (anonymous module) جديدة. في حال إعطاء كتلة، فسيٌمرر إليها الوحدة (module)، وستُقيم الكتلة في سياق هذه الوحدة مثل <code>[[Ruby/Module/module eval|module_eval]]</code>.


قم بضبط الوحدة وإعطائها قيمة ثابتة (constant) (يبدأ اسمها بحرف كبير) إذا كنت تريد معاملته كأنه وحدة عادية.
اضبط الوحدة وأسند إليها قيمةً ثابتةً (يبدأ اسمها بحرف كبير) إذا كنت تريد معاملتها كأنها وحدة عادية.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">new→ mod
<syntaxhighlight lang="ruby">new→ mod
new {|mod| block }→ mod‎</syntaxhighlight>
new {|mod| block }→ mod‎</syntaxhighlight>
==القيمة المُعادة==
==القيمة المعادة==
يعيد التابع <code>new</code> وحدة مجهولة (anonymous module) جديدة.  
تعاد وحدة مجهولة (anonymous module) جديدة.
 
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>new‎</code>:
مثال على استخدام التابع <code>new‎</code>:<syntaxhighlight lang="ruby">fred = Module.new do
<syntaxhighlight lang="ruby">fred = Module.new do
   def meth1
   def meth1
     "hello"
     "hello"
سطر 27: سطر 25:
a.meth2          #=> "bye"‎</syntaxhighlight>
a.meth2          #=> "bye"‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/Module/nesting|nesting]]</code>: يعيد قائمة من الوحدات (<code>Modules</code>) المتشعبة لحظة الاستدعاء.
*التابع <code>[[Ruby/Module/nesting|nesting]]</code>: يعيد قائمة من الوحدات المتشعبة لحظة الاستدعاء.
* التابع <code>[[Ruby/Module/used_modules|used_modules]]</code>: يعيد مصفوفة تحتوي جميع الوحدات (constant) المستخدمة في النطاق الحالي.
*التابع <code>[[Ruby/Module/used modules|used_modules]]</code>: يعيد مصفوفة تحوي جميع الوحدات (constant) المستخدمة في النطاق الحالي.
 
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Module.html#method-c-new قسم التابع new‎ في الصنف Module‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Module.html#method-c-new قسم التابع new‎ في الصنف Module‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:27، 18 نوفمبر 2018

ينشئ التابع new وحدة مجهولة (anonymous module) جديدة. في حال إعطاء كتلة، فسيٌمرر إليها الوحدة (module)، وستُقيم الكتلة في سياق هذه الوحدة مثل module_eval.

اضبط الوحدة وأسند إليها قيمةً ثابتةً (يبدأ اسمها بحرف كبير) إذا كنت تريد معاملتها كأنها وحدة عادية.

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

new mod
new {|mod| block } mod

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

تعاد وحدة مجهولة (anonymous module) جديدة.

أمثلة

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

fred = Module.new do
  def meth1
    "hello"
  end
  def meth2
    "bye"
  end
end
a = "my string"
a.extend(fred)   #=> "my string"
a.meth1          #=> "hello"
a.meth2          #=> "bye"‎

انظر أيضا

  • التابع nesting: يعيد قائمة من الوحدات المتشعبة لحظة الاستدعاء.
  • التابع used_modules: يعيد مصفوفة تحوي جميع الوحدات (constant) المستخدمة في النطاق الحالي.

مصادر