File: //usr/share/ri/3.0.0/system/Tempfile/open-c.ri
U:RDoc::AnyMethod[iI" open:ETI"Tempfile::open;TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"Creates a new Tempfile.;To:RDoc::Markup::BlankLine o;
; [I"RThis method is not recommended and exists mostly for backward compatibility. ;TI"NPlease use Tempfile.create instead, which avoids the cost of delegation, ;TI"Pdoes not rely on a finalizer, and also unlinks the file when given a block.;T@o;
; [I"PTempfile.open is still appropriate if you need the Tempfile to be unlinked ;TI"Lby a finalizer and you cannot explicitly know where in the program the ;TI"%Tempfile can be unlinked safely.;T@o;
; [I">If no block is given, this is a synonym for Tempfile.new.;T@o;
; [
I"FIf a block is given, then a Tempfile object will be constructed, ;TI"Mand the block is run with the Tempfile object as argument. The Tempfile ;TI"Eobject will be automatically closed after the block terminates. ;TI"PHowever, the file will *not* be unlinked and needs to be manually unlinked ;TI"Owith Tempfile#close! or Tempfile#unlink. The finalizer will try to unlink ;TI"Lbut should not be relied upon as it can keep the file on the disk much ;TI"Mlonger than intended. For instance, on CRuby, finalizers can be delayed ;TI"Mdue to conservative stack scanning and references left in unused memory.;T@o;
; [I"-The call returns the value of the block.;T@o;
; [I"TIn any case, all arguments (<code>*args</code>) will be passed to Tempfile.new.;T@o:RDoc::Markup::Verbatim; [I"/Tempfile.open('foo', '/home/temp') do |f|
;TI"& # ... do something with f ...
;TI" end
;TI"
;TI"# Equivalent:
;TI",f = Tempfile.open('foo', '/home/temp')
;TI"begin
;TI"& # ... do something with f ...
;TI"ensure
;TI" f.close
;TI"end;T:@format0:
@fileI"lib/tempfile.rb;T:0@omit_headings_from_table_of_contents_below00I"
tempfile;T[ I"(*args, **kw);T@9FI"
Tempfile;TcRDoc::NormalClass00