نتائج البحث

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

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

كائنات الصنف Proc هي كتلٌ من الشيفرات البرمجية رُبطت إلى مجموعة من المتغيرات المحليَّة. حالما تُربط، يمكن استدعاء الشيفرة في سياقات مختلفة ويبقى الوصول متاحًا لتلك المتغيرات. def gen_times(factor) return Proc.new {|n| n*factor } end times3 = gen_times(3) times5 = gen_times(5) times3.call(12) #=> 36 times5.call(5) #=> 25 times3.call(times5.call(4)) #=> 60 توابع الصنف العامة (Public ...

المعامل === في الصنف Proc في روبي

يستدعي المعامل === الكتلة (block) بتمرير الكائن الواقع على يمينه كمعاملٍ للنسخة proc بشكلٍ مشابهٍ للتابع Proc.call. يسمح هذا للكائن proc أن يكون هدفًا للبنود (when clause) في عبارات case. البنية العامة proc === obj → result_of_proc القيم المعادة تُعاد نتيجة تنفيذ الكتلة. انظر أيضًا التابع hash: يحسب قيمة التجزئة الموافقة لجسم الكتلة proc التي استدعيت معه ثمَّ يعيدها. التابع ?lambda: يتحقَّق إذا كانت معالجة الوسائط صارمةً في الكائن Proc. التابع to_proc: يُعدُّ جزءًا من البروتوكول المستخدم في تحويل الكائنات ...

التابع Proc.arity في روبي

يُعيد التابع arity عدد الوسائط الإلزاميَّة في الكائن proc الذي استدعي معه. إذا عُرِّفت الكتلة (block) من دون وسائط، فسيُعيد التابع القيمة 0. إذا عُرِّفت الكتلة مع عدد محدَّد n من الوسائط، فسيُعيد التابع ذلك العدد n. إذا كان للكتلة وسائط اختيارية، فسيُعيد التابع 1-n-، إذ يمثِّل n عدد الوسائط الإلزامية، باستثناء الكتل التي ليست من النوع lambda والتي تمتلك عددًا محدودًا من الوسائط الاختيارية؛ في هذه الحالة الأخيرة، يُعيد التابع العدد n. تُعتبر وسائط الكلمة المفتاحية (keyword argument) وسيطًا ...

التابع ?Proc.lambda في روبي

يتحقَّق التابع ?lambda إذا كانت معالجة الوسائط صارمةً في الكائن Proc (أي يجب تمرير نفس العدد تمامًا من الوسائط المعرَّفة عند إنشاء الكائن). تُنشأ هذه الكائنات عادةً بوساطة lambda. كائنات الصنف Proc المُنشأة بوساطة proc ليست صارمةً وتمتلك الميزات التالية: تتجاهل الوسائط الإضافيَّة: proc {|a,b| [a,b] }.call(1,2,3)    #=> [1,2] تُعيِّن القيمة nil للوسائط الناقصة: proc {|a,b| [a,b] }.call(1)        #=> [1,nil] توسِّع وسيط مصفوفة مفردة: proc {|a,b| [a,b] }.call([1,2])    #=> [1,2] كائن الصنف Proc المُنشأ بواسطة lambda لا يمتلك هذه الميِّزات. lambda ...

التابع Proc.to_proc في روبي

يُعدُّ التابع to_proc جزءًا من البروتوكول المستخدم في تحويل الكائنات إلى كائناتٍ من الصنف Proc. إن استدعي التابع مع نسخة من الصنف Proc، فسيعيد هذه النسخة نفسها ببساطة. البنية العامة to_proc → proc القيم المعادة يُعاد ناتج تحويل الكائن المعطى إلى كائنٍ من الصنف Proc. انظر أيضًا التابع hash: يحسب قيمة التجزئة الموافقة لجسم الكتلة proc التي استدعيت معه ثمَّ يعيدها. التابع ?lambda: يتحقَّق إذا كانت معالجة الوسائط صارمةً في الكائن Proc. المعامل ===: يستدعي الكتلة بتمرير الكائن الواقع على ...

التابع Proc.binding في روبي

يُعيد التابع binding الرَّبط (binding) الموافق للكائن Proc الذي استدعي معه. لاحظ أنَّ التابع Kernel.eval يقبل إما كائنًا من النوع Proc أو النوع Binding على أنَّه معامله الثّاني. البنية العامة binding → binding القيم المعادة يُعاد كائنٌ من النوع Binding. أمثلة مثالٌ عن استخدام التابع binding: def fred(param) proc {} end b = fred(99) eval("param", b.binding) #=> 99 انظر أيضًا التابع arity: يُعيد عدد الوسائط الإلزاميَّة في الكائن proc الذي استدعي معه. التابع curry: يُعيد كتلة proc مقسَّمة. التابع to_s: ...

التابع Proc.new في روبي

يُنشئ التابع new كائنًا جديدًا من الصنف Proc، ويربطه إلى السياق الحالي. قد يُستدعى التابع new من دون كتلةٍ وهذا فقط ضمن التوابع المرفقة بكتل مُسبقًا، إذ تُحوَّل تلك الكتلة في مثل هذه الحالة إلى كائنٍ من النوع Proc. البنية العامة new {|...| block } → a_proc new → a_proc المعاملات … الوسائط المُمرَّرة إلى الكتلة. block الكتلة المراد تمريرها إلى الكائن. القيم المعادة يُعاد كائنٌ من الصنف Proc. أمثلة مثالٌ عن استخدام التابع new: def proc_from Proc.new end proc = proc_from ...

التابع Proc.source_location في روبي

يُعيد التابع source_location اسم ملف روبي المصدري ورقم السَّطر الحاوي على كتلة proc محدَّدة، أو يُعيد القيمة nil إذا كانت هذه الكتلة غير مُعرَّفة في روبي (مثل native). البنية العامة source_location → [String, Integer] القيم المعادة تُعاد مصفوفةٌ تحوي سلسلةً نصيَّةً (String) تُمثِّل اسم ملف روبي المصدري وعددًا صحيحًا (Integer) يمثِّل رقم السطر الذي يحتوي كتلة proc المُحدَّدة، أو تُعاد القيمة nil إذا كانت هذه الكتلة غير مُعرَّفة في روبي. انظر أيضًا التابع arity: يُعيد عدد الوسائط الإلزاميَّة في الكائن ...

التابع Method.curry‎ في روبي

يعيد curry كائن proc مُجزّء (curried proc) انطلاقًا من التابع الذي استُدعي معه. عندما يكون عدد الوسائط الممررة إلى الكتلة proc أقل من رتبة (arity) التابع، فستعاد كتلة proc مجزءة أخرى. ولن يُستدعى التابع فعليًا إلا عندما يتم توفير الوسائط الكافية لتوقيع التابع (method signature). يجب توفير الوسيط الاختياري arity إن أردت تجزئة (currying) التوابع التي تقبل عددًا متغيرًا من الوسائط لتحديد عدد الوسائط المطلوبة قبل استدعاء التابع فعليًا. البنية العامة curry → proc curry(arity) → proc‎ المعاملات arity‎ في ...

التابع Proc.parameters في روبي

يُعيد التابع parameters معلوماتٍ عن معاملات كتلة محدَّدة من النوع proc. البنية العامة parameters → array القيم المعادة تُعاد مصفوفةٌ تتضمَّن معلوماتٍ عن معاملات الكتلة proc المعطاة. أمثلة مثالٌ عن استخدام التابع parameters: prc = lambda{|x, y=42, *other|} prc.parameters #=> [[:req, :x], [:opt, :y], [:rest, :other]] انظر أيضًا التابع arity: يُعيد عدد الوسائط الإلزاميَّة في الكائن proc الذي استدعي معه. التابع binding: يُعيد الرَّبط الموافق للكائن Proc الذي استدعي معه. التابع curry: يُعيد كتلة proc مقسَّمة. التابع to_s: يُعيد المُعرِّف ...

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