الفرق بين المراجعتين لصفحة: «Ruby/IO/try convert»

من موسوعة حسوب
< Ruby‏ | IO
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>try_convert‎</code> الخاص بالصنف <code>IO</code> في روبي}}</noinclude> تصنيف: Ruby تصن...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby IO]]
[[تصنيف: Ruby IO]]
يحاول التابع <code>try_convert</code> تحويل الوسيط <code>obj</code> (انظر فقرة البنية العامة) إلى [[Ruby/IO|مجرى د/خ]] (<code>[[Ruby/IO|IO]]</code>)، باستخدام التابع <code>[[Ruby/IO/to_io|#to_io]]</code>. تم يعيد [[Ruby/IO|مجرى د/خ]] <code>[[Ruby/IO|IO]]</code> المُحوّل، أو يعيد <code>nil</code> إذا تعذر تحويل <code>obj</code> لأي سبب من الأسباب.
يحاول التابع <code>try_convert</code> تحويل الوسيط <code>obj</code> (انظر فقرة البنية العامة) إلى [[Ruby/IO|مجرى د/خ]] باستخدام التابع <code>[[Ruby/IO/to_io|to_io]]</code>. تم يعيد [[Ruby/IO|المجرى]] المُحوّل، أو يعيد <code>nil</code> إذا تعذر تحويل <code>obj</code> لأي سبب من الأسباب.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">try_convert(obj)  → io or nil‎</syntaxhighlight>
<syntaxhighlight lang="ruby">try_convert(obj)  → io or nil‎</syntaxhighlight>
==المعاملات==
==المعاملات==
===<code>obj‎</code>===
===<code>obj‎</code>===
كائن.
==القيمة المُعادة==
==القيمة المُعادة==
يعيد التابع <code>try_convert</code>  [[Ruby/IO|المجرى]]  المُحوّل، أو يعيد <code>nil</code> إذا تعذر تحويل <code>obj</code> لأي سبب من الأسباب.
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>try_convert‎</code>:
مثال على استخدام التابع <code>try_convert‎</code>:
سطر 18: سطر 22:
IO.try_convert(z)            #=> #<File:/tmp/zz.gz>‎</syntaxhighlight>
IO.try_convert(z)            #=> #<File:/tmp/zz.gz>‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/IO/sysopen|sysopen]]</code>: يفتح التابع <code>sysopen</code> المسار المحدد، ثم يعيد واصف الملف الأساسي ك[[Ruby/Integer|عدد صحيح]] <code>[[Ruby/Integer|Integer]]</code>.
* التابع <code>[[Ruby/IO/new|new]]</code>: يُعيد التابع <code>new</code> كائنًا جديدًا من النوع <code>IO</code> 
* التابع <code>[[Ruby/IO/write|write]]</code>: يفتح التابع <code>write</code> الملف، ويتموضع (seeks) اختياريا عند الإزاحة <code>offset</code> المعطاة (انظر فقرة البنية العامة)، ثم يكتب <code>string</code>، ثم يعيد طول [[Ruby/String|السلسلة النصية]] المكتوبة. يضمن التابع <code>write</code> أن يُغلق الملف قبل العودة. إذا لم يتم إعطاء <code>offset</code> في وضع الكتابة (write mode)، سيتم اقتطاع الملف. خلاف ذلك، لا يُقتطع.
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-c-try_convert قسم  التابع try_convert‎ في الصنف IO‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/IO.html#method-c-try_convert قسم  التابع try_convert‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 01:31، 13 نوفمبر 2018

يحاول التابع try_convert تحويل الوسيط obj (انظر فقرة البنية العامة) إلى مجرى د/خ باستخدام التابع to_io. تم يعيد المجرى المُحوّل، أو يعيد nil إذا تعذر تحويل obj لأي سبب من الأسباب.

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

try_convert(obj)   io or nil

المعاملات

obj‎

كائن.

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

يعيد التابع try_convert المجرى المُحوّل، أو يعيد nil إذا تعذر تحويل obj لأي سبب من الأسباب.

أمثلة

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

IO.try_convert(STDOUT)     #=> STDOUT
IO.try_convert("STDOUT")   #=> nil
require 'zlib'
f = open("/tmp/zz.gz")       #=> #<File:/tmp/zz.gz>
z = Zlib::GzipReader.open(f) #=> #<Zlib::GzipReader:0x81d8744>
IO.try_convert(z)            #=> #<File:/tmp/zz.gz>‎

انظر أيضا

  • التابع new: يُعيد التابع new كائنًا جديدًا من النوع IO 

مصادر