نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

الصنف Module في روبي

الصنف Module هو مجموعة من التوابع والثوابت. التوابع الموجودة في الوحدات Module قد تكون إما توابع نسخة (instance methods)، أو توابع وحدة (module methods). توابع النسخة تظهر كتوابع في صنفٍ عند تضمين الوحدة، وذلك على خلاف توابع الوحدة. وعلى النقيض، يمكن استدعاء توابع الوحدة دون إنشاء كائن يُغلفها، بينما قد لا يمكن فعل ذلك مع توابع النسخة. انظر صفحة module_function. في الأمثلة الموجودة في صفحات التوابع، يشير المعامل sym إلى رمز، والذي قد يكون إما سلسلة نصية، أو كائنًا من النوع ...

المعامل ‎<=‎‎ الخاص بالصنف Module في روبي

يعيد المعامل ‎<=‎ القيمة true إن كانت الوحدة Module التي تقع على يساره صنفًا فرعيًّا من الوحدة التي تقع على يمينه أو كانت الوحدتان متساويتين تمامًا، أو يعيد القيمة nil إذا لم تكن بينهما أية علاقة (فكر في هذه العلاقة من منظور تعريف الأصناف: "الصنف A < الصنفB" يستلزم "A < B"). البنية العامة mod <= other→ true, false, or nil‎ القيمة المعادة تعاد القيمة true إن كان mod صنفًا فرعيًا من other أو كان يساويه، أو تعاد القيمة nil ...

المعامل ==‎ الخاص بالصنف Module في روبي

يتحقق معامل التساوي == من تساوي كائنين. البنية العامة obj == other → true or false equal?(other)→ true or false eql?(other) → true or false‎ في مستوى الصنف Object، يعيد المعامل == القيمة true فقط إن كان obj و other نفس الكائن. بشكل عام، يٌعاد تعريف هذا التابع في الأصناف المنحدرة (descendant classes) لتخصيصه للصنف المُستخدم. بخلاف المعامل ==، لا يجب أبدًا إعادة تعريف التابع equal?‎ في الأصناف الفرعية (subclasses)، لأنه يُستخدَم لتحديد هوية الكائن (أي أنّ a.equal?(b)‎ تعيد true إذا ...

المعامل ===‎ الخاص بالصنف Module في روبي

يعيد المعامل === القيمة true إن كان الكائن الواقع على يمينه نسخةً (instance ) من الكائن Module الواقع على يمينه أو من أحد الأصناف المنحدرة منه. استخدامه مع الوحدات (modules) محدود، ولكن يمكن استخدامه في عبارات case لتصنيف الكائنات بحسب الصنف. البنية العامة mod === obj → true or false‎ القيمة المعادة تعاد القيمة true إن كان obj نسخة من mod أو من أحد الأصناف المنحدرة منه. وإلا فستُعاد القيمة false. انظر أيضا المعامل <: يعيد القيمة true الكائن Module الذي ...

المعامل ‎>=‎‎ الخاص بالصنف Module في روبي

يعيد المعامل ‎>=‎‎ القيمة true إن كانت الوحدة Module التي تقع على يساره سلفًا (ancestor) للوحدة التي تقع على يمينه أو إن كانت الوحدتان متساويتين، أو يعيد القيمة nil إن لم تكن بينها أي علاقة. (فكر في العلاقة من منظور تعريف الأصناف: "الصنف A < الصنف B" يستلزم "B > A".) البنية العامة mod >= other→ true, false, or nil‎ القيمة المعادة تعاد القيمة true إن كانت الوحدة mod سلفًا للوحدة other، أو إن كانت الوحدتان متساويتين، أو تعاد القيمة ...

المعامل ‎>‎‎ الخاص بالصنف Module في روبي

يعيد المعامل < القيمة true الكائن Module الذي يقع على يساره سلفًا (ancestor) للكائن الذي يقع على يمينه، أو يعيد القيمة nil إن لم تكن بينهما أية علاقة (فكر في العلاقة من منظور تعريف الأصناف: "الصنف A < الصنف B" يستلزم "B > A"). البنية العامة mod > other→ true, false, or nil‎ القيمة المعادة تعاد القيمة true إن الكائن mod سلفًا للكائن other، أو تعاد القيمة nil إن لم تكن بينهما أي علاقة. خلا ذلك، تعاد القيمة false.  ...

المعامل ‎<=>‎‎ الخاص بالصنف Module في روبي

يجري المعامل <=> عملية الموازنة بين كائنين ثم يعيد الناتج الذي يشير إلى العلاقة بينهما. البنية العامة module <=> other_module→ -1, 0, +1, or nil‎ يجري المعامل <=> عملية الموزانة ثمَّ يعيد إحدى القيم ‎-1 أو 0 أو ‎+1 أو nil اعتمادًا على ما إذا كان module يتضمن other_module، أو كانا متساويين، أو إذا كان module متضمَّنًا في other_module. تعاد القيمة nil إن لم تكن بين module و other_module أية علاقة، أو إن لم يكن other_module وحدة من الصنف Module، أو ...

المعامل ‎<‎‎ الخاص بالصنف Module في روبي

يعيد المعامل ‎<‎ القيمة true إن كانت الوحدة Module التي تقع على يساره صنفًا فرعيًّا من الوحدة التي تقع على يمينه، أو يعيد القيمة nil إن لم تكن بينهما أية علاقة (فكر في العلاقة من منظور تعريف الأصناف: "الصنف A < الصنف B" يستلزم "A < B"). البنية العامة mod < other→ true, false, or nil‎ القيمة المعادة تعاد القيمة true إن كان mod صنفًا فرعيًّا من other، أو تعاد القيمة nil إن لم تكن بينهما أي علاقة. خلا ذلك، ...

الصنف Class في روبي

تُعدُّ الأصناف كائناتٍ من الدرجة الأولى (first-class objects) في روبي، وتعدُّ جميعها نُسخٌ من الصنف Class. عادةً، يمكن عادةً إنشاء صنف جديد بالشكل التالي: class Name # تكتب هنا الشيفرة التي تعرف سلوك الصنف end عندما يُنشَأ صنف جديد، يهيَّأ كائن من النوع Class ويسند إلى ثابت عام (global constant، هو Name في المثال السابق). عند استدعاء Name.new لإنشاء كائن جديد، يُنفَّذ التابع new الخاص بالصنف Class بشكل افتراضي. يمكن إثبات ذلك من خلال إعادة تعريف التابع new: class Class alias old_new ...

الوحدات (Modules) في Node.js

مؤشر الاستقرار: 2 - مستقر يعامل كل ملف في نظام الوحدات في بيئة Node.js كوحدة منفصلة. على سبيل المثال، فليكن ملف اسمه foo.js: const circle = require('./circle.js'); console.log(`The area of a circle of radius 4 is ${circle.area(4)}`); في السطر الأول، يُحمِّل foo.js الوحدة circle.js الموجودة في نفس المجلد مع foo.js. وإليك محتويات circle.js: const { PI } = Math; exports.area = (r) => PI * r ** 2; exports.circumference = (r) => 2 * PI * r; صدَّرت الوحدة circle.js الدالتين area()‎ و circumference()‎. وتُضاف ...

الصنف Symbol في روبي

تمثل كائنات الصنف Symbol أسماء وسلاسل نصية داخل مترجم (interpreter) روبي. يمكن إنشاؤها باستخدام الصياغتين الحرفيتين ‎:name و ‎:"string"‎، أو بواسطة التوابع to_sym. سيتم إنشاء نفس الرمز (نفس الكائن Symbol) لاسم أو سلسلة نصية معينة طوال مدة تنفيذ البرنامج، بغض النظر عن السياق أو معنى هذا الاسم. وبالتالي، إن كان Fred ثابتًا في سياق معيّن، وتابعًا في سياق آخر، وصنفًا في سياق ثالث، فسيكون الرمز Symbol :Fred نفس الكائن في جميع السياقات الثلاث. module One class Fred end ...

التابع autoload‎ الخاص بالصنف Kernel في روبي

يسجل التابع autoload اسم الملف المعطى لكي يُحمّل (باستخدام Kernel::require) في المرة الأولى التي يتم الوصول فيها إلى وحدة محدَّدة. البنية العامة autoload(module, filename)→ nil‎ المعاملات module سلسلةٌ نصيةٌ أو رمزٌ (symbol) يمثِّل اسم الوحدة. filename اسم الملف. المراد تحميله عن الوصول إلى الوحدة module. القيمة المعادة تعاد القيمة nil عند نجاح العملية. أمثلة مثال على استخدام التابع autoload‎: autoload(:MyModule, "/usr/local/lib/modules/my_module.rb") ‎ انظر أيضا التابع autoload?‎: يعيد اسم الملف المراد تحميله إذا سُجّل للتحميل عند الوصول إلى وحدة محدَّدة عبر التابع autoload. ...

الصنف Method في روبي

يتم إنشاء كائنات الصنف Method بواسطة التابع Object.method، وترتبط بكائن معين (وليس بالصنف وحسب). ويمكن استخدامها لاستدعاء التابع داخل الكائن، أو ككتلة (block) مرتبطة بمكرر (iterator). كما يمكن فك ارتباطها (unbound) من كائن محدد (سيؤدي ذلك إلى إنشاء الكائن UnboundMethod) ثم ربطها بآخر. class Thing def square(n) n*n end end thing = Thing.new meth = thing.method(:square) meth.call(9) #=> 81 [ 1, 2, 3 ...

الصنف UnboundMethod في روبي

تدعم روبي شكلين من التوابع الكائنية (objectified methods). يستخدم الصنف Method لتمثيل التوابع المرتبطة بكائن معين، ويمكن إنشاء كائنات التوابع من هذا النوع عبر التابع Object.method. تدعم روبي أيضًا التوابع الحرة (unbound methods)؛ وهي كائنات توابع غير مرتبطة بكائن معين. يمكن إنشاؤها إما عن طريق استدعاء Module.instance_method، أو عن طريق استدعاء unbind على تابع مرتبط (bound method object). نتيجة كليهما ستكون تابعًا حرًا (كائن من النوع UnboundMethod). لا يمكن استدعاء التوابع الحرة إلا بعد ربطها بكائن ما. ويجب أن يعيد ...

المعامل ==‎ الخاص بالصنف Method في روبي

يتحقق المعامل == من تساوي كائنين من النوع Method. يكون كائنان من النوع Method متساويين إن كانا مرتبطين بنفس الكائن، وكانا لهما نفس التعريف، وكان لهما نفس الصنف أو الوحدة (module) المالكة. البنية العامة meth == other_meth → true or false‎ القيمة المعادة تُعاد القيمة true إن كان الكائنان متساويين، وإلا فستُعاد القيمة false. انظر أيضا التابع ===: يستدعي كتلة التابع مع تمرير الكائن الواقع على يمينه كوسيط إلى المعامل الواقع على يساره كما هو الحال في Proc.call. مصادر قسم ...

الصنف BasicObject في روبي

الصنف BasicObject هو الصنف الأب لجميع الأصناف في روبي، وهو صنف فارغ. يمكن استخدام الصنف BasicObject لإنشاء هرميات كائنية (object hierarchies) مستقلة عن الهرمية الكائنية للغة روبي، أو لإنشاء مغلفات الكائنات (proxy objects) مثل الصنف Delegator، أو حيث يجب تجنب إفساد مجال الأسماء (namespace pollution) من قبل توابع وأصناف روبي. لتجنب إفساد الصنف BasicObject للمستخدمين الآخرين، يجب إنشاء صنف فرعي من الصنف BasicObject تحت اسم مناسب بدلاً من تعديل BasicObject مباشرةً: class MyObjectSystem < BasicObject end لا يتضمَّن الصنف BasicObject الوحدة Kernel ...

التابع singleton_method_undefined في الصنف BasicObject في روبي

يُستدعى التابع singleton_method_undefined كرد نداءٍ (callback) في كل مرة يكون فيها تابع منفرد (singleton method) غير مُعرَّف (undefined) في المُستقبِل (receiver). البنية العامة singleton_method_undefined(symbol) أمثلة مثال على استخدام التابع singleton_method_undefined: module Chatty def Chatty.singleton_method_undefined(id) puts "Undefining #{id.id2name}" end def Chatty.one() end class << self undef_method(:one) end end يظهر هذا المثال عند تنفيذه المخرجات التالية: Undefining one انظر أيضًا التابع singleton_method_added: يُستَدعى هذا التابع كرد نداءٍ (callback) في كلِّ مرة يُضاف فيها تابع منفرد (singleton method) ...

التابع singleton_method_removed في الصنف BasicObject في روبي

يُستَدعى التابع singleton_method_removed كرد نداءٍ (callback) في كل مرة يُحذف فيها تابع منفرد (singleton method) من المُستقبِل (receiver). البنية العامة singleton_method_removed(symbol) أمثلة مثال على استخدام التابع singleton_method_removed: module Chatty def Chatty.singleton_method_removed(id) puts "Removing #{id.id2name}" end def self.one() end def two() end def Chatty.three() end class << self remove_method :three remove_method :one end end يظهر هذا المثال عند تنفيذه المخرجات التالية: Removing three Removing one ...

التابع singleton_method_added في الصنف BasicObject في روبي

يُستَدعى التابع singleton_method_added كرد نداءٍ (callback) في كلِّ مرة يُضاف فيها تابع منفرد (singleton method) جديد إلى المُستقبِل (receiver). البنية العامة singleton_method_added(symbol) أمثلة مثال على استخدام التابع singleton_method_added: module Chatty def Chatty.singleton_method_added(id) puts "Adding #{id.id2name}" end def self.one() end def two() end def Chatty.three() end end يظهر هذا المثال عند تنفيذه المخرجات التالية: Adding singleton_method_added Adding one Adding three انظر أيضًا التابع singleton_method_removed: يُستَدعى هذا التابع كرد نداءٍ ...

الصنف ‎:required‎

الصنف الزائف ‎:required‎ في CSS (أي pseudo-class) يُمثِّل أيّة عناصر <input> أو <select> أو <textarea> التي ضُبِطَت الخاصية required عليها. input:required { border: 1px dashed red; } هذا الصنف الزائف مفيدٌ لتنسيق الحقول الضرورية لإرسال النموذج. ملاحظة: الصنف الزائف ‎:optional هو الصنف الذي يُطابِق الحقول الضرورية في النموذج. :required أمثلة راجع صفحة الصنف الزائف ‎:invalid للأمثلة. دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari الدعم الأساسي 10.0 4.0 10 10.0 5.0 انظر أيضًا صفحة الصنف الزائف optional: الذي يُمثِّل أيّة عناصر <input> أو <select> أو <textarea> التي لم ...

الصنف ‎:optional‎

الصنف الزائف ‎:optional‎ في CSS (أي pseudo-class) يُمثِّل أيّة عناصر <input> أو <select> أو <textarea> التي لم تُضبَط الخاصية required عليها. input:optional { border: 1px dashed black; } هذا الصنف الزائف مفيدٌ لتنسيق الحقول التي ليست ضروريةً لإرسال النموذج. ملاحظة: الصنف الزائف ‎:required هو الصنف الذي يُطابِق الحقول الضرورية في النموذج. :optional أمثلة راجع صفحة الصنف الزائف ‎:invalid للأمثلة. دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari الدعم الأساسي 10.0 4.0 10 10.0 5.0 انظر أيضًا صفحة الصنف الزائف required: الذي يُمثِّل ...

الصنف ‎:enabled

الصنف الزائف ‎:enabled في CSS (أي pseudo-class) يُمثِّل أي عنصر مُفعّل، أي يمكن اختياره أو النقر عليه أو الكتابة فيه أو يمكن التركيز عليه (focus): input:enabled { color: blue; } الشكل العام لهذا المحدد: :enabled أمثلة سنجعل عناصر <input> المُفعّلة بلونٍ أخضر، وبلونٍ فضي عندما تكون معطلةً، وذلك كي يتمكن المستخدم من التفريق بصريًا بين العناصر التي يستطيع التفاعل معها وتلك التي لا يستطيع التفريق بينها: <form action="url_of_form"> <label for="FirstField">الحقل الأول (enabled):</label> <input type="text" id="FirstField" value="Lorem"><br> <label for="SecondField">الحقل ...

الصنف ‎:right

الصنف الزائف ‎:right في CSS (أي pseudo-class) يُستعمَل مع القاعدة ‎@page، ويُمثِّل الصفحات اليمينية (right hand pages) من المستند عند طباعته. @page :right { margin: 2in 3in; } معرفة إذا كانت الصفحة يسارية أو يمينية تعتمد على اتجاه الكتابة التابع للمستند، فأوّل صفحة في المستندات من اليسار إلى اليمين ستكون يمينيّة ‎:right، أما أوّل صفحة في المستندات من اليمين إلى اليسار فستكون يساريّةً ‎:left. ملاحظة: لا يمكن تغيير قيم جميع خاصيات CSS عند استخدام هذا الصنف الزائف، وإنما يمكن تغيير قيم ...

الصنف ‎:left

الصنف الزائف ‎:left في CSS (أي pseudo-class) يُستعمَل مع القاعدة ‎@page، ويُمثِّل الصفحات اليسارية (left hand pages) من المستند عند طباعته. @page :left { margin: 2in 3in; } معرفة إذا كانت الصفحة يسارية أو يمينية تعتمد على اتجاه الكتابة التابع للمستند، فأوّل صفحة في المستندات من اليسار إلى اليمين ستكون يمينيّة ‎:right، أما أوّل صفحة في المستندات من اليمين إلى اليسار فستكون يساريّةً ‎:left. ملاحظة: لا يمكن تغيير قيم جميع خاصيات CSS عند استخدام هذا الصنف الزائف، وإنما يمكن تغيير قيم ...

الوحدات والأصناف في روبي

الوحدات تخدم الوحدات (Modules) غايتين اثنتين في لغة روبي وهما: ميّزة نطاقات الأسماء (namespace)، والخلط الضمني (mix-in) التي سنوضّحها لاحقًا. يستخدم نطاق الأسماء لتنظيم الشيفرة البرمجية ضمن مجموعات مستقلّة تمنع تداخل التوابع والمتغيّرات ذات الأسماء المتشابهة فيما بينها. فعلى سبيل المثال، نطاق الأسماء IRB يوفّر عمليات irb والتي تمنع التصادم مع الاسم الشائع "Context". وظيفة الخلط الضمني (Mix-in) تسمح بمشاركة توابع مشتركة عبر عدد من الأصناف أو الوحدات، إذ يأتي مع لغة روبي على سبيل المثال الوحدة Enumerable التي توفّر ...

التابع load‎ الخاص بالصنف Kernel في روبي

يحمّل التابع load وينفّذ برنامج روبي في الملف المعطى. في حال لم لميكن بالإمكان استبيان مسار الملف المطلق (absolute path)، فسيتم البحث عن الملف في مجلدات المكتبة الموجودة في ‎$:‎. إذا كان الوسيط الاختياري wrap يساوي true، فسيُنفذ النص البرمجي المحمّل كوحدة مجهولة (anonymous module)، لحماية مجال الأسماء الخاص بالبرنامج المُستدعَى. لن يتم نشر أيّ من المتغيرات المحلية الموجودة في الملف الذي تم تحميله تحت أي ظرف من الظروف في بيئة التحميل. البنية العامة load(filename, wrap=false)→ true‎ المعاملات filename‎ اسم ...

التابع Module.used_modules‎ في روبي

يعيد التابع used_modules مصفوفة تحتوي جميع الوحدات (modules) المستخدمة في النطاق الحالي. ترتيب الوحدات في المصفوفة الناتجة غير محدد. البنية العامة used_modules → array‎ القيمة المعادة تعاد مصفوفة تحتوي جميع الوحدات (modules) المستخدمة في النطاق الحالي. أمثلة مثال على استخدام التابع used_modules‎: module A refine Object do end end module B refine Object do end end using A using B p Module.used_modules‎ ناتج تنفيذ الشيفرة هو: [B, A] انظر أيضا التابع using: يستورد الأصناف المهذبة (class refinements) من الوحدة في التعريف الحالي للصنف أو الوحدة. ...

الصنف ‎:indeterminate

الصنف الزائف ‎:indeterminate في CSS (أي pseudo-class) يُمثِّل أيّة نماذج تكون حالتها غير معروفة (indeterminate): input:indeterminate { background: lime; } يمكن أن يُطابِق هذا المُحدَّد العناصر الآتية: صندوق تأشير checkbox الذي ضُبِطَت الخاصية indeterminate فيه إلى true عبر JavaScript. أزرار الانتقاء radio عندما تكون جميع الأزرار التي لها نفس القيمة للخاصية name غير منتقاةً. عناصر <progress> في الحالة غير المعروفة. الشكل العام لهذا المحدد: :indeterminate أمثلة سنُطبِّق في المثال الآتي أنماط خاصة لعناصر <label> المرتبطة بحقول النموذج ذات الحالة غير المعروفة: ...

الصنف ‎:default

الصنف الزائف ‎:default في CSS (أي pseudo-class) يُمثِّل أي عنصر مُختار افتراضيًا بين مجموعة من العناصر المتعلقة به؛ ويمكن استخدام هذا الصنف الزائف على أيّة أزرار عادية <button> أو أزرار انتقاء (radio button) أو صناديق تأشير (checkbox) أو خيارات <option> في عنصر <select> تم تحديدها أو انتقاؤها. input:default { background-color: lime; } العناصر التي تسمح باختيار أكثر من عنصر يمكن أن يكون لها أكثر من عنصر مُختار افتراضيًا، ففي هذه الحالة ستُحدَّد جميع الخيارات الافتراضية باستخدام الصنف الزائف ‎:default. الشكل العام ...

الصنف ‎:first

الصنف الزائف ‎:first في CSS (أي pseudo-class) يُستعمَل مع القاعدة ‎@page، ويُمثِّل أوّل صفحة من المستند عند طباعته. @page :first { margin-left: 50%; margin-top: 50%; } ملاحظة: لا يمكن تغيير قيم جميع خاصيات CSS عند استخدام هذا الصنف الزائف، وإنما يمكن تغيير قيم الهوامش margin واليتامى orphans والأرامل widows وطريقة الانتقال إلى صفحة جديدة؛ وسيتم تجاهل جميع الخاصيات الأخرى. الشكل العام لهذا المحدد: :first أمثلة لاحظ كيف ستتغير الهوامش في الصفحة الأولى عند طباعتها: <p>الصفحة الأولى</p> <p>الصفحة الثانية</p> <button>طباعة!</button> شيفرة CSS: @page :first ...

التابع Module.extended‎ في روبي

يكافئ التابع extended التابع included إلا أنه يُستخدم مع الوحدات الموسعة (extended modules). البنية العامة extended(othermod)‎ المعاملات othermod‎ وحدة من النوع Module. أمثلة مثال على استخدام التابع extended‎: module A def self.extended(mod) puts "#{self} extended in #{mod}" end end module Enumerable extend A end # => prints "A extended in Enumerable"‎ انظر أيضا التابع included: يمثِّل رد نداء يُستدعَى في كل مرة يتم تضمين المستقبل (receiver) في وحدة أو صنف آخر. التابع extend_object: يوسع الكائن المعطى بإضافة ثوابت ...

التابع Module.nesting‎ في روبي

يعيد التابع nesting قائمة من الوحدات المتشعبة (Modules nested) لحظة الاستدعاء. البنية العامة nesting → array‎ القيمة المعادة تعاد مصفوفة تحوي قائمة من الوحدات المتشعبة لحظة الاستدعاء. أمثلة مثال على استخدام التابع nesting‎: module M1 module M2 $a = Module.nesting end end $a #=> [M1::M2, M1] $a[0].name #=> "M1::M2"‎ انظر أيضا التابع constants: يعيد مصفوفة مكونة أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. التابع new: ينشئ وحدة مجهولة ...

التابع Module.prepended‎ في روبي

يكافئ التابع prepended التابع included باستثناء أنَّه مخصص للوحدات المُرفقة (prepended modules). البنية العامة prepended(othermod)‎ المعاملات othermod‎ الوحدة الأخرى. أمثلة مثال على استخدام التابع prepended‎: module A def self.prepended(mod) puts "#{self} prepended to #{mod}" end end module Enumerable prepend A end # => prints "A prepended to Enumerable"‎ انظر أيضا التابع prepend_features: يُستدعَى في الوحدة المعطاة عندما تُرفَق هذه الوحدة في أخرى، وتُمرَّر إليها الوحدة المُستقبِلة (receiving module) في الوحدة التي مُمرِّرت إليه.  التابع prepend: يستدعي التابع Module.prepend_features على كل المعاملات ...

التابع Module.prepend_features‎ في روبي

يُستدعَى التابع prepend_features في الوحدة المعطاة عندما تُرفق هذه الوحدة في أخرى، وتُمرَّر إليها الوحدة المُستقبِلة (receiving module) في الوحدة التي مُمرِّرت إليه. الإعداد الافتراضي هو إحلال (overlay) ثوابت وتوابع ومتغيرات الوحدة الخاصة بهذه الوحدة في المعامل mod المُمرَّر إن لم تكن هذه الوحدة مضافةً إليه سلفًا أو إلى أحد أسلافه (ancestors). البنية العامة prepend_features(mod)→ mod‎ المعاملات mod‎ كائن من النوع Module. القيمة المعادة تعاد وحدة من النوع Module. انظر أيضا التابع prepend: يستدعي التابع Module.prepend_features على كل المعاملات المعطاة بترتيب ...

التابع Module.module_function‎ في روبي

ينشئ التابع module_function دوال وحدة (module functions) للتوابع المعطاة. يمكن استدعاء هذه الدوال مع الوحدة كمُستقبِلات (receiver)، كما يمكن أن تصبح متاحةً كتوابع نسخة (instance methods) للأصناف التي تُمزج (mix) في الوحدة. دوال النوع Module هي نسخ من الدوال الأصلية، وبالتالي يمكن تغييرها بشكل مستقل. توابع النسخة (instance-method) ستتحول إلى خاصة. وإذا تم استدعاء التابع module_function دون معاملات، فستصبح التوابع التي ستُعرَّف لاحقًا دوال وحدة (module functions). تُحوّل الوسائط النصية إلى رموز. البنية العامة module_function(symbol, ...) → self module_function(string, ...) → self‎ المعاملات ...

الصنف ‎:disabled

الصنف الزائف ‎:disabled في CSS (أي pseudo-class) يُمثِّل أي عنصر مُعطَّل، ولا يمكن اختيار أو النقر على العنصر المعطَّل ولا الكتابة فيه، ولا يقبل التركيز (focus)، ويمكن أن يكون العنصر مُفعَّلًا (enabled) أي يمكن اختياره أو النقر عليه أو الكتابة فيه. input:disabled { background: #ccc; } الشكل العام لهذا المحدد: :disabled أمثلة هذا المثال يستعرض نموذجًا بسيطًا لشحن المشتريات، ويستخدم الحدث change في JavaScript للسماح للمستخدم بتفعيل أو تعطيل بعض حقول النموذج: <form action="#"> <fieldset id="shipping"> <legend>عنوان ...

التابع ‎Module.include?‎‎ في روبي

يتحقق التابع include?‎ إن كانت الوحدة المعطاة مُضمّنة في الوحدة التي استُدعي معها أو أحد أسلافها (ancestors). البنية العامة include?(module) → true or false‎ المعاملات module‎ الوحدة المراد التحقق منها. القيمة المعادة تعاد القيمة true إن كانت الوحدة module المعطاة مُضمّنة في الوحدة التي استُدعي معها أو أحد أسلافها (ancestors)، وإلا فستُعاد القيمة false. أمثلة مثال على استخدام التابع include?‎: module A end class B include A end class C < B end B.include?(A) #=> true C.include?(A) #=> true A.include?(A) #=> false‎ ...

التابع Module.prepend‎ في روبي

يستدعي التابع prepend التابع prepend_features على كل المعاملات المعطاة بترتيب عكسي. البنية العامة prepend(module, ...) → self‎ المعاملات module‎ يمثل وحدةً من النوع Module. القيمة المعادة يعاد الكائن المعطى. انظر أيضا التابع prepend_features: يُستدعَى في الوحدة المعطاة عندما تُرفَق هذه الوحدة في أخرى، وتُمرَّر إليها الوحدة المُستقبِلة (receiving module) في الوحدة التي مُمرِّرت إليه.  مصادر قسم التابع prepend‎ في الصنف Module‎ في توثيق روبي الرسمي.

التابع Object.each_object في روبي

يستدعي التابع each_object كتلةً محدَّدةً مرةً لكل كائنٍ نشطٍ (living object) أو غير مباشرٍ (nonimmediate object) في هذه العملية الحالية في روبي. إذا حُدِّدت الوحدة (module) المراد تنفيذ الكتلة عليها، فسيستدعي التابع الكتلة للأصناف أو الوحدات المماثلة لهذه الوحدة (أو لتلك التي تكون صنفًا فرعيًا منها). يُعيد التابع each_object عدد الكائنات التي عُثر عليها. لا تُعاد الكائنات المباشرة (مثل Fixnums، و Symbols، و true، و false، و nil) أبدًا. إذا لم تُعطَ أي كتلة إلى التابع each_object، فستُعاد نسخةٌ من ...

التابع Module.included‎ في روبي

يمثِّل التابع included رد نداء يُستدعَى في كل مرة يتم تضمين المستقبل (receiver) في وحدة أو صنف آخر. يُفضل استخدام هذا التابع على استخدام التابع append_features إن كنت تريد تنفيذ بعض الإجراءات عند تضمين وحدة في أخرى. البنية العامة included(othermod)‎ المعاملات othermod‎ وحدة من النوع Module. أمثلة مثال على استخدام التابع included‎: module A def A.included(mod) puts "#{self} included in #{mod}" end end module Enumerable include A end # => prints "A included in Enumerable"‎ انظر أيضا التابع include?‎: ...

التابع UnboundMethod.owner‎ في روبي

يعيد التابع owner الصنف أو الوحدة (module) التي تعرف التابع الحر الذي استدعي معه. البنية العامة owner → class_or_module‎ القيمة المعادة يعاد الصنف أو الوحدة (module) التي تعرف التابع الحر. انظر أيضًا التابع original_name: يعيد الاسم الأصلي للتابع الحر الذي استُدعي معه. التابع parameters: يعيد معلومات عن معاملات التابع الحر الذي استُدعي معه. مصادر قسم التابع owner‎ في الصنف UnboundMethod‎ في توثيق روبي الرسمي.

التابع Module.using‎ في روبي

يستورد التابع using الأصناف المحسَّنة (class refinements) من الوحدة المٌمررة إليه إلى التعريف الحالي للصنف أو الوحدة. البنية العامة using(module) → self‎ المعاملات module‎ الوحدة التي سيُستورد منها الأصناف المحسَّنة. القيمة المعادة يعاد الكائن المعطى نفسه. انظر أيضا التابع refine: يحسِّن الوحدة المستقبلة (receiver) ثم يعيد الوحدة التي عُرِّفت فيها التوابع المحسَّنة. التابع used_modules: يعيد مصفوفة تحتوي جميع الوحدات (modules) المستخدمة في النطاق الحالي. مصادر قسم التابع using‎ في الصنف Module‎ في توثيق روبي الرسمي.

التحسينات في روبي

إن ميّزة الأصناف المفتوحة في لغة روبي تسمح لك بإعادة تعريف أو إضافة وظائف إلى أصناف معرّفة مسبقًا. وهذا ما يسمى بمصطلح "ترقيع القرد" (monkey patch). المشكلة هنا أنَّ تعديلات من هذا النوع تكون مرئيّة على المستوى العام (global)، وبالتالي جميع مستخدمي الصنف المرقّع قادرون على رؤية هذه التغييرات، ممّا قد يسبّب تأثيرات جانبيّة غير محسوبة أو حتى عطب في البرامج. تأتي التحسينات هنا لتقلّل أثر ترقيع القرد على مستخدمي الصنف الآخرين، إذ تقدّم طريقة لتوسيع الصنف محليًّا. وإليك مثال ...

التابع Module.new‎ في روبي

ينشئ التابع 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 ...

التابع Module.const_get‎ في روبي

يتحقق التابع const_get من وجود ثابت باسم محدد في الوحدة التي استُدعي معها. في حال تعيين المعامل inherit، فسيشمل البحث الأسلاف أيضًا (وكذلك Object إن كانت الوحدة من النوع Module). تُعاد قيمة الثابت إذا عُثر على تعريف له؛ خلا ذلك، سيُطلق الخطأ NameError. Math.const_get(:PI) #=> 3.14159265358979 سيبحث التابع const_get بشكل تكراري (recursively) عن أسماء الثوابت إذا تم توفير اسم صنف من مجال أسماء (namespaced class name). اطلع مثلًا على المثال التالي: module Foo; class Bar; end end Object.const_get 'Foo::Bar' تؤخذ الراية inherit بالحسبان ...

التابع Module.name‎ في روبي

يعيد التابع name اسم الوحدة، أو يعيد القيمة nil إن كانت الوحدة مجهولة (anonymous modules). البنية العامة name → string‎ القيمة المعادة يعاد اسم الوحدة، أو القيمة nil إن كانت الوحدة مجهولة. انظر أيضا التابع module_function: ينشئ دوال وحدة (module functions) للتابع المعطى. مصادر قسم التابع name‎ في الصنف Module‎ في توثيق روبي الرسمي.

التابع Object.extend في روبي

يُضيف التابع extend توابع النسخة (instance) من كُلِّ وحدةٍ مُرِّرت إليه إلى الكائن الذي استدعي معه. البنية العامة extend(module, ...) → obj المعاملات module الوحدة المراد إضافة توابع النسخة منها. القيم المعادة يُعاد الكائن المعطى مضافًا إليه توابع النسخة من الوحدات المُمرَّرة. أمثلة مثالٌ عن استخدام التابع extend: module Mod def hello "Hello from Mod.\n" end end class Klass def hello "Hello from Klass.\n" end end k = Klass.new k.hello ...

الصنف ‎:checked

الصنف الزائف ‎:checked في CSS (أي pseudo-class) يُمثِّل أيّة أزرار انتقاء (radio button) أو صناديق تأشير (checkbox) أو خيارات <option> في عنصر <select> تم تحديدها أو انتقاؤها. يمكن أن يُفعِّل المستخدم هذه الحالة بتفعيل أو انتقاء العنصر. :checked { margin-left: 25px; border: 1px solid blue; } ملاحظة: أغلبية المتصفحات تعامل عناصر <option> كعناصر مُستبدَلة (replaced elements)، ومدى تطبيقها للأنماط المرتبطة بالصنف الزائف ‎:checked يختلف من متصفحٍ لآخر. الشكل العام لهذا المحدد: :checked أمثلة لاحظ طريقة تنسيق أزرار الانتقاء (radio buttons) ...

التابع Module.included_modules‎ في روبي

يعيد التابع included_modules قائمة بالوحدات المضمنة في الوحدة التي استُدعي معها. البنية العامة included_modules → array‎ القيمة المعادة تعاد مصفوفة تحوي الوحدات المضمنة في الوحدة التي استُدعي معها. أمثلة مثال على استخدام التابع included_modules‎: module Mixin end module Outer include Mixin end Mixin.included_modules #=> [] Outer.included_modules #=> [Mixin]‎ انظر أيضا التابع include: يستدعي التابع Module.append_features على كل المعاملات الممررة بترتيب عكسي. التابع included: يُستدعى في كل مرة يتم تضمين المستقبل (receiver) في وحدة أو صنف آخر. التابع include?‎: يتحقق إن كانت الوحدة المعطاة مُضمّنةً ...

التابع Module.autoload‎ في روبي

يُُسجل التابع autoload اسم الملف المراد تحميله (باستخدام Kernel::require) في أول مرة يتم فيها الوصول إلى الوحدة الممررة (والتي قد تكون سلسلةً نصيةً أو رمزًا) في مجال أسماء الوحدة التي استُدعيت معه. البنية العامة autoload(module, filename)→ nil‎ المعاملات module‎ سلسلة نصية أو رمز يمثل الوحدة. filename‎ اسم الملف. القيمة المعادة تعاد القيمة nil. أمثلة مثال على استخدام التابع autoload‎: module A end A.autoload(:B, "b") A::B.doit # autoloads "b"‎ انظر أيضا التابع autoload?‎: يعيد اسم ...

عرض (50 السابقة | 50 التالية) (20 | 50 | 100 | 250 | 500).