الفرق بين المراجعتين لصفحة: «Ruby/IO/ungetc»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط تدقيق |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby IO]] | [[تصنيف: Ruby IO]] | ||
يعيد التابع <code>ungetc</code> دفع محرف واحد (الذي مُرِّر إليه) إلى [[Ruby/IO|المجرى]] الذي استُدعي معه، بحيث تعيده القراءة التالية من المخزن المؤقت (buffer). | |||
لا يمكنك أن تدفع إلا | لا يمكنك أن تدفع إلا محرفًا واحدًا فقط قبل عملية القراءة اللاحقة (أي لن تتمكن من قراءة إلا آخر محرف من المحارف التي أرجعتها إلى المجرى). | ||
ليس | ليس للتابع <code>ungetc</code> أي تأثير مع القراءات غير التخزينية (unbuffered reads) مثل <code>[[Ruby/IO/sysread|sysread]]</code>. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">ungetc(string)→ nil</syntaxhighlight> | <syntaxhighlight lang="ruby">ungetc(string)→ nil</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
===<code>string</code>=== | ===<code>string</code>=== | ||
[[Ruby/String|سلسلة نصية]] | [[Ruby/String|سلسلة نصية]] تحوي المحرف المراد إرجاعه إلى المجرى. | ||
==القيمة | ==القيمة المعادة== | ||
تعاد القيمة <code>nil</code> بعد تنفيذ العملية. | |||
==أمثلة== | ==أمثلة== | ||
سطر 22: | سطر 22: | ||
f.ungetc(c) #=> nil | f.ungetc(c) #=> nil | ||
f.getc #=> "8"</syntaxhighlight> | f.getc #=> "8"</syntaxhighlight> | ||
==انظر | ==انظر أيضًا== | ||
* التابع <code>[[Ruby/IO/ungetbyte|ungetbyte]]</code>: | * التابع [[Ruby/IO/getc|<code>getc</code>]]: يجلب محرفًا واحدًا من المجرى الذي استدعي معه. | ||
* التابع [[Ruby/IO/putc|<code>putc</code>]]: يكتب المحرف المُمرَّر إليه في المجرى الذي استدعي معه. | |||
* التابع <code>[[Ruby/IO/ungetbyte|ungetbyte]]</code>: يعيد دفع (pushes) البايتات (الممررة كمعامل إليه) إلى [[Ruby/IO|المجرى]] الذي استُدعي معه، بحيث تعيدها القراءة التالية من المخزن المؤقت (buffer) لهذا المجرى. | |||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-ungetc قسم | *[http://ruby-doc.org/core-2.5.1/IO.html#method-i-ungetc قسم التابع ungetc في الصنف 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) لهذا المجرى.