نتائج البحث
اذهب إلى التنقل
اذهب إلى البحث
الصنف NameError في روبي
يُطلق الاستثناء NameError عندما يكون الاسم المعطى غير صالح أو غير مُعرّف. انظر إلى السطر البرمجي التالي: puts foo
سيُطلق عند تنفيذه الاستثناء التالي: NameError: undefined local variable or method `foo' for main:Object
أسماء الثوابت يجب أن تبدأ بحرف كبير، لذلك فالشيفرة البرمجية التالي: Integer.const_set :answer, 42
ستطلق الاستثناء NameError: NameError: wrong constant name answer
توابع الصنف العامة (Public Class Methods) new ينشئ استثناءً جديدًا من النوع NameError. توابع النسخة العامة (Public Instance Methods) local_variables يعيد قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلٍق ...
التابع NameError.name في روبي
يعيد التابع name الاسم المقترن بالاستثناء NameError الحالي. البنية العامة name → string or nil
القيمة المعادة تعاد سلسلة نصية تمثِّل الاسم المقترن بالاستثناء NameError الحالي. انظر أيضا التابع local_variables: يعيد قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلٍق الخطأ NameError. التابع receiver: يعيد المستقبل (receiver) المقترن بالاستثناء NameError الحالي. مصادر قسم التابع name في الصنف NameError في توثيق روبي الرسمي.
التابع NameError.local_variables في روبي
يعيد التابع local_variables قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلِق الاستثناء NameError. هذا التابع مخصص للإستخدام الداخلي فقط. البنية العامة local_variables → array
القيمة المعادة تعاد مصفوفة تحوي أسماء المتغيرات المحلية المُعرّفة حيث أُطلٍق الاستثناء NameError. انظر أيضا التابع new: ينشئ استثناءً جديدًا من النوع NameError. التابع name: يعيد الاسم المقترن بالاستثناء NameError الحالي. مصادر قسم التابع local_variables في الصنف NameError في توثيق روبي الرسمي.
التابع NameError.new في روبي
ينشئ التابع new استثناءً جديدًا من النوع NameError. في حال تمرير اسم إليه، فيمكن لاحقًا التحقق منه باستخدام التابع name. البنية العامة new([msg, *, name]) → name_error
المعاملات msg رسالة الخطأ. name في حال تمرير هذا الاسم، فيمكن لاحقًا التحقق منه باستخدام التابع name. القيمة المعادة يعاد كائنٌ جديدٌ من النوع NameError. انظر أيضا التابع name: يعيد الاسم المقترن بالاستثناء NameError الحالي. التابع local_variables: يعيد قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلِق الاستثناء NameError. مصادر قسم التابع new في الصنف NameError في ...
التابع NameError.receiver في روبي
يعيد التابع receiver المستقبل (receiver) المقترن بالاستثناء NameError الحالي. البنية العامة receiver → object
القيمة المعادة يعاد المستقبل (receiver) المقترن بالاستثناء NameError الحالي. انظر أيضا التابع name: يعيد الاسم المقترن بالاستثناء NameError الحالي. مصادر قسم التابع receiver في الصنف NameError في توثيق روبي الرسمي.
التابع 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 بالحسبان ...
معالجة الاستثناءات في روبي
يتمّ التعامل مع الاستثناءات بعد الكلمة rescue في الكتلة begin/end: begin
# الشيفرة التي قد تسبب ظهور استثناء برمجي
rescue
# معالجة الاستثناء
end
إذا كنت ضمن تابع، فلست بحاجة لاستخدام begin و end إلا إذا كنت ترغب بحدّ النّطاق الخاص بالاستثناء الذي ترغب بمعالجته: def my_method
# ...
rescue
# ...
end
نفس الأمر يطبّق في الأصناف (classes) والوحدات (modules). يمكنك إسناد استثناء إلى متغيّر محليّ باستخدام الرمز => متبوعًا باسم المتغيّر، وذلك في نهاية السطر الخاص بالكلمة rescue: begin
# ...
rescue => exception
warn exception.message
raise # كرر ظهور ...
التابع Module.const_set في روبي
يضبط التابع const_set قيمة ثابت محدَّد إلى قيمة الكائن المعطى ثم يعيد ذلك الكائن. في حال لم يكن هناك ثابت يحمل الاسم المعطى، فسيُنشئ ثابت جديد ويسند إلى تلك القيمة. البنية العامة const_set(sym, obj) → obj
const_set(str, obj) → obj
المعاملات sym رمز يمثل الثابت. إذا لم يكن المعامل sym اسم ثابت صالح، فسيُطلق الخطأ NameError مع التحذير "wrong constant name". obj الكائن المراد ضبط قيمته إلى الثابت. str سلسلة نصية تمثل الثابتة. إذا لم يكن المعامل str اسم ثابت صالح، فسيُطلق ...
التابع Object.method في روبي
يبحث التابع method عن تابعٍ باسمٍ محدَّد في الكائن المعطى بوصفه مستقبلًا (receiver)، ثمَّ يعيد كائنًا من النوع Method لذلك التابع (أو يرمي الاستثناء NameError). يتصرَّف الكائن Method كتعبيرٍ مغلق (closure) في نسخ الكائن الخاصة بالكائن الذي يبحث فيه؛ لذلك، تبقى متغيِّرات النسخة (instance variables) وقيمة self متاحةً. البنية العامة method(sym) → method
المعاملات sym رمزٌ يشير إلى اسم التابع المراد البحث عنه. القيم المعادة يُعاد كائنًا من النوع Method يمثِّل التابع الموافق للاسم sym الموجود في الكائن المعطى، أو ...
التابع Module.const_defined? في روبي
يتحقق التابع const_defined? مما إذا كانت الوحدة التي استُدعي معها أو أحد أسلافها (ancestors) تحوي الثابت المعطى. Float.const_defined?(:EPSILON) #=> true, found in Float itself
Float.const_defined?("String") #=> true, found in Object (ancestor)
BasicObject.const_defined?(:Hash) #=> false
إذا كانت الوحدة من النوع Module، فسيتم إضافة إلى ذلك فحص Object وكذلك أسلافه. Math.const_defined?(:String) #=> true, found in Object
في كل الأصناف أو الوحدات المفحوصة، إذا لم يكن الثابت موجودًا وكان التحميل التلقائي (autoload) مفعلًا له، ...
التابع Object.public_method في روبي
يبحث التابع public_method عن التوابع العامة فقط بشكل مشابه لعمل التابع method. البنية العامة public_method(sym) → method
المعاملات sym رمزٌ يشير إلى اسم التابع المراد البحث عنه. القيم المعادة يُعاد التابع الموافق للاسم sym من الكائن المُعطى، أو يُرمى الاستثناء NameError إذا لم توجد توابع موافقة لهذا الاسم. انظر أيضًا التابع method: يبحث عن تابعٍ باسمٍ محدَّد في الكائن المعطى بوصفه مستقبلًا. التابع public_send: يَستدعي التابع المعرَّف برمزٍ محدَّدٍ ويُنفَّذه تلقائيًا مع تمرير أي معاملاتٍ معطاة. التابع send: يَستدعي التابع ...
التابع Binding.local_variable_get في روبي
يعيد التابعlocal_variable_get قيمة المتغير المحلي الممرَّر إليه. هذا التابع هو النسخة المختصرة للشيفرة التالية: binding. eval("#{symbol}")
البنية العامة local_variable_get(symbol) → obj
المعاملات symbol المتغير المحلي المراد معرفة قيمته. القيم المعادة يعاد كائن يمثل قيمة المتغير المحدد في المعامل symbol. أمثلة مثال لاستخدام التابعlocal_variable_get : def foo
a = 1
binding.local_variable_get(:a) #=> 1
binding.local_variable_get(:b) #=> NameError
end
انظر أيضًا التابع eval: يقدر تعابير لغة روبي الممررة إليه في السياق Binding. التابع local_variables: يعيد أسماء المتغيرات المحلية المعرفة في Binding على شكل ...
التابع Binding.local_variable_get في روبي
يعيد التابعlocal_variable_get قيمة المتغير المحلي الممرَّر إليه. هذا التابع هو النسخة المختصرة للشيفرة التالية: binding. eval("#{symbol}")
البنية العامة local_variable_get(symbol) → obj
المعاملات symbol المتغير المحلي المراد معرفة قيمته. القيم المعادة يعاد كائن يمثل قيمة المتغير المحدد في المعامل symbol. أمثلة مثال لاستخدام التابعlocal_variable_get : def foo
a = 1
binding.local_variable_get(:a) #=> 1
binding.local_variable_get(:b) #=> NameError
end
انظر أيضًا التابع eval: يقدر تعابير لغة روبي الممررة إليه في السياق Binding. التابع local_variables: يعيد أسماء المتغيرات المحلية المعرفة في Binding على شكل ...
التابع Module.class_variable_get في روبي
يعيد التابع class_variable_get قيمة متغير الصنف المعطى (أو يطلق الاستثناء NameError). يجب تضمين الجزء @@ من اسم المتغير بالنسبة لمتغيرات الصنف العادية. تُحوّل المعاملات النصية إلى رموز. البنية العامة class_variable_get(symbol) → obj
class_variable_get(string) → obj
المعاملات symbol رمز يمثل متغير الصنف. string سلسلة نصية تمثل متغير الصنف. القيمة المعادة تعاد قيمة متغير الصنف المعطى. أمثلة مثال على استخدام التابع class_variable_get: class Fred
@@foo = 99
end
Fred.class_variable_get(:@@foo) #=> 99
انظر أيضا التابع class_variable_defined?: يتحقق إن كان متغير الصنف (class variable) ...
التابع Module.class_variable_defined? في روبي
يتحقق التابع class_variable_defined? إن كان متغير الصنف (class variable) المعطى مٌعرّفا في الكائن الذي استُدعي معه. تُحوّل المعاملات النصية إلى رموز. البنية العامة class_variable_defined?(symbol) → true or false
class_variable_defined?(string) → true or false
المعاملات symbol رمز يمثل متغير الصنف. string سلسلة نصية تمثل متغير الصنف. القيمة المعادة تعاد القيمة true إن كان متغير الصنف المعطى مٌعرّفا في الكائن المعطى، وإلا فستُعاد false. أمثلة مثال على استخدام التابع class_variable_defined?: class Fred
@@foo = 99
end
Fred.class_variable_get(:@@foo) #=> 99
انظر ...
التابع Object.singleton_method في روبي
يبحث التابع singleton_method في التوابع المنفردة فقط بطريقة مشابهة للتابع method. البنية العامة singleton_method(sym) → method
المعاملات sym الرمز المعرِّف للتابع المنفرد. القيم المعادة يُعاد التابع الموافق للرمز sym المُعطى. أمثلة مثالٌ عن استخدام التابع singleton_method: class Demo
def initialize(n)
@iv = n
end
def hello()
"Hello, @iv = #{@iv}"
end
end
k = Demo.new(99)
def k.hi
"Hi, @iv = #{@iv}"
end
m = k.singleton_method(:hi)
m.call #=> "Hi, @iv = 99"
m = k.singleton_method(:hello) ...
التابع Module.class_variables في روبي
يعيد التابع class_variables مصفوفة مكونة من أسماء متغيرات الصنف في الوحدة التي استُدعي معها. يشمل ذلك أسماء متغيرات الصنف في كل الوحدات المُضمّنة ما لم تمرَّر القيمة false إلى التابع. البنية العامة class_variables(inherit=true) → array
المعاملات inherit قيمة منطقية تحدِّد ما إذا كانت أسماء متغيرات الصنف في كل الوحدات المُضمّنة ستُشمل أم لا. القيمة المعادة تعاد مصفوفة مكونة من أسماء متغيرات الصنف في الوحدة التي استُدعي معها. أمثلة مثال على استخدام التابع class_variables: class One
@@var1 = 1
end
class Two < ...
التابع Module.class_variable_set في روبي
يضبط التابع class_variable_set قيمة متغير الصنف المحدد بالمعامل المُمرَّر ويحيل إليه قيمة محدَّدة. إذا تم تمرير اسم متغير الصنف كسلسلة نصية، فستُحوّل تلك السلسلة إلى رمز. البنية العامة class_variable_set(symbol, obj) → obj
class_variable_set(string, obj) → obj
المعاملات symbol رمز يمثل متغير الصنف. obj قيمة الكائن المراد تعيينها إلى متغير الصنف. string سلسلة نصية تمثل متغير الصنف. القيمة المعادة يعاد الكائن obj المعطى. أمثلة مثال على استخدام التابع class_variable_set: class Fred
@@foo = 99
def foo
@@foo
...
المعامل []= الخاص بالصنف Struct في روبي
يضبط المعامل [] عند استدعائه بالشكل struct[member/index] = obj قيمة عضو البنية member المعطى أو العضو الموجود عند الفهرس index إلى القيمة obj. يطلق الاستثناء NameError إن كان member غير موجود، أو الاستثناء IndexError إن كان index خارج النطاق. البنية العامة struct[member] = obj → obj
struct[index] = obj → obj
المعاملات member اسم العضو المراد تعيين قيمته. index فهرس العضو المراد تعيين قيمته. القيمة المعادة تعاد القيمة obj المُعيّنة. أمثلة مثال على استخدام المعامل []=: Customer = Struct.new(:name, :address, ...
التابع Object.instance_variable_get في روبي
يجلب التابع instance_variable_get قيمة مُتغيِّر النسخة (instance variable) المُمرَّر إليه من الكائن المعطى، أو يُعيد قيمةً عدميّةً nil إذا كان المتغيِّر غير معيَّن في ذلك الكائن. يجب أن يحتوي اسم المُتغيِّر على الرمز @ في حال كان من متغيرات النسخة النظامية (regular instance variables). يُرمى الاستثناء NameError إذا كان الرَّمز المُعطى غير معرَّفٍ على أنَّه اسمٌ لمتغيِّر نسخة. تُحوَّل الوسائط النّصية المُمرَّرة إلى التابع إلى رموز. البنية العامة instance_variable_get(symbol) → obj
instance_variable_get(string) → obj
المعاملات symbol الرمزُ المراد جلب قيمته في ...