نتائج البحث
اذهب إلى التنقل
اذهب إلى البحث
الصنف Kernel في روبي
تُضمَّن الوحدة Kernel من طرف الصنف Object، لذلك فتوابعها متاحة في كل كائنات روبي. توابع نسخ الصنف Kernel مُوثّقة في صفحة الصنف Object، أما توابع الوحدة Kernel فهي مُوثقة هنا. تستدعى هذه التوابع بدون مستقبل (receiver)، وبالتالي يمكن استدعاؤها وفق الشكل الدالي: sprintf "%.1f", 1.234 #=> "1.2"
توابع الصنف العامة (Public Class Methods) Array يعيد المعامل الممرَّر إليه على شكل مصفوفة (Array). Complex يعيد ناتج التعبير x + i * y؛ حيث i هو الوحدة التخيلية للعدد العقدي. Float Hash يعيد ناتج التعبير x + ...
Symbol.keyFor(key)
الدالة Symbol.keyFor(key) تحصل على مفتاحٍ للرمز المعطي من سجل الرموز العام. البنية العامة Symbol.keyFor(sym);
sym الرمز الذي سنبحث عنه. القيمة المعادة سلسلة نصية تمثل الرمز المرتبط بالرمز المعطي إن كان موجودًا في السجل العام؛ وإلا فستعاد القيمة undefined. أمثلة سنستخدم الدالة Symbol.for() لإنشاء رمز عام جديد ثم سنحصل على قيمة مفتاحه عبر الدالة Symbol.KeyFor() في المثال الآتي: var globalSym = Symbol.for('foo'); // إنشاء رمز عام جديد
Symbol.keyFor(globalSym); // "foo"
لاحظ أنَّ الدالة Symbol.KeyFor() لن تُعيد قيمة رمز المفتاح المحلي، لأنَّه ليس موجودًا ...
التابع Row.keys() في بايثون
يعيد التابع قائمة بأسماء الأعمدة. البنية العامة keys()
القيمة المعادة يعيد التابع قائمة بأسماء الأعمدة، وتكون هذه القائمة العنصر الأول في كلّ صفّ tuple في قيمة الخاصية Cursor.description بعد إجراء الاستعلام مباشرة. ملاحظة: أضيف دعم عملية التقطيع في الإصدار 3.5 من اللغة. أمثلة لنفترض أنّنا هيّأنا جدولًا على النحو التالي: conn = sqlite3.connect(":memory:")
c = conn.cursor()
c.execute('''create table stocks
(date text, trans text, symbol text,
qty real, price real)''')
c.execute("""insert into stocks
values ('2006-01-05','BUY','RHAT',100,35.14)""")
conn.commit()
c.close()
يمكننا ...
التابع Enumerable.chunk في روبي
يُمرِّر التابع chunk كل عنصر من عناصر المجموعة التي استدعيت معه إلى الكتلة المعطاة ثمَّ يُقطِّعها إلى أجزاء (قطع صغيرة) بحسب القيمة المعادة من الكتلة. العناصر المتتالية التي يكون لها نفس القيمة المعادة من الكتلة هي التي تُجمَّع سويةً. القيم المفتاحية التالية لها معنًى خاص: nil و :_separator: يحدِّدان بأنَّه يجب على العناصر أن تُحذَف. يمكن استعمالهما لتجاهل بعض العناصر. :_alone: يحدِّد بأنه يجب على العنصر أن يُجمَّع لوحده. أية رموز أخرى تبدأ بخط سفلي (underscore) سيؤدي استعمالها إلى رمي خطأ. البنية ...
الصنف Regexp في روبي
تمثل كائنات الصنف Regexp التعابير النمطية التي تُستخدم لمطابقة نمط (pattern) معيّن في سلسلة نصية. تُنشَأ التعابير النمطية باستخدام الصياغتين /.../ و %r{...}، أو باستعمال الباني new. التعابير النمطية هي أنماط تصف محتويات السلسلة النصية. يمكن استخدامها للتحقق من أنّ سلسلة نصية تحتوي على نمط معين، أو لاستخراج الأجزاء المُطابقة منها. عادةً ما يتم تحديد التعبير النمطي بخط مائل (/) كما يوضح المثال التالي: /hay/ =~ 'haystack' #=> 0
/y/.match('haystack') #=> #<MatchData "y">
إذا احتوت سلسلة نصية على النمط، فسيقال ...
Function.name
الخاصية Function.name تُعيد اسم الدالة. سمات الخاصية Function.name قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط نعم لاحظ أنَّ المتصفحات التي كانت تدعم هذه الخاصية قبل أن تصبح معياريةً (في ECMAScript 2015) كانت تضبط السمة configurable إلى false (أي أنَّ هذه الخاصية غير قابلة للضبط). أمثلة اسم دالة مُصرَّح عنها الخاصية name تُعيد اسم الدالة المستخدم في تعبير التصريح عن الدوال: function doSomething() {}
doSomething.name; // "doSomething"
اسم دالة مُعرَّفة عبر الدالة البانية Function الدوال المُنشَأة عبر البنية new Function(...) أو ...
التابع Connection.close() في بايثون
يغلق التابع الاتصال بقاعدة البيانات. يجدر الانتباه إلى أنّ إغلاق الاتصال لا يستدعي التابع commit() على نحو تلقائي. فإن أغلقت الاتصال بقاعدة البيانات دون استدعاء التابع commit() أولًا، ستفقد جميع التعديلات التي أجريتها على قاعدة البيانات. البنية العامة close()
أمثلة يبين المثال التالي طريقة استخدام التابع: import sqlite3
conn = sqlite3.connect('example.db')
c.execute('''CREATE TABLE stocks
(date text, trans text, symbol text, qty real, price real)''')
c.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)")
conn.commit()
conn.close()
مصادر صفحة ...
التابع Connection.commit() في بايثون
يحفظ التابع التعديلات التي أجريت على قاعدة البيانات. البنية العامة commit()
في حال عدم استدعاء هذا التابع ستكون جميع التعديلات التي أجريت بعد آخر استدعاء للتابع commit() غير مرئية بالنسبة إلى الاتصالات الأخرى المفتوحة مع قاعدة البيانات؛ لذا إن لم تتمكن من رؤية البيانات التي أضفتها إلى قاعدة البيانات، فتأكّد من أنّك لم تنس استدعاء هذا التابع. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3
conn = sqlite3.connect('example.db')
c.execute('''CREATE TABLE stocks
...
التابع test الخاص بالصنف Kernel في روبي
يجري التابع test عدة اختبارات على ملف واحد أو على ملفين. البنية العامة test(cmd, file1 [, file2] ) → obj
المعاملات cmd يحدد الاختبار المراد تطبيقه. اختبارات File التي تطبَّق على ملف واحد هي: المعامل cmd نوع القيمة المعادة وصف "A" Time توقيت آخر دخول إلى الملف file1. "b" قيمة منطقية يعيد True إن كان الملف file1 جهازًا كتليًّا (block device). "c" قيمة منطقية يعيد True إن كان file1 من النوع جهازًا محرفيًّا (character device). "C" Time توقيت آخر تغيير ...
الدالة locals() في بايثون
تُحدّث الدّالة locals() قاموسًا يُمثّل جدول الرموز المحليّ (local symbol table) وتُعيده. البنية العامة locals()
المعاملات لا توجد مُعاملات. القيمة المعادة قاموس يُمثّل المتغيّرات المحليّة. ملاحظات تُعاد المُتغيّرات الحرّة (free variables) من طرف الدّالة عند استدعائها داخل الدّوال وليس داخل الأصناف. لا يجب تعديل مُحتويات القاموس المُعاد، إذ أنّ التّعديلات قد لا تُؤثّر على المتغيّرات المحليّة والحرّة المُستخدمة من طرف المُفسّر. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> y = 1 # هذا المتغيّر لن يكون محليّا نسبة ...
التابع Cursor.close() في بايثون
يغلق التابع المؤشر فورًا (عوضًا عن إغلاقه عند استدعاء التابع __del__)، وبعدها لن يكون بالإمكان استخدام المؤشر، وستطلق اللغة الاستثناء ProgrammingError عند تنفيذ أي عملية باستخدام المؤشر. البنية العامة close()
أمثلة يبين المثال التالي طريقة استخدام التابع: >>> import sqlite3
>>> conn = sqlite3.connect('example.db')
>>> c = conn.cursor()
>>> c.execute('''CREATE TABLE stocks
... (date text, trans text, symbol text, qty real, price real)''')
<sqlite3.Cursor object at 0x7f0ea62989d0>
>>> c.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)")
<sqlite3.Cursor ...
الدالة globals() في بايثون
تعيد الدّالة globals() قاموسًا يحتوي على الكائنات العامّة الحاليّة. البنية العامة globals()
المعاملات لا توجد مُعاملات لهذه الدالة. القيمة المعادة قاموس يُمثّل جدول الرّموز العامّ (global symbol table) ويكون دائمًا قاموسَ الوحدة الحاليّة، وفي داخل دالّة أو تابع، فإنّ القاموس يُمثّل الكائنات العامّة في الوحدة التي عُرّفت فيها الدّالة أو التّابع وليس الوحدة التي استُدعيَت منها. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة، لاحظ أنّ المُتغيّر x الذي نُعرّفه داخل الدّالة hello() لا يظهر في القاموس لأنّه كائن محليّ ...
Object.assign()
الدالة Object.assign() تُستخدَم لنسخ قيمة جميع الخاصيات القابلة للإحصاء التابعة للكائن مباشرة (enumerable own properties) من كائنٍ مصدريٍ (source object) أو أكثر، وستُعيد الكائن الهدف (target object). البنية العامة Object.assign(target, ...sources)
target الكائن الهدف. sources الكائنات المصدرية. القيمة المعادة الكائن الهدف. الوصف سيستعاض عن الخاصيات في الكائن الهدف بالخاصيات الموجودة في الكائنات المصدرية إن كانت تحمل المفتاح نفسه؛ وستُستخدَم قيمة الخاصيات الموجودة الكائنات المصدرية الأخيرة إذا وجدت خاصيات لها نفس المفتاح في الكائنات المصدرية الأولى. لا تنسخ الدالة Object.assign() إلا ...
التابع Symbol.intern في روبي
يعيد التابع intern بشكل عام الرمز المقابل لكائن ما. لذلك، عند استدعائه مع رمز، فسيعيد الرمز نفسه. البنية العامة intern→ sym
القيمة المعادة يعاد الرمز المعطى نفسه (self). انظر أيضًا التابع inspect: يعيد سلسلة نصية تمثل الرمز التي استُدعي معه. التابع size: يشبه التعبير sym.to_s.length. مصادر قسم التابع intern في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.id2name في روبي
يعيد التابع id2name الاسم أو السلسلة نصية التي تمثل الرمز. البنية العامة id2name→ string
القيمة المعادة تعاد سلسلة نصية تمثِّل الاسم أو السلسلة نصية التي تمثل الرمز. أمثلة مثال على استخدام التابع id2name: :fred.id2name #=> "fred"
:ginger.to_s #=> "ginger"
انظر أيضا التابع encoding: يُعيد الترميز الذي يمثل ترميز الرمز التي استُدعي معه. التابع inspect: يعيد سلسلة نصية تمثِّل الرمز التي استُدعي معه. التابع intern: يُعيد الرمز المقابل للسلسلة النصية التي استدعي معها، أو يُنشىء ذلك الرمز إذا لم يكن ...
التابع Symbol.size في روبي
يشبه التابع size التعبير sym.to_s.length. البنية العامة size → integer
القيمة المعادة يعاد عدد صحيح يمثِّل حجم الرمز المعطى. انظر أيضًا التابع next: يشبه التعبير sym.to_s.succ.intern. التابع slice: يعيد ناتج التعبير sym.to_s[]. مصادر قسم التابع size في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.next في روبي
يشبه التابع next التعبير sym.to_s.succ.intern. البنية العامة succ
انظر أيضًا التابع size: يشبه التعبير sym.to_s.length. مصادر قسم التابع next في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.match? في روبي
يعيد التابع match? ناتج التعبير sym.to_s.match?. البنية العامة match?(pattern) → true or false
match?(pattern, pos)→ true or false
المعاملات pattern النمط المراد التحقق من مطابقته للرمز المعطى. القيمة المعادة تعاد القيمة true إن طابق النمط pattern الرمز المعطى. خلا ذلك، تعاد القيمة false. انظر أيضا التابع match: يعيد ناتج التعبير sym.to_s.match. مصادر قسم التابع match? في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.encoding في روبي
يُعيد التابع encoding كائنُا من النوع Encoding يمثل ترميز الرمز التي استُدعي معه. البنية العامة encoding→ encoding
القيمة المعادة يعاد كائنُ من النوع Encoding يمثل ترميز الرمز التي استُدعي معه. انظر أيضا التابع id2name: يعيد الاسم أو السلسلة نصية التي تمثل الرمز. مصادر قسم التابع encoding في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.casecmp? في روبي
يتحقق التابع casecmp? إن كان الرمز الذي استُدعي معه والرمز المُمرَّر إليه متساويين بشكل غير حساس لحالة الأحرف. البنية العامة casecmp?(other_symbol)→ true, false, or nil
المعاملات other_symbol الرمز الآخر المراد التحقق منه. القيمة المعادة تعاد القيمة true إن كان الرمز الذي استُدعي معه والرمز other_symbol المعطى متساويين بعد طي حالة الترميز الموحد (Unicode case folding)، أو تعاد القيمة false إذا لم يكونا متساويين، أو تُعاد القيمة nil إذا كان للرمزين ترميزين غير متوافقين، أو إن لم يكن other_symbol رمزًا. أمثلة ...
التابع Symbol.to_sym في روبي
يعيد التابع to_sym بشكل عام الرمز المقابل لكائن. لذلك، عند استدعائه مع رمز، فسيعيد هذا الرمز نفسه (يعيد الكائن self). البنية العامة to_sym→ sym
القيمة المعادة يعاد الرمز المعطى نفسه (self). انظر أيضًا التابع to_s: يعيد الاسم أو السلسلة نصية التي تمثل الرمز مصادر قسم التابع to_sym في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.slice في روبي
يعيد التابع slice ناتج التعبير sym.to_s[]. البنية العامة slice(idx)→ char
slice(b, n) → string
المعاملات idx فهرس المحرف المراد اقتطاعه وجلبه من الرمز المعطى. b فهرس بداية الجزء المراد اقتطاعه وجلبه من الرمز المعطى. n طول الجزء المراد اقتطاعه من الرمز المعطى. القيمة المعادة يعاد المحرف الواقع عند الفهرس idx أو تعاد السلسلة النصية التي تبدأ عند المحرف ذي الفهرس b وتمتد حتى الطول n من المحارف. انظر أيضًا المعامل []: يعيد ناتج التعبير sym.to_s[]. مصادر قسم التابع slice في الصنف Symbol ...
التابع Symbol.length في روبي
يشبه التابع length التعبير sym.to_s.length. البنية العامة length→ integer
القيمة المعادة يعاد عددٌ صحيحٌ يمثِّل طول الرمز المعطى. انظر أيضًا التابع size: يشبه التعبير sym.to_s.length. التابع slice: يعيد ناتج التعبير sym.to_s[]. مصادر قسم التابع length في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.succ في روبي
يشبه التابع succ التعبير sym.to_s.succ.intern. البنية العامة succ
انظر أيضًا التابع slice: يعيد ناتج التعبير sym.to_s[]. مصادر قسم التابع succ في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.empty? في روبي
يتحقق التابع empty? مما إذا كان الرمز الذي استُدعي معه يساوي "" أم لا. البنية العامة empty?→ true or false
القيمة المعادة تعاد القيمة true إن كان الرمز الذي استُدعي معه يساوي ""، وإلا فستعاد القيمة false. انظر أيضًا التابع encoding: يُعيد الترميز الذي يمثل ترميز الرمز التي استُدعي معه. مصادر قسم التابع empty? في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.to_proc في روبي
يعيد التابع to_proc كائنًا من النوع Proc، والذي يستجيب للتابع المعطى من قبل الرمز. البنية العامة to_proc
القيمة المعادة يعاد كائنٌ من النوع Proc. أمثلة مثال على استخدام التابع to_proc: (1..3).collect(&:to_s) #=> ["1", "2", "3"]
انظر أيضًا التابع to_s: يعيد الاسم أو السلسلة نصية التي تمثل الرمز مصادر قسم التابع to_proc في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.casecmp في روبي
يقارن التابع casecmp بين رمزين بشكل غير حساس لحالة الأحرف. هذا التابع هو نسخة غير حساسة لحالة الأحرف (Case-insensitive) من المعامل <=>. في الوقت الحالي، لا تعمل الحساسية لحالة الأحرف إلا على الأحرف A-Z/a-z، وليس على كل محارف اليونيكود. هذا السلوك مختلف عن التابع casecmp?. البنية العامة casecmp(other_symbol)→ -1, 0, +1, or nil
المعاملات other_symbol الرمز المراد التحقق من مقارنته مع الرمز المعطى. القيمة المعادة تعاد القيمة -1 أو 0 أو +1 أو بناءً على ما إذا كان الرمز أصغر من أو يساوي أو أكبر من other_symbol. أو ...
التابع Symbol.match في روبي
يعيد التابع match ناتج التعبير sym.to_s.match. البنية العامة match(pattern) → matchdata or nil
match(pattern, pos)→ matchdata or nil
المعاملات pattern نمط يراد به مطابقة الرمز المعطى. pos موضع بدء عملية المطابقة. القيمة المعادة يعاد كائنٌ من النوع Matchdata يحوي نتائج التطابق. انظر أيضًا التابع match?: يعيد ناتج التعبير sym.to_s.match?. مصادر قسم التابع match في الصنف Symbol في توثيق روبي الرسمي.
التابع Symbol.all_symbols في روبي
يُعيد التابع all_symbols مصفوفة تضم جميع الرموز الموجودة حاليًا في جدول رموز روبي. البنية العامة all_symbols => array
القيمة المعادة تعاد مصفوفة تضم جميع الرموز الموجودة حاليًا في جدول رموز روبي. أمثلة مثال على استعمال التابع all_symbols: Symbol.all_symbols.size #=> 903
Symbol.all_symbols[1,20] #=> [:floor, :ARGV, :Binding, :symlink,
...
Ruby/Topics
تثبيت روبي توجد طرائق عدَّة لتنزيل وتثبيت روبي على كل منصة وهي: إمَّا استعمال أنظمة مدير الحزم، أو باستعمال المثبِّتات التلقائية، أو باستعمال مدراء روبي. هنالك طريقة أخرى يمكنك بالتأكيد استعمالها لتثبيت روبي وتصريف شيفراتها وهي بنائها من الشيفرة المصدرية مباشرةً. حول روبي يوفر هذا القسم لمحة سريعة عن لغة روبي ونشأتها، وتطورها، ومزاياها التي انفردت بها عن اللغات الأخرى، والتنفيذات المختلفة التي تملكها. البنية العامة بنية اللغة تعد روبي مزيجًا من اللغات البرمجية التالية: Perl، و Smalltalk، و Eiffel، ...
التابع Cursor.fetchall() في بايثون
يجلب التابع جميع الصفوف (المتبقّية) في نتيجة الاستعلام، ويعيد النتيجة على هيئة قائمة. البنية العامة fetchall()
القيمة المعادة يجلب التابع جميع الصفوف (المتبقّية) في نتيجة الاستعلام، ويعيد النتيجة على هيئة قائمة. يجدر التنبيه هنا إلى إمكانية تأثير خاصية arraysize في كائن المؤشر على أداء هذا التابع. يعيد التابع قائمة فارغة في حال عدم توفر الصفوف المطلوبة. أمثلة يبين المثال التالي طريقة عمل التابع: >>> import sqlite3
>>> conn = sqlite3.connect(":memory:")
>>> cur = conn.cursor()
>>> cur.execute("CREATE TABLE stocks (date text, trans text, symbol ...
الصنف Module في روبي
الصنف Module هو مجموعة من التوابع والثوابت. التوابع الموجودة في الوحدات Module قد تكون إما توابع نسخة (instance methods)، أو توابع وحدة (module methods). توابع النسخة تظهر كتوابع في صنفٍ عند تضمين الوحدة، وذلك على خلاف توابع الوحدة. وعلى النقيض، يمكن استدعاء توابع الوحدة دون إنشاء كائن يُغلفها، بينما قد لا يمكن فعل ذلك مع توابع النسخة. انظر صفحة module_function. في الأمثلة الموجودة في صفحات التوابع، يشير المعامل sym إلى رمز، والذي قد يكون إما سلسلة نصية، أو كائنًا من النوع ...
الدالة compact() في PHP
(PHP 4, PHP 5, PHP 7) تنشئ الدالة compact() مصفوفة تحتوي على متغيرات وقيمها. الوصف array compact ( mixed $varname1 [, mixed $... ] )
تنشئ هذه الدالة مصفوفةً تحتوي على متغيرات وقيمها. لكل من هذه المعاملات، تبحث الدالة compact() عن متغير بهذا الاسم في جدول الرموز (symbol table) الحالي وتضيفه إلى المصفوفة المُخرَجة بحيث يصبح اسم المتغير هو المفتاح وتصبح محتويات المتغير قيمة ذلك المفتاح. باختصار، تعمل هذه الدالة بعكس الدالة extract(). وتتخطى الدالة أية سلاسل نصية (string) لم تُضبَط ...
الدالة compact() في PHP
(PHP 4, PHP 5, PHP 7) تنشئ الدالة compact() مصفوفة تحتوي على متغيرات وقيمها. الوصف array compact ( mixed $varname1 [, mixed $... ] )
تنشئ هذه الدالة مصفوفةً تحتوي على متغيرات وقيمها. لكل من هذه المعاملات، تبحث الدالة compact() عن متغير بهذا الاسم في جدول الرموز (symbol table) الحالي وتضيفه إلى المصفوفة المُخرَجة بحيث يصبح اسم المتغير هو المفتاح وتصبح محتويات المتغير قيمة ذلك المفتاح. باختصار، تعمل هذه الدالة بعكس الدالة extract(). وتتخطى الدالة أية سلاسل نصية (string) لم تُضبَط ...
الأحداث في Node.js
الثبات: مستقر الكثير من أساس الواجهة البرمجية Node.js مبني حول بنية توجهها أحداث متميزة غير متزامنة حيث تطلق أنواع معينة من الكائنات (تُسمى "مطلقات" [emitters]) أحداث معينة تستدعي كائنات Function ("منصتات" [listeners]). على سبيل المثال: يطلق كائن net.server حدثًا كلما اتصل نظير بالخادم مثال آخر لكائن fs.ReadStream يطلق حدثًا عندما يُفتح ملف ما؛ ويطلق كائن stream حدثًا كلما أتيحت بيانات للقراءة. كل الكائنات التي تطلق أحداثًا هي من صنف مطلق الحدث EventEmitter. حيث تكشف عن الدالة eventEmitter.on() التي تتيح إلحاق ...
التابع Cursor.fetchmany() في بايثون
يجلب التابع المجموعة اللاحقة من الصفوف rows في نتيجة الاستعلام، ويعيد النتيجة كقائمة. البنية العامة fetchmany(size=cursor.arraysize)
المعاملات size يمكن تحديد عدد الصفوف التي يجلبها التابع مع كل استدعاء عن طريق المعامل size. وفي حال عدم تحديد قيمة لهذا المعامل فإنّ قيمة خاصية arraysize في كائن المؤشر ستحدّد عدد الصفوف التي سيجلبها التابع (القيمة الافتراضية لهذه الخاصية هي 1 وهذا يعني أنّ التابع سيجلب صفًّا واحدًا فقط). سيحاول التابع جلب الصفوف المحدّدة في معامل size، وإن كان ذلك غير ممكنًا بسبب ...
Object.prototype.hasOwnProperty()
الدالة Object.prototype.hasOwnProperty() تُعيد قيمةً منطقيةً تبيّن إن كان الكائن يمتلك خاصيةً ما مباشرةً (أي أنها لم يرثها). البنية العامة obj.hasOwnProperty(prop)
prop سلسلة نصية String أو رمز Symbol للخاصية التي نريد اختبار وجودها في الكائن. القيمة المعادة قيمة منطقية Boolean تُشير إذا كانت الخاصية تابعةً للكائن مباشرةً أم لا. الوصف كل كائن ينحدر من الكائن Object يرث الدالة hasOwnProperty، ويمكن أن تُستخدَم هذه الدالة لتحديد إن كان يملك أحد الكائنات الخاصية المعنية مباشرةً؛ وعلى النقيض من المعامل in، هذه الدالة لا ...
الصنف TarInfo() في بايثون
يمثّل كائن TarInfo عضوًا واحدًا في كائن TarFile. يحفظ هذا الكائن جميع الخصائص المطلوبة في الملف (مثل نوع الملف، وحجمه، ووقت التعديل، والأذونات، ومالك الملف وغيرها)، إلى جانب أنّه يقدّم بعض التوابع المفيدة لتحديد نوع الملف، ولا يحتوي هذا الكائن على بيانات الملف. تعيد التوابع getmember() و getmembers() و gettarinfo() كائنات TarInfo. البنية العامة الدالة البانية للصنف TarInfo: class tarfile.TarInfo(name="")
خصائص كائنات TarInfo يمتلك كائن TarInfo الخصائص العامة التالية: TarInfo.name اسم عضو الأرشيف. TarInfo.size الحجم بالبايتات. TarInfo.mtime وقت آخر تعديل. ...
الوحدة sqlite3 في بايثون
SQLite هي مكتبة مكتوبة بلغة C تتيح إنشاء قواعد بيانات على القرص الصلب ولا تحتاج إلى خادوم خاص لمعالجتها، وتتيح الوصول إلى قاعدة البيانات باستخدام نسخة غير قياسية من لغة الاستعلام SQL. تستخدم بعض التطبيقات والبرامج قاعدة بيانات SQLite لتخزين بياناتها الداخلية، ويمكن إنشاء نماذج أولية من التطبيق باستخدام SQLite ثم نقل الشيفرة إلى قواعد بيانات أكبر مثل PostgreSQL أو Oracle. كُتبت وحدة sqlite3 من قبل Gerhard Häring، وتقدّم واجهة SQL متوافقة مع معايير DB-API 2.0 الموصوفة في PEP 249. ...
المتغيرات المتغيرة في PHP
قد تحتاج في بعض الأحيان إلى استخدام أسماء متغيّرة للمتغيرات، بمعنى أن تعيين اسم المتغيّر واستخدامه يكون بصورة ديناميكية. لتعريف المتغيرات العادية نستخدم الصيغة التالية: <?php
$a = 'hello';
?>
أما المتغيّر المتغير (variable variable) فيأخذ قيمة متغيّر معين ويستخدمه كاسم لمتغير آخر. في المثال السابق يمكن استخدام الكلمة hello كاسم لمتغير آخر وذلك باستخدام علامتي $ عند التعبير عن المتغير: <?php
$$a = 'world';
?>
في هذه النقطة هناك متغيّران معرّفان ومخزنان في شجرة رموز PHP (أي PHP symbol tree): الأول هو $a ...
الخاصية list-style-type
الخاصية list-style-type في CSS تُحدِّد شكل الإشارة إلى عناصر القائمة. بطاقة الخاصية القيمة الابتدائية disc تُطبَّق على عناصر القوائم. قابلة للوراثة نعم قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت. /* قائمة مختصرة بأنواع الأشكال */
list-style-type: disc;
list-style-type: circle;
list-style-type: square;
list-style-type: decimal;
list-style-type: arabic-indic;
/* <string> */
list-style-type: '-';
/* @counter-style rule */
list-style-type: custom-counter-style;
list-style-type: none;
/* القيم العامة */
list-style-type: inherit;
list-style-type: initial;
list-style-type: unset;
ملاحظة: هذه الخاصية ستُطبَّق على عناصر القوائم، أي العناصر التي تكون قيمة الخاصية display فيها تساوي list-item، وهذا يتضمن العنصر <li> افتراضيًا؛ لكن لاحظ أنَّ قيمة ...
المتغيرات المتغيرة في PHP
قد تحتاج في بعض الأحيان إلى استخدام أسماء متغيّرة للمتغيرات، بمعنى أن تعيين اسم المتغيّر واستخدامه يكون بصورة ديناميكية. لتعريف المتغيرات العادية نستخدم الصيغة التالية: <?php
$a = 'hello';
?>
أما المتغيّر المتغير (variable variable) فيأخذ قيمة متغيّر معين ويستخدمه كاسم لمتغير آخر. في المثال السابق يمكن استخدام الكلمة hello كاسم لمتغير آخر وذلك باستخدام علامتي $ عند التعبير عن المتغير: <?php
$$a = 'world';
?>
في هذه النقطة هناك متغيّران معرّفان ومخزنان في شجرة رموز PHP (أي PHP symbol tree): الأول هو $a ...
الصنف Array في روبي
المصفوفات هي مجموعات مُرتَّبة ومُفهرسة بالأعداد الصحيحة (integer-indexed) ومُكونة من أي نوع من الكائنات. تبدأ فهارس المصفوفات بالعدد 0، كما هو الحال في لغتي C و Java. ويفترض أن يُحسب الفهرس السالب بدءًا من نهاية المصفوفة، أي أنَّ الفهرس ذا القيمة -1 يشير إلى العنصر الأخير في المصفوفة، والفهرس -2 يمثل موضع العنصر ما قبل الأخير، وهلم جرًا. إنشاء المصفوفات يمكن إنشاء مصفوفة جديدة باستخدام المعامل [] الباني. يمكن أن تحتوي المصفوفة نفسها على أنواع مختلفة من الكائنات. على سبيل ...
الوحدة util في Node.js
صُمِّمَت الوحدة util بشكل أساسي لتلبية احتياجات واجهات Node.js البرمجيّة الداخليّة. هذا لا يمنَع كون الأدوات، التي توفرها الوحدة، مفُيدةً للتطبيقات ولمطوري الوحدات البرمجيّة. يمكنك استيراد الوحدة والبدء باستخدامها عبر تنفيذ: const util = require('util');
util.callbackify(original) أُضيف في الإصدار: v8.2.0. original: <Function> دالة async غير متزامنة. القيم المُعادة: <Function> دالةً من نمط دوال رد النداء (callback function). يأخُذ التابِع الدالة async (أو دالة تُعيد كاِئنًا من النوع Promise) ويعيد دالةً تتبع نمط دالة رد النداء «الخطأ أولًا» (error-first callback)، مثل ...
Object.getOwnPropertyNames()
الدالة Object.getOwnPropertyNames() تُعيد مصفوفةً فيها جميع الخاصيات التابعة مباشرةً للكائن المعطي، بما في ذلك الخاصيات غير القابلة للإحصاء (non-enumerable) لكن باستثناء خاصيات الرموز Symbol. البنية العامة Object.getOwnPropertyNames(obj)
obj الكائن الذي نريد الحصول على جميع خاصياته. القيمة المعادة مصفوفة فيها سلاسل نصية لأسماء جميع الخاصيات التابعة مباشرةً للكائن المعطي. الوصف الدالة Object.getOwnPropertyNames() تُعيد مصفوفةً فيها جميع الخاصيات التابعة مباشرةً للكائن obj، وترتيب الخاصيات القابلة للإحصاء متوافقٌ مع الترتيب الذي تُظهِره حلقة التكرار for...in (أو الدالة Object.keys())؛ أما ترتيب الخاصيات غير القابلة ...
الوحدات في بايثون
يؤدي الخروج من مفسّر بايثون إلى فقدان جميع التعريفات (الدوال والمتغيّرات) التي جرى إنشاؤها سابقًا. ولهذا السبب يفضل استخدام محررات النصوص البرمجية في حال الرغبة بكتابة برامج وشيفرات طويلة، ثم إرسال هذه الشيفرة إلى المفسّر وتشغيلها فيه. وعندما يبدأ حجم البرنامج بالازدياد تدريجيًا تظهر الحاجة إلى تقسيم الشيفرة إلى ملفات متعددة لتسهيل العمل عليها. وقد يحتاج المبرمج في مرحلة ما إلى استخدام دالة خاصة به في برامج متعدّدة دون أن يضطر إلى نسخ تعريف تلك الدالة في كلّ برنامج. تقدّم ...
مقدمة إلى if في Bash
قد تحتاج إلى تحديد سلاسل إجراءات مختلفة داخل برامج الصدفة (shell scripts) بناءً على نجاح تنفيذ أمر أو فشله، وتأتي أداة if الشرطية من أجل مثل تلك الحالات، وأصغر بنية لغوية لأمر if هي التالية: if TEST-COMMANDS; then CONSEQUENT-COMMANDS; fi
تُنفَّذ قائمة أوامر الاختبار TEST-COMMANDS، ثم تُنفَّذ قائمة الأوامر التابعة CONSEQUENT-COMMANDS إن كانت حالة الإعادة لها هي صفر. وتكون حالة الإعادة هي حالة خروج آخر أمر تم تنفيذه، أو تكون صفرًا إن لم تتحقق أي حالة من أوامر الاختبار. يتضمن أمر ...
تنظيم البيانات (Organizing Data)
تساعد تقنيات إعادة التصميم هذه بالتعامل مع البيانات، وتبديل أصناف ذات وظائف كثيرة مكان الأنواع الأساسية (primitives). نتيجة أخرى مهمة نحصل عليها بتطبيق هذه التقنيات هي فك ارتباطات صنف مما يجعل الصنف قابلًا للنقل وإعادة الاستعمال. وهذه التقنيات هي: التغليف الداخلي للحقول (Self Encapsulate Fields) المشكلة: الوصول المباشر إلى الحقول الخاصّة داخل الصنف. الحل: إنشاء تابعي الجلب (getter) والضبط (setter) للحقل الخاصّ ومنع الوصول إليه إلا عبرهما. تبديل قيم البيانات إلى كائنات (Replace Data Values with Objects) المشكلة: وجود حقلٍ ...
المزخرفات في TypeScript
مقدمة مع إضافة الأصناف إلى TypeScript ونسخة ES6، فقد ظهرت كذلك حاجةٌ إلى ميزات إضافية لدعم تعديل الأصناف وعناصر الأصناف أو توصيفها (annotating). توفّر المزخرفات (Decorators) طريقة لإضافة توصيفات وبنية برمجة وصفيّة (meta-programming) لتصريحات الأصناف وعناصرها. المزخرفات حاليًّا اقتراح في المرحلة 2 (stage 2 proposal) في JavaScript وهي متوفّرة كميّزة تجريبيّة في TypeScript. ملاحظة: المزخرفات ميّزة تجريبيّة قد تتغيّر في النسخ الجديدة مستقبلًا. لتفعيل الدعم التجريبي للمزخرفات، عليك تفعيل خيار المترجم experimentalDecorators إما على سطر الأوامر أو في ملفّ tsconfig.json ...
الوحدة Console في Node.js
الاستقرار: 2-مستقر توِّفر الوحدة console طرفيَّة بسيطة لتنقيح الأخطاء تشبه طرفيَّة JavaScript التي توفِّرها متصفحات الويب. تنتج الوحدة عنصرين محدَّدين هما: الصنف Console مع توابعه مثل التوابع console.log()، و console.error()، و console.warn() التي يمكن استعمالها للكتابة على أي مجرى من مجاري Node.js. نسخة الكائن console العامَّة المضبوطة للكتابة على المجرى process.stdout والمجرى process.stderr، ويمكن استعمالها دون استدعاء require('console'). تحذير: لا تكون توابع الكائن console العام متزامنةً دومًا مثل واجهات المتصفح البرمجيَّة التي تشبهها، ولا غير متزامنةٍ دومًا مثل مجاري Node.js ...
إضافة العولمة في كوردوفا
تمكّن إضافة العولمة (cordova-plugin-globalization) من الحصول على معلومات حول الإعدادات المحلية واللغوية والزمنية للمستخدم. لاحظ الفرق بين الإعدادات المحلية (locale) وبين اللغة: الإعدادات المحلية تتحكم في كيفية عرض الأرقام والتواريخ والأوقات في منطقة معيّنةٍ، بينما تحدد "اللغة" لغةَ النصوص، بصرف النظر عن الإعدادات المحلية. يستخدم المطورون في كثير من الأحيان الإعدادات المحلية لضبط كلا الإعدادين، ولكن لا يوجد سبب يمنع المستخدم من تعيين اللغة إلى "العربية"، مع تعيين الإعدادات المحلية إلى "الفرنسية"، بحيث يتم عرض النص باللغة العربية، ولكن مع ...
تعريف الدوال في بايثون
تُعرَّف الدوال باستخدام الكلمة المفتاحية def يتبعها اسم الدالة ثم قائمة بالمعاملات محاطة بالأقواس. أما الكتلة الرئيسية للدالة فتبدأ في السطر التالي لسطر التعريف، ويجب أن تزاح بمقدار إزاحة واحدة. مثال >>> def fib(n): # دالة لإنشاء متسلسلة فابيوناتشي
... """Print a Fibonacci series up to n."""
... a, b = 0, 1
... while a < n:
... print(a, end=' ')
... ...
تعريف الدوال في بايثون
تُعرَّف الدوال باستخدام الكلمة المفتاحية def يتبعها اسم الدالة ثم قائمة بالمعاملات محاطة بالأقواس. أما الكتلة الرئيسية للدالة فتبدأ في السطر التالي لسطر التعريف، ويجب أن تزاح بمقدار إزاحة واحدة. مثال >>> def fib(n): # دالة لإنشاء متسلسلة فابيوناتشي
... """Print a Fibonacci series up to n."""
... a, b = 0, 1
... while a < n:
... print(a, end=' ')
... ...
تعريف الدوال في بايثون
تُعرَّف الدوال باستخدام الكلمة المفتاحية def يتبعها اسم الدالة ثم قائمة بالمعاملات محاطة بالأقواس. أما الكتلة الرئيسية للدالة فتبدأ في السطر التالي لسطر التعريف، ويجب أن تزاح بمقدار إزاحة واحدة. مثال >>> def fib(n): # دالة لإنشاء متسلسلة فابيوناتشي
... """Print a Fibonacci series up to n."""
... a, b = 0, 1
... while a < n:
... print(a, end=' ')
... ...
التحسينات في روبي
إن ميّزة الأصناف المفتوحة في لغة روبي تسمح لك بإعادة تعريف أو إضافة وظائف إلى أصناف معرّفة مسبقًا. وهذا ما يسمى بمصطلح "ترقيع القرد" (monkey patch). المشكلة هنا أنَّ تعديلات من هذا النوع تكون مرئيّة على المستوى العام (global)، وبالتالي جميع مستخدمي الصنف المرقّع قادرون على رؤية هذه التغييرات، ممّا قد يسبّب تأثيرات جانبيّة غير محسوبة أو حتى عطب في البرامج. تأتي التحسينات هنا لتقلّل أثر ترقيع القرد على مستخدمي الصنف الآخرين، إذ تقدّم طريقة لتوسيع الصنف محليًّا. وإليك مثال ...
التوابع في روبي
تتضمّن التوابع في لغة روبي الوظائف التي يقوم بها برنامجك. إليك هذا المثال لتعريف تابع بسيط: def one_plus_one
1 + 1
end
تعريف التابع يتكوّن من الكلمة المحجوزة def يتبعها اسم التابع، ثمّ جسم التابع، فالقيمة المعادة وفي النهاية الكلمة المحجوزة end. فعند تنفيذ التابع في المثال السابق، ستُعاد القيمة 2. هذا القسم سيغطّي تعريف التّوابع. ارجع إلى توثيق استدعاء التوابع لتتعرف على الصيغ المستخدمة لذلك الغرض. تسمية التوابع يمكن أن تستخدم لاسم التابع أحد المعاملات، وإلا فعليك أن تبتدئه بحرف أبجديّ أو ...
الإسناد في روبي
لكي نسند شيئًا في لغة روبي، نستخدم رمز المساواة =؛ ففي المثال التّالي، يُسنَد العدد 5 إلى المتغيّر v المحلّي: v = 5
فالإسناد يُنشئ متغيّرًا محلّيًا جديدًا إذا لم يكن قد عُرِّفَ من قبل. أسماء المتغيرات المحلية اسم المتغيّر المحلّي يجب أن يبدأ بحرف صغير من مجموعة المحارف US-ASCII أو من مجموعة المحارف التي تُمثَّل باستخدام ثمان بتات ثنائيّة. وبشكلٍ عام، فإنّ أسماء المتغيّرات المحلّية متوافقة مع US-ASCII كون الأزرار التي تستخدم لكتابتها موجودة في جميع لوحات المفاتيح. عمومًا، جميع ...
اختبار تطبيقات ريلز
يشمل هذا الدليل الآليّات المدمجة في ريلز لإجراء الاختبارت على التطبيقات. بعد قراءة هذا الدليل، ستتعلم: الاصطلاح المتعلّق باختبارات ريلز. كيفيّة كتابة كلٍّ من اختبارات الوحدة، الاختبارات الوظيفيّة، والاختبارات التكامليّة لتطبيقات ريلز. وغيرها من الطرق والإضافات الخاصّة بالاختبارات. ما الهدف من كتابة اختبارات لتطبيقات ريلز؟ يسهّل ريلز كتابة الاختبارات بشكل كبير، إذ أنّه يبدأ بهيكلة شيفرة الاختبار في الوقت الذي تُنشِئ فيه النّماذج ووحدات التحكّم. يمكّنك إجراء اختبارات ريلز من التأكّد من أداء الشيفرة وظيفتَها المطلوبة حتّى بعد إعادة تصميم ...
اختبارات التوكيد في Node.js
الاستقرار: 2-مستقر توفِّر الوحدة assert مجموعةً من اختبارات التوكيد البسيطة التي يمكن استعمالها للتأكد من الثوابت (invariants). يوجد وضعي توكيد هما: الوضع الصارم (strict mode)، والوضع الإرثي (legacy mode)؛ وينصح باستعمال الوضع الصارم فقط. للمزيد من المعلومات حول موازنات التساوي المستعملة، ارجع إلى دليل MDN حول موازنات التساوي والتشابه. الصنف assert.AssertionError أضيف في الإصدار v0.1.21. يتفرَّع هذا الصنف الفرعي من الصنف Error الذي يشير إلى فشل عمليَّة التوكيد. جميع الأخطاء التي ترميها الوحدة assert هي نسخةٌ من الصنف AssertError. new ...
خيارات سطر الأوامر في Node.js
يتوافر العديد من خيارات سطر الأوامر التي يمكن استعمالها مع Node.js. تُستعمَل هذه الخيارات في تنقيح أخطاء الشيفرة، والتحكم في كيفيَّة تنفيذ الشيفرة، وغيرها من الأمور المفيدة. يمكن عرض هذا التوثيق في الطرفيَّة عبر استعمال الأمر man node. البنية العامة node [options] [V8 options] [script.js | -e "script" | -] [--] [arguments]
node debug [script.js | -e "script" | <host>:<port>] …
node --v8-options
إنَّ تنفيذ node دون أيَّة وسائط يؤدي إلى بدئها مع الوحدة REPL. لمزيدٍ من المعلومات حول node debug، راجع رجاءً ...
الصنف TarFile في بايثون
وظيفة هذا الصنف هي قراءة ملفات الأرشيف من نوع tar والكتابة فيها. لا تستخدم هذا الصنف مباشرة، بل استخدم الدالة tarfile.open() عوضًا عنه. يقدّم كائن TarFile واجهة لملفات الأرشيف من نوع tar. يتكوّن أرشيف tar من تسلسل من الكتل، ويتكوّن عضو الأرشيف (الملفّ المخزّن) من كتلة الترويسة header block متبوعة بكتل البيانات. يمكن تخزين ملف معيّن في أرشيف tar عدّة مرات، ويُمثّل كل عضو في الأرشيف بواسطة كائن TarInfo (راجع قسم كائنات TarInfo للمزيد من التفاصيل). يمكن استخدام كائن TarFile ...
Python/stat
يُعرّف الصنف stat ثوابت وتوابع لمعالجة نتيجة استدعاء التوابع os.stat()وos.fstat() وos.lstat() وكذلك بطبيعة الحال فهو يعالج نتائج التابع Path.stat()، ولا يتم إنشاء كائنات منه، فجميع التوابع والثوابت يمكن الوصول إليها مباشرة من الصنف. توابع الصنف stat لكشف نوع الملفات التابع stat.S_ISDIR للكشف عن كون النمط مشيرًا إلى مجلد. التابع stat.S_ISCHR للكشف عن كون النمط مشيرًا إلى ملف character special device. التابع stat.S_ISBLK للكشف عن كون النمط مشيرًا إلى ملف block special device. التابع stat.S_ISREG للكشف عن كون النمط مشيرًا إلى ...
الدوال المضمنة في لغة Python
abs() القيمة المطلقة (absolute value) لعدد معيّن. all() القيمة True إن كانت جميع عناصر الكائن القابل للتكرار (iterable) المعطى تُساوي القيمة True أو إن كان الكائن القابل للتكرار فارغًا. any() القيمة True إن كان أحد عناصر الكائن القابل للتكرار (iterable) المعطى يساوي القيمة True أو إن كان الكائن القابل للتكرار فارغًا. ascii() تمثيل (representation) نصي لكائن مُعيّنٍ يُمكن طباعته. bin() تُحوّل عددًا صحيحًا (integer number) إلى سلسلةٍ نصيّةٍ ثنائيّة (binary string) مسبوقة بالمقطع النّصيّ "0b". bool() قيمة منطقيّة تكون إمّا ...
تثبيت روبي على مختلف المنصات
توجد عدة طرق لتنزيل وتثبيت روبي على كل منصة وهي: في لينكس (والأنظمة الشبيه بيونكس)، تستطيع استعمال نظام مدير الحزم لتوزيعتك (الطريقة الأسهل) أو أية أداة من طرف ثالث (مثل rbenv و RVM). على أي حال، إصدار روبي المثبت عن طريق نظام مدير الحزم قد لا يكون هو الإصدار الأحدث، لذا انتبه لهذا الأمر. في macOS، يمكنك استعمال مدير الحزم أو أداة من طرف ثالث (مثل rbenv و RVM). في ويندوز، تستطيع استخدام RubyInstaller. يمكنك باستعمال المثبِّت هذا تثبيت إصدار ...
معلومات إضافية عن روبي
هل تساءلت يومًا لماذا روبي مشهورة إلى هذا الحد؟ يقول المعجبون بها أنَّها لغة جميلة وذات بنية متقنة. ويقولون أيضًا أنَّها لغة عملية وسهلة الاستعمال. فماذا تعطي وبماذا تتمتع؟ مثالية منشئ لغة روبي حققت لغة روبي توازنًا دقيقًا بين لغات البرمجة. عمل منشئ هذا اللغة - الياباني Yukihiro “Matz” Matsumoto - على دمج أجزاءٍ من لغات البرمجة المفضلة لديه (Perl، و Smalltalk، و Eiffel، و Ada، و Lisp) لإنشاء لغة جديدة تحقق التوازن بين البرمجة الوظيفية (functional programming) والبرمجة الأمرية ...
التابع String.sub في روبي
يعيد التابع sub نسخة من السلسلة النصية التي استدعي معها مع تبديل قيمة محدَّدة مع أول تطابق للنمط المعطى. البنية العامة sub(pattern, replacement) → new_str
sub(pattern, hash) → new_str
sub(pattern) {|match| block } → new_str
إن أعطيت كتلة block إلى التابع، فستُمرَّر السلسلة الحالية المتطابقة إليها وستعيَّن قيم متغيرات مثل $1، و $2، و $`، و $&، و $' بشكل مناسب. ستحل القيم التي تعيدها الكتلة مكان القيمة المتطابقة في كل استدعاء. المعاملات pattern يكون عادةً تعبيرًا نمطيًّا. إن كان سلسلة نصية، فستُفسَّر أية محارف ...
التابع Numeric.arg في روبي
يعيد التابع arg القيمة 0 إن كان العدد الذي استُدعي معه موجبًا، أو القيمة pi خلاف ذلك. البنية العامة arg → 0 or float
القيمة المُعادة تعاد القيمة 0 إن كانت القيمة المعطاة موجبة، أو pi خلاف ذلك. انظر أيضا التابع angle: يعيد القيمة 0 إن كان العدد الذي استُدعي معه موجبًا، أو القيمة pi خلاف ذلك. التابع ceil: يعيد أصغر عدد أكبر من أو يساوي العدد المعطى وبدقة محدَّدة. مصادر قسم التابع arg في الصنف Numeric في توثيق روبي الرسمي.
التابع Thread.keys في روبي
يُعيد التابع keys مصفوفة من أسماء المتغيرات محلية الليف (fiber-local variables) على هيئة رموز. البنية العامة keys→ array
القيمة المعادة تعاد مصفوفة من أسماء المتغيرات محلية الليف. أمثلة مثال على استخدام التابع keys: thr = Thread.new do
Thread.current[:cat] = 'meow'
Thread.current["dog"] = 'woof'
end
thr.join #=> #<Thread:0x401b3f10 dead>
thr.keys #=> [:dog, :cat]
انظر أيضًا التابع key?: يتحقق إن كانت السلسلة النصية أو الرمز المعطى موجود على هيئة متغير محلي الليف (fiber-local variable). مصادر قسم التابع keys في الصنف Thread ...
التابع Array.sort! في روبي
يرتب التابع sort! عناصر المصفوفة التي استُدعيت معه. ستجرى عملية الموازنة بين عناصر المصفوفة المراد ترتيبها باستعمال المعامل <=> أو باستعمال كتلة برمجية محددة. إن استعملت الكتلة البرمجية block في ترتيب العناصر، فيجب أن تجري موازنة بين العنصر a والعنصر b وتعيد عددًا سالبًا إن كان b أكبر من a، أو العدد 0 إن كانا متساويين، أو عددًا موجبًا إن كان b أصغر من a. مع ذلك، لن تكون النتيجة مضمونة مئة بالمئة، إذ لا يمكن التنبؤ بترتيب العناصر المتساوية ...
التابع =Process.uid في روبي
يضبط التابع uid عند استدعائه بالشكل uid= user المُعرِّف الحقيقي للمستخدم المالك للعملية الحالية إلى القيمة user. هذا التابع غير متاح على جميع المنصات. البنية العامة uid= user → numeric
القيم المعادة تعاد القيمة user بعد تعيينها إلى المُعرِّف الحقيقي للمستخدم المالك للعملية الحالية. أمثلة مثال على استعمال التابع uid: Process.setproctitle('myapp: worker #%d' % worker_id)
انظر أيضًا التابع uid: يعيد المُعرِّف الحقيقي للمستخدم المالك للعملية الحالية. التابع gid=: يضبط عند استدعائه بالشكل gid= integer مُعرِّف المجموعة المالكة للعملية الحالية إلى القيمة ...
التابع ARGF.inspect() في روبي
يعد التابع inspect() اسمًا بديلًا للتابع to_s. انظر أيضًا التابع to_s: يعيد القيمة "ARGF". مصادر قسم التابع ARGF.inspect() في الصنف ARGF في توثيق روبي الرسمي.
الصنف Data في روبي
الصنف Data هو صنف مهمل. كان يعدُّ الصنف الأساس لملحقات C التي تستعمل Data_Make_Struct أو Data_Wrap_Struct. مصادر صفحة الصنف Data في توثيق روبي الرسمي.
التابع InstructionSequence.of في روبي
يُعيد التابع of سلسلة التعليمات التي تحوي الكائن Proc أو Method المعطى. البنية العامة of(p1)
أمثلة مثال على استعمال التابع of باستخدام irb: # a proc
> p = proc { num = 1 + 2 }
> RubyVM::InstructionSequence.of(p)
> #=> <RubyVM::InstructionSequence:block in irb_binding@(irb)>
# for a method
> def foo(bar); puts bar; end
> RubyVM::InstructionSequence.of(method(:foo))
> #=> <RubyVM::InstructionSequence:foo@(irb)>
أو باستخدام compile_file: # /tmp/iseq_of.rb
def hello
puts "hello, world"
end
$a_global_proc = proc { str = 'a' + 'b' }
# in irb
> require '/tmp/iseq_of.rb'
# first the method hello
> RubyVM::InstructionSequence.of(method(:hello))
> #=> ...
التابع Float.prev_float في روبي
يعيد التابع prev_float العدد العشري الذي يسبق العدد العشري الذي استُدعي معه. يعيد استدعاء التابع prev_float مع القيمة ((-Float::MAX والقيمة (Float::INFINITY-) القيمة الثابتة -Float::INFINITY. ويعيد استدعاء التابع بالشكل Float::NAN.prev_float القيمة Float::NAN. البنية العامة prev_float → float
القيمة المعادة يعاد العدد العشري السابق للعدد العشري المعطى. أمثلة مثال على استخدام التابع prev_float: 0.01.prev_float #=> 0.009999999999999998
1.0.prev_float #=> 0.9999999999999999
100.0.prev_float #=> 99.99999999999999
0.01 - 0.01.prev_float #=> 1.734723475976807e-18
1.0 - 1.0.prev_float ...
التابع GC.disable في روبي
يعطِّل التابع disable جمع البيانات المهملة، ويعيد القيمة true إذا كان جمع البيانات المهملة مُعطَّلًا مسبقًا. البنية العامة disable → true or false
القيمة المعادة تعاد القيمة true إذا كان جمع البيانات المهملة مُعطَّلًا مسبقًا. خلا ذلك، تعاد القيمة false. أمثلة مثال على استعمال التابع disable: GC.disable #=> false
GC.disable #=> true
انظر أيضا التابع enable: يفعِّل جمع البيانات المهملة، ويعيد القيمة true إذا كان جمع البيانات المهملة مُعطَّلًا مسبقًا. مصادر قسم التابع disable في الصنف GC في توثيق ...
التابع Dir.delete في روبي
يحذف التابع delete مجلدًا محدَّدًا. سيُطلق خطأ من صنف فرعي من SystemCallError في حال لم يكن المجلد المراد حذفه موجودًا. البنية العامة delete( string ) → 0
المعاملات string اسم المجلد المُراد حذفه. انظر أيضًا التابع chdir : يغيِّر مجلد العمل (working directory) الحالي للعملية إلى مجلد محدَّد. التابع rmdir :يحذف مجلدًا محدَّدًا. مصادر قسم التابع delete في الصنف Dir في توثيق روبي الرسمي.
الصنف FrozenError في روبي
يرمى الاستثناء FrozenError عند محاولة تعديل كائن مجمد. [1, 2, 3].freeze << 4
عند تنفيذ هذه الشيفرة، يرمى الاستثناء: FrozenError: can't modify frozen Array
انظر أيضًا التابع freeze: يجمد السلسلة النصية التي استُدعيت معه، أي يجعلها غير قابلة للتعديل. مصادر صفحة الصنف FrozenError في توثيق روبي الرسمي.
التابع ARGF.printf في روبي
يطبع التابع printf الكائن أو الكائنات الممرَّرة إليه على المجرى ios (اختصارًا للعبارة Input Output Stream) بعد تنسيقها بشكل معين. للمزيد من المعلومات حول المعاملات المستعملة في عملية التنسيق (أي المستعملة مع الوسيط format_string)، ارجع إلى صفحة التابع Kernel.sprintf. البنية العامة printf(format_string [, obj, ...]) → nil
القيم المعادة تعاد القيمة nil. أمثلة مثالٌ على استخدام التابع printf: printf("%s, the sale price is $%f.\n", name, sale_price)
...
التابع Thread.thread_variable? في روبي
يتحقق التابع thread_variable? إن كانت السلسلة النصية أو الرمز المعطى موجودًا كمتغير محلي للمهمة الفرعية (thread-local variable). لاحظ أنَّ هذه المتغيرات ليست متغيرات محلية الألياف (fiber local variables). يرجى الاطلاع على صفحة المعامل [] والتابع thread_variable_get لمزيد من التفاصيل. البنية العامة thread_variable?(key)→ true or false
المعاملات key سلسلة نصية أو رمز. القيمة المعادة تعاد القيمة true إن كانت السلسلة النصية أو الرمز key المعطى موجودًا كمتغير محلي للمهمة الفرعية (thread-local variable)، وإلا فستعاد القيمة false. أمثلة مثال على استخدام التابع thread_variable?: ...
الصنف ConditionVariable في روبي
توسع كائنات الصنف ConditionVariable عمل الصنف Mutex. فمن الممكن باستخدام المتغيرات الشرطية إيقاف مهمة حرجة (critical section) في أثناء تنفيذها إلى حين إتاحة مورد ما. إليك المثال التالي: mutex = Mutex.new
resource = ConditionVariable.new
a = Thread.new {
mutex.synchronize {
# Thread 'a' now needs the resource
resource.wait(mutex)
# 'a' can now have the resource
}
}
b = Thread.new {
mutex.synchronize {
...
الصنف TracePoint في روبي
يوفر الصنف TracePoint وظائف Kernel.set_trace_func على شكل واجهة برمجية كائنية (Object-Oriented API). مثال يمكننا استخدام المتعقبات (كائنات الصنف TracePoint) لجمع المعلومات بخصوص الاستثناءات: trace = TracePoint.new(:raise) do |tp|
p [tp.lineno, tp.event, tp.raised_exception]
end
#=> #<TracePoint:disabled>
trace.enable
#=> false
0 / 0
#=> [5, :raise, #<ZeroDivisionError: divided by 0>]
الأحداث إذا لم تحدِّد نوع الأحداث التي تريد الاستماع إليها، فسيشمل المتعقب TracePoint جميع الأحداث المتاحة. ملحوظة: لا تعتمد على مجموعة الأحداث الحالية، إذ أن هذه القائمة عرضةٌ للتغيير. بدلًا من ذلك، يُنصَح بتحديد نوع ...
التابع Numeric.truncate في روبي
يعيد التابع truncate العدد الذي استُدعي معه بعد اقتطاع المنازل العشرية منه بمقدار محدَّد. ينفذ الصنف Numeric هذا عن طريق تحويل قيمة العدد إلى النوع Float ثم يستدعي Float.truncate. البنية العامة truncate([ndigits]) → integer or float
المعاملات ndigits عدد يمثل دقة التقريب. القيمة الافتراضية هي: 0. القيمة المعادة يعاد عدد صحيح أو عشري يمثِّل العدد المعطى بعد اقتطاع المنازل العشرية منه بدقة ndigits. انظر أيضا التابع ceil: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد الذي استُدعي معه ...
معالجة الاستثناءات في روبي
يتمّ التعامل مع الاستثناءات بعد الكلمة rescue في الكتلة begin/end: begin
# الشيفرة التي قد تسبب ظهور استثناء برمجي
rescue
# معالجة الاستثناء
end
إذا كنت ضمن تابع، فلست بحاجة لاستخدام begin و end إلا إذا كنت ترغب بحدّ النّطاق الخاص بالاستثناء الذي ترغب بمعالجته: def my_method
# ...
rescue
# ...
end
نفس الأمر يطبّق في الأصناف (classes) والوحدات (modules). يمكنك إسناد استثناء إلى متغيّر محليّ باستخدام الرمز => متبوعًا باسم المتغيّر، وذلك في نهاية السطر الخاص بالكلمة rescue: begin
# ...
rescue => exception
warn exception.message
raise # كرر ظهور ...
التابع ARGF.chars() في روبي
التابع ()chars هو اسم بديل مهمل (deprecated) للتابع each_char. انظر أيضًا التابع each_char: يعيد قيمة قابلة للعد (enumerator) تتكرر (Iterate) على كل قيمة من النوع char في الملفات الموجودة في ARGV. مصادر قسم التابع chars() في الصنف ARGF في توثيق روبي الرسمي.
التابع SizedQueue.new في روبي
ينشئ التابع new طابورًا ذا طول ثابت، مع حد أقصى لحجمه. البنية العامة new(max)
المعاملات max عدد يمثل الحد الأقصى لحجم الطابور المراد إنشاؤه. القيمة المعادة يعاد طابورٌ ذو طول ثابت يساوي إلى max. انظر أيضا المعامل <<: يضيف كائنات إلى الطابور المعطى. التابع close: يغلق الطابور الذي استدعي معه. مصادر قسم التابع new في الصنف SizedQueue في توثيق روبي الرسمي.
التابع FileTest.writable_real? في روبي
يعيد التابع writable_real? إن كان ملفٌ ما قابلًا للكتابة من طرف مُعرِّف المستخدم والمجموعة الحقيقي للعملية الحالية. اطلع على توثيق الدالة access(3). البنية العامة writable_real?(file_name) → true or false
المعاملات file_name اسم الملف المراد التحقق منه. القيمة المعادة تعاد القيمة true إن كان ملفٌ ما قابلًا للقراءة من طرف مُعرِّف المستخدم والمجموعة الحقيقي للعملية الحالية. خلا ذلك، تعاد القيمة false. انظر أيضًا التابع owned?: يتحقق إن كان ملفٌ ما موجودًا وكان مالك هذا الملف هو نفسه المعرِّف الفعلي للمستخدم المالك للعملية التي استدعته. التابع readable_real?: يتحقق إن كان ...
التابع Range.member? في روبي
يتحقق التابع member? إن كان كائنٌ ما عنصرًا من المجال الذي استُدعي معه. إن كان عنصرا البداية والنهاية عددين، فستتم المقارنة وفقًا لمقدار (magnitude) القيم. البنية العامة member?(obj) → true or false
المعاملات obj الكائن المراد التحقق من كونه واقعًا في المجال المعطى. القيمة المعادة تعاد القيمة true إن كان obj عنصرًا من المجال الذي استُدعي معه، أو تعاد القيمة false خلاف ذلك. أمثلة مثال على استخدام التابع member?: ("a".."z").include?("g") #=> true
("a".."z").include?("A") #=> false
("a".."z").include?("cc") ...
التابع Object.public_methods في روبي
يُعيد التابع public_methods قائمةً بالتوابع العامَّة (public methods) التي يمتلك الكائن الذي استدعي معه الوصول إليها. إذا مُرِّرت القيمة false إلى التابع، فستحتوي القائمة توابع الكائن المستقبل (receiver) فقط. البنية العامة public_methods(all=true) → array
المعاملات all معامل اختياري يحدِّد التوابع المعادة. يأخذ هذا المعامل القيمة true (افتراضيًا)، أو القيمة false. القيم المعادة تُعاد قائمةٌ بالتوابع العامة التي يمتلك الكائن المعطى الوصول إليها إذا لم يعطَ الكائن all، أو ستُعاد قائمة تحتوي توابع الكائن المستقبل (receiver) فقط إذا أعطي المعامل all ...
التابع Integer.floor في روبي
يعيد التابع floor أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة (precision) تساوي العدد المعطى (القيمة الابتدائية هي 0). البنية العامة floor([ndigits]) → integer or float
المعاملات ndigits عدد يحدد الدقة. إذا كانت الدقة سالبة، فإنّ القيمة المعادة ستكون عددًا صحيحًا مع ndigits.abs صفر إضافي على الأقل. القيمة المعادة يعيد التابع floor أكبر عدد من الأعداد الأصغر من أو يساوي قيمة العدد الذي استُدعي معه وبدقة تساوي ndigits رقم عشري. إذا كانت الدقة سالبة، ...
التابع Marshal.dump في روبي
يُسلسل (Serializes) التابع dump الكائن المعطى وجميع الكائنات المنحدرة منه (descendant objects). في حال تمرير كائن من النوع IO، فستُكتب البيانات المُسَلسلة فيه، وإلا فستُعاد البيانات كسلسلة نصية. البنية العامة dump( obj [, anIO] , limit=-1 ) → anIO
في حال تمرير المعامل limit، فسيقتصر التابع dump على سَلسَلة الكائنات الفرعية حتى العمق المحدد. إذا كان limit سالبًا، لن يكون هناك أي تحقق من للعمق. لا يمكن للتابع Marshal تفريغ (dump) الكائنات التالية: الوحدات أو الأصناف المجهولة (anonymous Class/Module). الكائنات المرتبطة بالنظام (مثل ...
التابع File.identical? في روبي
يتحقق التابع identical? إن كان الملفان المعطيان متماثلين تمامًا. البنية العامة identical?(file_1, file_2) → true or false
المعاملات file_1 الملف الأول المراد التحقق من مطابقته للملف file_2. file_2 الملف الثاني المراد التحقق من مطابقته للملف file_1. القيمة المعادة تعاد القيمة true إن كان الملف file_1 مطابقًا ومماثلًا للملف file_1. خلا ذلك، تعاد القيمة false. أمثلة مثال على استعمال التابع identical?: open("a", "w") {}
p File.identical?("a", "a") #=> true
p File.identical?("a", "./a") #=> true
File.link("a", "b")
p File.identical?("a", ...
التابع Rational.rationalize في روبي
يُعيد التابع rationalize تقريبًا مبسطًا لقيمة العدد الجذري الذي استُدعي معه في حال إعطاء الوسيط الاختياري eps، أو يعيد العدد الجذري نفسه إن لم يمُرَّر إليه أي شيء. البنية العامة rationalize → self
rationalize(eps) → rational
المعاملات eps مقدار التقريب. القيمة المعادة يعاد تقريبٌ مبسطٌ لقيمة العدد الجذري المعطى في حال إعطاء الوسيط الاختياري eps (النتيجة المعادة ينبغي أن تحقق المتراجحة rat-|eps| <= result <= rat+|eps|)، أو يعاد العدد الجذري نفسه إن لم يمُرَّر المعامل eps. أمثلة مثال على ...
التابع Thread.start في روبي
يشبه التابع start التابع new بشكل أساسي إلا أنه عند اشتقاق صنف فرعي (subclassed) من Thread، فإنَّ استدعاء start في ذلك الصنف الفرعي لن يستدعي تابع الصنف الفرعي initialize. البنية العامة start([args]*) {|args| block }→ thread
المعاملات args وسائط تُمرر إلى الكتلة. القيمة المعادة يعاد كائن من النوع Thread. انظر أيضًا التابع stop: يوقف تنفيذ المهمة الفرعية الحالية. مصادر قسم التابع start في الصنف Thread في توثيق روبي الرسمي.
التابع IO.lines في روبي
يعدُّ التابع lines اسمًا بديلًا مهملًا للتابع each_line. البنية العامة lines(*args)
انظر أيضًا التابع each_line: ينفذ الكتلة المعطاة على كل سطر في المجرى الذي استدعي معه. مصادر قسم التابع lines في الصنف IO في توثيق روبي الرسمي.
التابع Array.rotate! في روبي
يُدوّر التابع rotate! عناصر المصفوفة التي استُدعيت معه ليكون العنصر ذو الفهرس الممرَّر إليها هو العنصر الأول. إن كان العدد الممرَّر إليها سالبًا، فسيُدوّر التابع rotate! المصفوفة في الاتجاه المعاكس، إذ يُحسَب موضع العنصر بدءًا من نهاية المصفوفة فسيكون فهرس العنصر الأخير هو -1. البنية العامة rotate!(count=1) → ary
المعاملات count عددٌ صحيحٌ يمثل فهرس العنصر الذي يراد أن يصبح أول عنصرٍ في المصفوفة المعطاة. القيم المعادة تعاد المصفوفة نفسها المعطاة بعد إزاحة (تدوير) عناصرها ليكون العنصر ذو الفهرس count ...
التابع Enumerable.to_h في روبي
يحول التابع to_h الكائن القابل للتعداد المعطى إلى كائن من النوع Hash. البنية العامة to_h(*args) → hash
المعاملات args الوسائط المراد استعمالها في عملية التحويل. القيمة المعادة يعاد كائن جديد من النوع Hash يحوي قائمة من الأزواج مفتاح/قيمة الناتجة عن تحويل الكائن القابل للتعداد المعطى. أمثلة مثال على استعمال التابع to_h: %i[hello world].each_with_index.to_h
# => {:hello => 0, :world => 1}
انظر أيضًا التابع to_a: يحول الكائن القابل للتعداد إلى مصفوفة. مصادر قسم التابع to_h في الصنف Enumerable في توثيق روبي ...
التابع String.downcase في روبي
يعيد التابع downcase نسخةً من السلسلة النصية التي استدعي معها مع استبدال الحروف الكبيرة بنظائرها الصغيرة. استبدال الحروف بحروف أخرى يعتمد على المعامل المُمرَّر إلى التابع، وعلى ترميز السلسلة النصية المعطاة. البنية العامة downcase → new_str
downcase([options]) → new_str
المعاملات options يُستخدم للتحكم بعملية التبديل ويأخذ إحدى القيم التالية: الخيار الوصف بدون خيار يمثِّل ربط (mapping) محارف اليونيكود (Unicode) الكاملة ذات الحالة الكبيرة والصغيرة مع بعضها لتبديلها، وهذا مناسب لأغلب اللغات (اطلع على الخيار turkic: والخيار lithuanian: في الأسفل، إذ تعد ...
التابع ARGF.getc في روبي
يجلب التابع getc المحرف التالي من المجرى ARGF. يعامل المجرى ARGF الملفات المُمرَّرة في سطر الأوامر كما لو كانت ملفًا واحدًا يتألَّف من جميع تلك الملفات؛ أي يتعاقب بعضها خلف بعض. بناءً على ذلك، يؤدي استدعاء التابع getc مرة أخرى بعد جلب المحرف الأخير من الملف الأول مثلًا إلى جلب المحرف الأول من الملف الثاني، وهلم جرًّا. البنية العامة getc → String or nil
القيم المعادة تعاد سلسلة نصية تحوي المحرف التالي الذي يُقرَأ من المجرى ARGF، أو تعاد القيمة ...
التابع IO.autoclose? في روبي
يتحقق التابع autoclose? إن كان واصف الملف الأساسي لمجرى معين سيُغلق تلقائيًا عند الانتهاء منه. البنية العامة autoclose?→ true or false
القيمة المعادة تعاد القيمة true إن كان واصف الملف الأساسي للمجرى المعطى سيُغلق تلقائيًا عند الانتهاء منه، وإلا ستعاد القيمة false. انظر أيضًا التابع autoclose: يُعيّن عند استدعائه بالشكل autoclose = bool قيمة راية الإغلاق التلقائي (auto-close flag) إلى القيمة bool المنطقية. التابع close: يغلق مجرى د/خ، ويرسل (flushes) أي كتابات مُعلّقة إلى نظام التشغيل. التابع closed?: يتحقق إن كان مجرى د/خ ...
الصنف NoMethodError في روبي
يُطلق الاستثناء NoMethodError عند استدعاء تابعٍ مع مستقبِل (receiver) غير مُعرَّف فيه مع فشل الاستجابة للتابع method_missing. "hello".to_ary
سيُطلق الاستثناء NoMethodError عند تنيفذ الشيفرة السابقة بالشكل: NoMethodError: undefined method `to_ary' for "hello":String
توابع الصنف العامة (Public Class Methods) new ينشئ استثناءً من النوع NoMethodError للتابع ذي الاسم المعطى مع الوسائط المُمرَّرة. توابع النسخة العامة (Public Instance Methods) args يعيد الوسائط التي تم تمريرها كمعامل ثالث إلى الباني new. ?private_call مصادر قسم الصنف NoMethodErrorفي توثيق روبي الرسمي.
عرض (100 السابقة | 100 التالية) (20 | 50 | 100 | 250 | 500).