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

من موسوعة حسوب
< Ruby‏ | Module
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>private_class_method‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude> تصنيف: Rub...')
 
(مراجعة وتدقيق.)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>private_class_method‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: التابع <code>Module.private_class_method‎</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
+
[[تصنيف: Ruby Module Class]]
يجعل التابع <code>private_class_method</code> توابع الصف الحالية خاصة (private). غالبًا ما يستخدم لإخفاء المُنشئ (constructor) الافتراضي <code>new</code>.
+
يجعل التابع <code>private_class_method</code> توابع صنفٍ محدَّدٍ خاصة (private). غالبًا ما يستخدم هذا التابع لإخفاء الباني <code>new</code> الافتراضي.
تُحول الوسائط النصية <code>String</code> إلى رموز.
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">private_class_method(symbol, ...)→ mod
 
<syntaxhighlight lang="ruby">private_class_method(symbol, ...)→ mod
سطر 10: سطر 9:
 
==المعاملات==
 
==المعاملات==
 
===<code>symbol‎</code>===
 
===<code>symbol‎</code>===
 
+
[[Ruby/Symbol|رمز]] يمثل التابع.
===<code>...‎</code>===
 
  
 
===<code>string‎</code>===
 
===<code>string‎</code>===
  
 
+
[[Ruby/String|سلسلة نصية]] تمثل التابع. يحول هذا المعامل إن أعطي إلى [[Ruby/Symbol|رمز]].
==القيمة المُعادة==
+
==القيمة المعادة==
 +
تعاد وحدة.
  
 
==أمثلة==
 
==أمثلة==
سطر 28: سطر 27:
 
end‎</syntaxhighlight>
 
end‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/Module/private|private]]</code>: إذا استُدعي  دون إعطائه وسائط، فسيُعيّن المنظورية (visibility) الافتراضية للتوابع المحددة لاحقًا عند القيمة private. أما في حال تمرير وسائط، قسيضبط منظورية التوابع عند القيمة private. تُحوّل الوسائط النصية <code>String</code> إلى رموز.
+
* التابع <code>[[Ruby/Module/private|private]]</code>: يعين [[Ruby/modules and classes#.D8.A7.D9.84.D9.85.D8.B1.D8.A6.D9.8A.D8.A9|المرئية]] (visibility) الافتراضية للتوابع المحددة لاحقًا إلى المرئية <code>private</code> الخاصة.
* التابع <code>[[Ruby/Module/private_constant|private_constant]]</code>: يجعل  قائمة الثوابت الموجودة الخاصة.
+
* التابع <code>[[Ruby/Module/private_constant|private_constant]]</code>: ينشئ قائمة الثوابت الموجودة الخاصة.
 +
* التابع <code>[[Ruby/Module/private instance methods|private_instance_methods]]</code>: يعيد قائمة بتوابع النسخة الخاصة المعرفة في الوحدة. 
  
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-private_class_method قسم التابع private_class_method‎ في الصنف Module‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-private_class_method قسم التابع private_class_method‎ في الصنف Module‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 16:55، 19 نوفمبر 2018

يجعل التابع private_class_method توابع صنفٍ محدَّدٍ خاصة (private). غالبًا ما يستخدم هذا التابع لإخفاء الباني new الافتراضي.

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

private_class_method(symbol, ...) mod
private_class_method(string, ...) mod

المعاملات

symbol‎

رمز يمثل التابع.

string‎

سلسلة نصية تمثل التابع. يحول هذا المعامل إن أعطي إلى رمز.

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

تعاد وحدة.

أمثلة

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

class SimpleSingleton  # Not thread safe
  private_class_method :new
  def SimpleSingleton.create(*args, &block)
    @me = new(*args, &block) if ! @me
    @me
  end
end

انظر أيضا

  • التابع private: يعين المرئية (visibility) الافتراضية للتوابع المحددة لاحقًا إلى المرئية private الخاصة.
  • التابع private_constant: ينشئ قائمة الثوابت الموجودة الخاصة.
  • التابع private_instance_methods: يعيد قائمة بتوابع النسخة الخاصة المعرفة في الوحدة. 

مصادر