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

من موسوعة حسوب
< Ruby‏ | IO
مراجعة 12:26، 23 ديسمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (تدقيق)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يعيد التابع ungetc دفع محرف واحد (الذي مُرِّر إليه) إلى المجرى الذي استُدعي معه، بحيث تعيده القراءة التالية من المخزن المؤقت (buffer).

لا يمكنك أن تدفع إلا محرفًا واحدًا فقط قبل عملية القراءة اللاحقة (أي لن تتمكن من قراءة إلا آخر محرف من المحارف التي أرجعتها إلى المجرى).

ليس للتابع ungetc أي تأثير مع القراءات غير التخزينية (unbuffered reads) مثل sysread.

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

ungetc(string) nil

المعاملات

string‎

سلسلة نصية تحوي المحرف المراد إرجاعه إلى المجرى.

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

تعاد القيمة nil بعد تنفيذ العملية.

أمثلة

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

f = File.new("testfile")   #=> #<File:testfile>
c = f.getc                 #=> "8"
f.ungetc(c)                #=> nil
f.getc                     #=> "8"‎

انظر أيضًا

  • التابع getc: يجلب محرفًا واحدًا من المجرى الذي استدعي معه.
  • التابع putc: يكتب المحرف المُمرَّر إليه في المجرى الذي استدعي معه.
  • التابع ungetbyte: يعيد دفع (pushes) البايتات (الممررة كمعامل إليه) إلى المجرى الذي استُدعي معه، بحيث تعيدها القراءة التالية من المخزن المؤقت (buffer) لهذا المجرى. 

مصادر