ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ     ÿÄ J    ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú "SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5 ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e ríV ?> ......................................... ............................................................................. ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ     ÿÄ J    ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú "SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5 ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e ríV ?> ......................................... ............................................................................. ???????????????????????????????????? ???????????????????????????????????? ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ     ÿÄ J    ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú "SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5 ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e ríV ?> ......................................... ............................................................................. ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ     ÿÄ J    ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú "SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5 ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e ríV ?> ......................................... ............................................................................. ???????????????????????????????????? ???????????????????????????????????? U:RDoc::AnyMethod[iI" pipe:ETI" IO::pipe;TT: publico:RDoc::Markup::Document: @parts[$o:RDoc::Markup::Paragraph; [I"ACreates a pair of pipe endpoints, +read_io+ and +write_io+, ;TI"connected to each other.;To:RDoc::Markup::BlankLineo; ; [I"NIf argument +enc_string+ is given, it must be a string containing one of:;T@o:RDoc::Markup::List: @type: BULLET: @items[o:RDoc::Markup::ListItem: @label0; [o; ; [I"BThe name of the encoding to be used as the external encoding.;To;;0; [o; ; [I"KThe colon-separated names of two encodings to be used as the external ;TI"and internal encodings.;T@o; ; [ I"CIf argument +int_enc+ is given, it must be an Encoding object ;TI"Nor encoding name string that specifies the internal encoding to be used; ;TI"Hif argument +ext_enc+ is also given, it must be an Encoding object ;TI"Mor encoding name string that specifies the external encoding to be used.;T@o; ; [I"JThe string read from +read_io+ is tagged with the external encoding; ;TI"Hif an internal encoding is also specified, the string is converted ;TI"(to, and tagged with, that encoding.;T@o; ; [I"#If any encoding is specified, ;TI";optional hash arguments specify the conversion option.;T@o; ; [I"/Optional keyword arguments +opts+ specify:;T@o; ; ;;[o;;0; [o; ; [I".{Open Options}[rdoc-ref:IO@Open+Options].;To;;0; [o; ; [I"B{Encoding Options}[rdoc-ref:encodings.rdoc@Encoding+Options].;T@o; ; [I"@With no block given, returns the two endpoints in an array:;T@o:RDoc::Markup::Verbatim; [I"+IO.pipe # => [#, #] ;T: @format0o; ; [I"AWith a block given, calls the block with the two endpoints; ;TI">closes both endpoints and returns the value of the block:;T@o;; [I":IO.pipe {|read_io, write_io| p read_io; p write_io } ;T;0o; ; [I" Output:;T@o;; [I"# ;TI"# ;T;0o; ; [I"$Not available on all platforms.;T@o; ; [ I"HIn the example below, the two processes close the ends of the pipe ;TI"Fthat they are not using. This is not just a cosmetic nicety. The ;TI"Fread end of a pipe will not generate an end of file condition if ;TI"Hthere are any writers with the pipe still open. In the case of the ;TI"Bparent process, the rd.read will never return if it ;TI".does not first issue a wr.close:;T@o;; [I"rd, wr = IO.pipe ;TI" ;TI" if fork ;TI" wr.close ;TI"' puts "Parent got: <#{rd.read}>" ;TI" rd.close ;TI" Process.wait ;TI" else ;TI" rd.close ;TI"( puts 'Sending message to parent' ;TI" wr.write "Hi Dad" ;TI" wr.close ;TI" end ;T;0o; ; [I"produces:;T@o;; [I"Sending message to parent ;TI"Parent got: ;T;0: @fileI" io.c;T:0@omit_headings_from_table_of_contents_below0I"?IO.pipe(**opts) -> [read_io, write_io] IO.pipe(enc, **opts) -> [read_io, write_io] IO.pipe(ext_enc, int_enc, **opts) -> [read_io, write_io] IO.pipe(**opts) {|read_io, write_io| ...} -> object IO.pipe(enc, **opts) {|read_io, write_io| ...} -> object IO.pipe(ext_enc, int_enc, **opts) {|read_io, write_io| ...} -> object ;T0[I" (p1 = v1, p2 = v2, p3 = {});T@sFI"IO;TcRDoc::NormalClass00