U:RDoc::AnyMethod[iI" popen2:EFI"Open3::popen2;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"VOpen3.popen2 is similar to Open3.popen3 except that it doesn't create a pipe for ;TI"the standard error stream.;To:RDoc::Markup::BlankLineo; ; [I"Block form:;T@o:RDoc::Markup::Verbatim; [ I"EOpen3.popen2([env,] cmd... [, opts]) {|stdin, stdout, wait_thr| ;TI"8 pid = wait_thr.pid # pid of the started process. ;TI" ... ;TI"G exit_status = wait_thr.value # Process::Status object returned. ;TI"} ;T: @format0o; ; [I"Non-block form:;T@o; ; [ I"Dstdin, stdout, wait_thr = Open3.popen2([env,] cmd... [, opts]) ;TI" ... ;TI"Ostdin.close # stdin and stdout should be closed explicitly in this form. ;TI"stdout.close ;T; 0o; ; [I"HSee Process.spawn for the optional hash arguments _env_ and _opts_.;T@o; ; [I" Example:;T@o; ; [I"$Open3.popen2("wc -c") {|i,o,t| ;TI"< i.print "answer to life the universe and everything" ;TI" i.close ;TI" p o.gets #=> "42\n" ;TI"} ;TI" ;TI"$Open3.popen2("bc -q") {|i,o,t| ;TI" i.puts "obase=13" ;TI" i.puts "6 * 9" ;TI" p o.gets #=> "42\n" ;TI"} ;TI" ;TI"!Open3.popen2("dc") {|i,o,t| ;TI" i.print "42P" ;TI" i.close ;TI" p o.read #=> "*" ;TI"};T; 0: @fileI"lib/open3.rb;T:0@omit_headings_from_table_of_contents_below000[I"(*cmd, **opts, &block);T@