التابع IO.reopen‎ في روبي

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث

يعيد التابع reopen ربط المجرى الذي استُدعي معه مع مجرى آخر جديد أو موجود مسبقًا. قد يؤدي هذا إلى تغيير الصنف الفعلي لهذا المجرى ديناميكيًا.

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

reopen(other_IO) ios
reopen(path, mode_str) ios

المعاملات

other_IO‎

كائن من النوع IO يمثِّل مجرى موجود مسبقًا يراد ربطه بالمجرى المعطى.

path‎

مسار يشير إلى مجرى جديد لفتحه من أجل ربطه بالمجرى المعطى.

mode_str‎

سلسلة نصية تمثل وضعية الفتح. اطلع على صفحة التابع new للمزيد حول أوضاع الفتح.

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

يعاد المجرى المعطى بعد إعادة ربطه بالمجرى other_IO أو المجرى الجديد ذي المسار path.

أمثلة

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

f1 = File.new("testfile")
f2 = File.new("testfile")
f2.readlines[0]   #=> "This is line one\n"
f2.reopen(f1)     #=> #<File:testfile>
f2.readlines[0]   #=> "This is line one\n"‎

انظر أيضًا

  • التابع open: يشبه التابعَ new تمامًا عند استدعائه دون كتلة، أو يُمرّر الكائن IO الذي جرى إنشاؤه كوسيط إلى الكتلة المعطاة ثم يعيد الناتج الذي تعيده الكتلة.
  • التابع pipe: ينشئ زوجًا من طرفي أنبوب (pipe endpoints) متصلين ببعضهما بعضًا ثم يعيدهما على هيئة مصفوفة من الكائنات IO.
  • التابع popen: ينفذ الأمر المعطى كعملية فرعية (subprocess) مع توصيل المجرَيَين القياسيين للدخل والخرج للعملية الفرعية مع المجرى IO المُعاد.

مصادر