rio 0.3.4 → 0.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +287 -0
- data/Rakefile +7 -9
- data/VERSION +1 -1
- data/doc/ANNOUNCE +20 -1
- data/doc/RELEASE_NOTES +41 -0
- data/doc/rdoc/classes/Kernel.html +181 -0
- data/doc/rdoc/classes/Kernel.src/M000214.html +18 -0
- data/doc/rdoc/classes/RIO.html +621 -0
- data/doc/rdoc/classes/RIO.src/M000001.html +18 -0
- data/doc/rdoc/classes/RIO.src/M000002.html +18 -0
- data/doc/rdoc/classes/RIO.src/M000003.html +18 -0
- data/doc/rdoc/classes/RIO/Doc.html +138 -0
- data/doc/rdoc/classes/RIO/Doc/HOWTO.html +1040 -0
- data/doc/rdoc/classes/RIO/Doc/INTRO.html +1613 -0
- data/doc/rdoc/classes/RIO/Doc/MISC.html +443 -0
- data/doc/rdoc/classes/RIO/Doc/SYNOPSIS.html +338 -0
- data/doc/rdoc/classes/RIO/IF.html +114 -0
- data/doc/rdoc/classes/RIO/IF/CSV.html +202 -0
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000004.html +19 -0
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000005.html +16 -0
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000006.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.html +499 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000007.html +19 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000008.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000009.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000010.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000011.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000012.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000013.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000014.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000015.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000016.html +16 -0
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000017.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.html +7121 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000018.html +18 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000019.html +20 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000020.html +27 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000021.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000023.html +19 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000024.html +20 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000025.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000026.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000027.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000028.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000029.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000030.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000031.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000032.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000033.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000034.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000035.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000036.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000037.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000038.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000039.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000040.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000041.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000042.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000043.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000044.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000045.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000046.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000047.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000048.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000049.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000050.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000051.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000052.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000053.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000054.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000055.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000056.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000057.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000058.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000059.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000060.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000061.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000062.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000063.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000064.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000065.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000066.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000067.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000068.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000069.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000070.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000071.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000072.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000073.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000074.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000075.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000076.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000077.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000078.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000079.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000080.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000081.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000082.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000083.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000084.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000085.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000086.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000087.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000088.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000089.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000090.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000091.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000092.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000093.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000094.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000095.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000096.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000097.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000098.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000099.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000100.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000101.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000102.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000103.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000104.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000105.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000106.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000107.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000108.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000109.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000110.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000111.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000112.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000113.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000114.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000115.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000116.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000117.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000118.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000119.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000120.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000121.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000122.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000123.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000124.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000125.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000126.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000127.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000128.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000129.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000130.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000131.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000132.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000133.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000134.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000135.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000136.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000137.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000138.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000139.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000140.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000141.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000142.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000143.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000144.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000145.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000146.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000147.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000148.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000149.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000150.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000151.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000152.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000153.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000154.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000155.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000156.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000157.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000158.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000159.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000160.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000161.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000162.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000163.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000164.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000165.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000166.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000167.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000168.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000169.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000170.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000171.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000172.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000173.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000174.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000175.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000176.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000177.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000178.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000179.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000180.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000181.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000182.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000183.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000184.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000185.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000186.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000187.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000188.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000189.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000190.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000191.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000192.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000193.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000194.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000195.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000196.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000197.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000198.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000199.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000200.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000201.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000202.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000203.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000204.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000205.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000206.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000207.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000208.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000209.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000210.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000211.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000212.html +16 -0
- data/doc/rdoc/classes/RIO/Rio.src/M000213.html +16 -0
- data/doc/rdoc/created.rid +1 -0
- data/doc/rdoc/files/README.html +243 -0
- data/doc/rdoc/files/lib/rio/constructor_rb.html +142 -0
- data/doc/rdoc/files/lib/rio/doc/HOWTO_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/doc/INTRO_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/doc/MISC_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/doc/SYNOPSIS_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/basic_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/csv_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/dir_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/file_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/fileordir_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/grande_entry_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/grande_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/grande_stream_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/internal_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/path_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/stream_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/string_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/temp_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/test_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/if/yaml_rb.html +135 -0
- data/doc/rdoc/files/lib/rio/kernel_rb.html +142 -0
- data/doc/rdoc/files/lib/rio_rb.html +154 -0
- data/doc/rdoc/fr_class_index.html +37 -0
- data/doc/rdoc/fr_file_index.html +49 -0
- data/doc/rdoc/fr_method_index.html +241 -0
- data/doc/rdoc/index.html +24 -0
- data/doc/rdoc/rdoc-style.css +384 -0
- data/lib/rio.rb +21 -5
- data/lib/rio/constructor.rb +13 -0
- data/lib/rio/context/copying.rb +56 -0
- data/lib/rio/context/methods.rb +1 -0
- data/lib/rio/cp.rb +53 -34
- data/lib/rio/doc/HOWTO.rb +9 -3
- data/lib/rio/doc/INTRO.rb +113 -3
- data/lib/rio/ext.rb +7 -1
- data/lib/rio/ext/csv.rb +17 -8
- data/lib/rio/ext/yaml.rb +182 -0
- data/lib/rio/factory.rb +11 -14
- data/lib/rio/filter/closeoneof.rb +12 -31
- data/lib/rio/filter/gzip.rb +7 -0
- data/lib/rio/if.rb +4 -1
- data/lib/rio/if/csv.rb +36 -35
- data/lib/rio/if/grande.rb +74 -5
- data/lib/rio/if/grande_stream.rb +11 -3
- data/lib/rio/if/path.rb +9 -8
- data/lib/rio/if/yaml.rb +218 -0
- data/lib/rio/ioh.rb +5 -3
- data/lib/rio/matchrecord.rb +9 -2
- data/lib/rio/ops/dir.rb +2 -1
- data/lib/rio/ops/either.rb +9 -9
- data/lib/rio/ops/file.rb +4 -1
- data/lib/rio/ops/path.rb +26 -20
- data/lib/rio/ops/stream.rb +1 -1
- data/lib/rio/ops/stream/input.rb +31 -9
- data/lib/rio/ops/stream/output.rb +7 -2
- data/lib/rio/ops/stream/read.rb +10 -10
- data/lib/rio/ops/stream/write.rb +10 -10
- data/lib/rio/path.rb +2 -2
- data/lib/rio/path/reset.rb +1 -1
- data/lib/rio/piper.rb +123 -0
- data/lib/rio/piper/cp.rb +81 -0
- data/lib/rio/rectype.rb +2 -2
- data/lib/rio/rl/base.rb +40 -17
- data/lib/rio/rl/builder.rb +8 -47
- data/lib/rio/rl/ioi.rb +3 -2
- data/lib/rio/rl/path.rb +101 -78
- data/lib/rio/rl/pathmethods.rb +95 -0
- data/lib/rio/rl/uri.rb +41 -51
- data/lib/rio/scheme/cmdio.rb +7 -1
- data/lib/rio/scheme/cmdpipe.rb +150 -0
- data/lib/rio/scheme/ftp.rb +0 -4
- data/lib/rio/scheme/http.rb +0 -2
- data/lib/rio/scheme/strio.rb +16 -0
- data/lib/rio/scheme/temp.rb +7 -7
- data/lib/rio/state.rb +23 -5
- data/lib/rio/stream.rb +4 -0
- data/lib/rio/stream/duplex.rb +1 -0
- data/lib/rio/stream/open.rb +8 -2
- data/lib/rio/version.rb +1 -1
- data/test/{runtests_gem.rb → gem_runtests.rb} +0 -0
- data/test/methods/path.rb +12 -0
- data/test/runtests.rb +2 -0
- data/test/tc/abs.rb +29 -27
- data/test/tc/all.rb +9 -3
- data/test/tc/base.rb +31 -0
- data/test/tc/cmdpipe.rb +146 -0
- data/test/tc/copydir.rb +2 -1
- data/test/tc/create.rb +10 -0
- data/test/tc/csv.rb +12 -12
- data/test/tc/csv2.rb +2 -2
- data/test/tc/csv_columns.rb +3 -3
- data/test/tc/each_break.rb +21 -8
- data/test/tc/expand_path.rb +21 -27
- data/test/tc/misc.rb +0 -1
- data/test/tc/noqae.rb +29 -21
- data/test/tc/overload.rb +14 -11
- data/test/tc/piper.rb +146 -0
- data/test/tc/riorl.rb +26 -17
- data/test/tc/route.rb +51 -0
- data/test/tc/skip.rb +8 -6
- data/test/tc/split.rb +70 -0
- data/test/tc/temp.rb +5 -5
- data/test/tc/testcase.rb +1 -0
- data/test/tc/yaml.rb +118 -0
- metadata +481 -229
- data/doc/README_MSWIN32.txt +0 -39
- data/ex/colx.rb +0 -8
- data/ex/findinruby +0 -23
- data/ex/findruby +0 -15
- data/ex/passwd_report.rb +0 -8
- data/ex/prompt.rb +0 -25
- data/ex/rgb.txt.gz +0 -0
- data/ex/riocat +0 -35
- data/ex/riogunzip +0 -31
- data/ex/riogzip +0 -24
- data/ex/rioprompt.rb +0 -6
- data/ex/tolf +0 -11
- data/test/mswin32.rb +0 -28
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
#--
|
|
2
|
+
# ===============================================================================
|
|
3
|
+
# Copyright (c) 2005, Christopher Kleckner
|
|
4
|
+
# All rights reserved
|
|
5
|
+
#
|
|
6
|
+
# This file is part of the Rio library for ruby.
|
|
7
|
+
#
|
|
8
|
+
# Rio is free software; you can redistribute it and/or modify
|
|
9
|
+
# it under the terms of the GNU General Public License as published by
|
|
10
|
+
# the Free Software Foundation; either version 2 of the License, or
|
|
11
|
+
# (at your option) any later version.
|
|
12
|
+
#
|
|
13
|
+
# Rio is distributed in the hope that it will be useful,
|
|
14
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
# GNU General Public License for more details.
|
|
17
|
+
#
|
|
18
|
+
# You should have received a copy of the GNU General Public License
|
|
19
|
+
# along with Rio; if not, write to the Free Software
|
|
20
|
+
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
21
|
+
# ===============================================================================
|
|
22
|
+
#++
|
|
23
|
+
#
|
|
24
|
+
# To create the documentation for Rio run the command
|
|
25
|
+
# rake rdoc
|
|
26
|
+
# from the distribution directory. Then point your browser at the 'doc/rdoc' directory.
|
|
27
|
+
#
|
|
28
|
+
# Suggested Reading
|
|
29
|
+
# * RIO::Doc::SYNOPSIS
|
|
30
|
+
# * RIO::Doc::INTRO
|
|
31
|
+
# * RIO::Doc::HOWTO
|
|
32
|
+
# * RIO::Rio
|
|
33
|
+
#
|
|
34
|
+
# <b>Rio is pre-alpha software.
|
|
35
|
+
# The documented interface and behavior is subject to change without notice.</b>
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
require 'rio/rl/uri'
|
|
39
|
+
module RIO
|
|
40
|
+
module RL
|
|
41
|
+
module PathMethods
|
|
42
|
+
def urlroot()
|
|
43
|
+
return nil unless absolute?
|
|
44
|
+
cp = self.clone
|
|
45
|
+
cp.urlpath = self.pathroot
|
|
46
|
+
cp.url
|
|
47
|
+
end
|
|
48
|
+
def _parts()
|
|
49
|
+
pr = self.pathroot
|
|
50
|
+
ur = self.urlroot.sub(/#{pr}$/,'')
|
|
51
|
+
up = self.urlpath.sub(/^#{pr}/,'')
|
|
52
|
+
|
|
53
|
+
[ur,pr,up]
|
|
54
|
+
end
|
|
55
|
+
def split()
|
|
56
|
+
if absolute?
|
|
57
|
+
parts = self._parts
|
|
58
|
+
sparts = []
|
|
59
|
+
sparts << parts[0] + parts[1]
|
|
60
|
+
sparts += parts[2].split('/')
|
|
61
|
+
else
|
|
62
|
+
sparts = self.urlpath.split('/')
|
|
63
|
+
end
|
|
64
|
+
require 'rio/to_rio'
|
|
65
|
+
rlparts = sparts.map { |str| self.class.new(str) }
|
|
66
|
+
(1...sparts.length).each { |i|
|
|
67
|
+
rlparts[i].base = rlparts[i-1].abs.url + '/'
|
|
68
|
+
}
|
|
69
|
+
rlparts
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def join(*args)
|
|
73
|
+
return self if args.empty?
|
|
74
|
+
sa = args.map { |arg| ::URI.escape(arg.to_s,ESCAPE) }
|
|
75
|
+
sa.unshift(self.urlpath) unless self.urlpath.empty?
|
|
76
|
+
self.urlpath = sa.join('/').squeeze('/')
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def parse_url(str)
|
|
80
|
+
::URI.parse(::URI.escape(str,ESCAPE))
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def route_from(other)
|
|
84
|
+
self.class.new(uri.route_from(other.uri),{:base => other.url})
|
|
85
|
+
end
|
|
86
|
+
def route_to(other)
|
|
87
|
+
self.class.new(uri.route_to(other.uri),{:base => self.url})
|
|
88
|
+
end
|
|
89
|
+
def merge(other)
|
|
90
|
+
self.class.new(uri.merge(other.uri))
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
data/lib/rio/rl/uri.rb
CHANGED
|
@@ -41,82 +41,72 @@ module RIO
|
|
|
41
41
|
class URIBase < Base
|
|
42
42
|
attr_reader :uri
|
|
43
43
|
attr_writer :base
|
|
44
|
+
SCHEME = URI::REGEXP::PATTERN::SCHEME
|
|
44
45
|
def initialize(u,*args)
|
|
45
46
|
#p callstr('initialize',u,*args)
|
|
46
47
|
# u should be a ::URI or something that can be parsed to one
|
|
47
|
-
args =
|
|
48
|
+
args = _get_base_from_args(args)
|
|
48
49
|
@uri = _mkuri(u)
|
|
49
50
|
self.join(*args)
|
|
50
51
|
@uri.path = '/' if @uri.absolute? and @uri.path == ''
|
|
51
52
|
end
|
|
52
53
|
def initialize_copy(*args)
|
|
53
|
-
#p callstr('initialize_copy',*args)
|
|
54
|
-
|
|
55
54
|
super
|
|
56
55
|
@uri = @uri.clone unless @uri.nil?
|
|
57
56
|
@base = @base.clone unless @base.nil?
|
|
58
57
|
end
|
|
59
|
-
def
|
|
60
|
-
(arg.kind_of?(::URI) ? arg.dup : parse_url(arg.to_s))
|
|
61
|
-
end
|
|
62
|
-
def base(arg=nil)
|
|
63
|
-
@base = _mkuri(arg) unless arg.nil? or @uri.absolute?
|
|
64
|
-
(@base.nil? ? @uri : @base)
|
|
65
|
-
end
|
|
66
|
-
def join(*args)
|
|
67
|
-
# self.class.joinuri(self.uri,*args)
|
|
68
|
-
return @uri if args.empty?
|
|
69
|
-
sa = args.map(&:to_s).map { |str| ::URI.escape(str,ESCAPE) }
|
|
70
|
-
sa.unshift @uri.path unless @uri.path.empty?
|
|
71
|
-
@uri.path = sa.join('/')
|
|
72
|
-
@uri.path.gsub!(%r|/+|,'/')
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
def parse_url(str)
|
|
76
|
-
::URI.parse(::URI.escape(str,ESCAPE))
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
def url() self.uri.to_s end
|
|
80
|
-
def fs2url(pth) RL.fs2url(pth) end
|
|
81
|
-
def url2fs(pth) RL.url2fs(pth) end
|
|
82
|
-
def fspath() RL.url2fs(@uri.path) end
|
|
83
|
-
|
|
84
|
-
def route_from(other)
|
|
85
|
-
self.class.new(@uri.route_from(other.uri),other)
|
|
86
|
-
end
|
|
87
|
-
def route_to(other)
|
|
88
|
-
self.class.new(@uri.route_to(other.uri),self.abs)
|
|
89
|
-
end
|
|
90
|
-
def merge(other)
|
|
91
|
-
self.class.new(@uri.merge(other.uri))
|
|
92
|
-
end
|
|
93
|
-
def get_base(*args)
|
|
58
|
+
def _get_base_from_args(args)
|
|
94
59
|
# args.each { |a| p "get_base len=#{args.length} #{a.class}##{a.to_s}" }
|
|
95
60
|
@base = nil
|
|
96
|
-
if args.
|
|
97
|
-
b = args.pop
|
|
61
|
+
if !args.empty? and args[-1].kind_of?(::Hash) and (b = args.pop[:base])
|
|
98
62
|
@base = case b
|
|
99
63
|
when URIBase then b.uri if b.uri.absolute?
|
|
100
64
|
when ::URI then b if b.absolute?
|
|
101
|
-
when ::String then ::URI.parse(b) if b =~
|
|
65
|
+
when ::String then ::URI.parse(b) if b =~ /^#{SCHEME}:/
|
|
102
66
|
end
|
|
103
|
-
args.push b unless @base
|
|
104
67
|
end
|
|
105
68
|
args
|
|
106
69
|
end
|
|
107
|
-
def
|
|
108
|
-
|
|
109
|
-
|
|
70
|
+
def pathroot() '/' end
|
|
71
|
+
def _mkuri(arg)
|
|
72
|
+
(arg.kind_of?(::URI) ? arg.dup : parse_url(arg.to_s))
|
|
110
73
|
end
|
|
111
|
-
def
|
|
112
|
-
|
|
74
|
+
def base(arg=nil)
|
|
75
|
+
self.base = arg unless arg.nil? or @uri.absolute?
|
|
76
|
+
@base || @uri
|
|
113
77
|
end
|
|
114
|
-
def
|
|
115
|
-
|
|
78
|
+
def base=(arg) @base = _mkuri(arg) end
|
|
79
|
+
require 'rio/rl/pathmethods'
|
|
80
|
+
include PathMethods
|
|
81
|
+
|
|
82
|
+
def urlpath=(pt) @uri.path = pt end
|
|
83
|
+
def urlpath() @uri.path end
|
|
84
|
+
|
|
85
|
+
def path=(pt) self.urlpath = pt end
|
|
86
|
+
def path() self.urlpath end
|
|
87
|
+
def path_no_slash() self.path.sub(/\/$/,'') end
|
|
88
|
+
|
|
89
|
+
def opaque()
|
|
90
|
+
u = @uri.dup
|
|
91
|
+
u.scheme = nil
|
|
92
|
+
u.to_s
|
|
116
93
|
end
|
|
117
|
-
|
|
118
|
-
|
|
94
|
+
|
|
95
|
+
def scheme() @uri.scheme end
|
|
96
|
+
def host() @uri.host end
|
|
97
|
+
def host=(arg) @uri.host = arg end
|
|
98
|
+
|
|
99
|
+
def absolute?() @uri.absolute? end
|
|
119
100
|
alias abs? absolute?
|
|
101
|
+
|
|
102
|
+
def abs()
|
|
103
|
+
return self if absolute?
|
|
104
|
+
self.class.new(@base.merge(@uri),{:base => @base})
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
def url() @uri.to_s end
|
|
108
|
+
def to_s() self.url end
|
|
109
|
+
|
|
120
110
|
end
|
|
121
111
|
end
|
|
122
112
|
end
|
data/lib/rio/scheme/cmdio.rb
CHANGED
|
@@ -43,8 +43,12 @@ module RIO
|
|
|
43
43
|
class RL < RL::SysIOBase
|
|
44
44
|
RIOSCHEME = 'cmdio'
|
|
45
45
|
RIOPATH = RIO::RL::CHMAP.invert[RIOSCHEME].to_s.freeze
|
|
46
|
+
attr_reader :cmd
|
|
46
47
|
def initialize(cmd="")
|
|
47
|
-
|
|
48
|
+
case cmd
|
|
49
|
+
when self.class then @cmd = cmd.cmd
|
|
50
|
+
else @cmd = cmd
|
|
51
|
+
end
|
|
48
52
|
end
|
|
49
53
|
def opaque()
|
|
50
54
|
URI.escape(@cmd,RIO::RL::ESCAPE)
|
|
@@ -53,6 +57,8 @@ module RIO
|
|
|
53
57
|
@cmd
|
|
54
58
|
end
|
|
55
59
|
def open(m)
|
|
60
|
+
#p "opening #{@cmd}"
|
|
61
|
+
#raise RuntimeError, "Should Not Open"
|
|
56
62
|
::IO.popen(@cmd,m.to_s)
|
|
57
63
|
end
|
|
58
64
|
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
#--
|
|
2
|
+
# ===============================================================================
|
|
3
|
+
# Copyright (c) 2005, Christopher Kleckner
|
|
4
|
+
# All rights reserved
|
|
5
|
+
#
|
|
6
|
+
# This file is part of the Rio library for ruby.
|
|
7
|
+
#
|
|
8
|
+
# Rio is free software; you can redistribute it and/or modify
|
|
9
|
+
# it under the terms of the GNU General Public License as published by
|
|
10
|
+
# the Free Software Foundation; either version 2 of the License, or
|
|
11
|
+
# (at your option) any later version.
|
|
12
|
+
#
|
|
13
|
+
# Rio is distributed in the hope that it will be useful,
|
|
14
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
# GNU General Public License for more details.
|
|
17
|
+
#
|
|
18
|
+
# You should have received a copy of the GNU General Public License
|
|
19
|
+
# along with Rio; if not, write to the Free Software
|
|
20
|
+
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
21
|
+
# ===============================================================================
|
|
22
|
+
#++
|
|
23
|
+
#
|
|
24
|
+
# To create the documentation for Rio run the command
|
|
25
|
+
# rake rdoc
|
|
26
|
+
# from the distribution directory. Then point your browser at the 'doc/rdoc' directory.
|
|
27
|
+
#
|
|
28
|
+
# Suggested Reading
|
|
29
|
+
# * RIO::Doc::SYNOPSIS
|
|
30
|
+
# * RIO::Doc::INTRO
|
|
31
|
+
# * RIO::Doc::HOWTO
|
|
32
|
+
# * RIO::Rio
|
|
33
|
+
#
|
|
34
|
+
# <b>Rio is pre-alpha software.
|
|
35
|
+
# The documented interface and behavior is subject to change without notice.</b>
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
require 'rio/rl/ioi'
|
|
39
|
+
require 'rio/stream'
|
|
40
|
+
require 'rio/stream/open'
|
|
41
|
+
require 'rio/piper'
|
|
42
|
+
|
|
43
|
+
module RIO
|
|
44
|
+
module CmdPipe #:nodoc: all
|
|
45
|
+
RESET_STATE = 'CmdPipe::Stream::Reset'
|
|
46
|
+
|
|
47
|
+
class RL < RL::IOIBase
|
|
48
|
+
RIOSCHEME = 'cmdpipe'
|
|
49
|
+
RIOPATH = RIO::RL::CHMAP.invert[RIOSCHEME].to_s.freeze
|
|
50
|
+
attr_reader :piper
|
|
51
|
+
|
|
52
|
+
def initialize(*args)
|
|
53
|
+
case args[0]
|
|
54
|
+
when CmdPipe::RL
|
|
55
|
+
@piper = args[0].piper
|
|
56
|
+
when Piper::Base
|
|
57
|
+
@piper = args[0]
|
|
58
|
+
else
|
|
59
|
+
@piper = Piper::Base.new(*args)
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
def initialize_copy(*args)
|
|
63
|
+
@piper = @piper.clone
|
|
64
|
+
end
|
|
65
|
+
def opaque()
|
|
66
|
+
#p callstr('opaque')
|
|
67
|
+
@piper.rios.map{|cmd| URI.escape(cmd.to_s,RIO::RL::ESCAPE)}.join('|')
|
|
68
|
+
end
|
|
69
|
+
def to_s()
|
|
70
|
+
return "" if @piper.rios.nil? or @piper.rios.empty?
|
|
71
|
+
@piper.rios.map{|cmd| cmd.to_s}.join('|')
|
|
72
|
+
end
|
|
73
|
+
def open(m,*args)
|
|
74
|
+
@outp = rio(?")
|
|
75
|
+
rp = Piper::Base.new(@piper,@outp)
|
|
76
|
+
rp.run
|
|
77
|
+
@outp
|
|
78
|
+
end
|
|
79
|
+
SPLIT_RE = %r|(?:([^\|]+)(?:\|([^\|]+))*)?$|.freeze
|
|
80
|
+
def self.splitrl(s)
|
|
81
|
+
#p "S='#{s}'"
|
|
82
|
+
sub,opq,whole = split_riorl(s)
|
|
83
|
+
if opq.nil? or opq.empty?
|
|
84
|
+
[]
|
|
85
|
+
elsif bm = SPLIT_RE.match(opq)
|
|
86
|
+
escaped_cmd = bm[1]
|
|
87
|
+
cmd = URI.unescape(escaped_cmd)
|
|
88
|
+
[cmd]
|
|
89
|
+
else
|
|
90
|
+
[]
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
module Stream
|
|
95
|
+
class Reset < State::Base
|
|
96
|
+
include Ops::Path::URI
|
|
97
|
+
include Piper::Cp::Util
|
|
98
|
+
def check?() true end
|
|
99
|
+
def |(arg)
|
|
100
|
+
ario = ensure_cmd_rio(arg)
|
|
101
|
+
npiper = Piper::Base.new(self.rl.piper,ario)
|
|
102
|
+
process_pipe_arg_(npiper)
|
|
103
|
+
end
|
|
104
|
+
def piper
|
|
105
|
+
self.rl.piper
|
|
106
|
+
end
|
|
107
|
+
def has_output_dest?
|
|
108
|
+
piper.has_output_dest?
|
|
109
|
+
end
|
|
110
|
+
# def when_missing(sym,*args)
|
|
111
|
+
# #p callstr('when_missing',sym,*args)
|
|
112
|
+
# become 'CmdPipe::Stream::Open'
|
|
113
|
+
# end
|
|
114
|
+
end
|
|
115
|
+
class Open < RIO::Stream::Open
|
|
116
|
+
def input() stream_state('CmdPipe::Stream::Input') end
|
|
117
|
+
def output() stream_state('CmdPipe::Stream::Output') end
|
|
118
|
+
def inout() stream_state('CmdPipe::Stream::InOut') end
|
|
119
|
+
def open_(*args)
|
|
120
|
+
unless open?
|
|
121
|
+
ios = self.rl.open(mode?,*args)
|
|
122
|
+
self.ioh = ios #IOH::Stream.new(ios)
|
|
123
|
+
end
|
|
124
|
+
self
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
module Ops
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
class Input < RIO::Stream::Input
|
|
132
|
+
include Ops
|
|
133
|
+
def ior
|
|
134
|
+
ioh.rd
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
class Output < RIO::Stream::Output
|
|
139
|
+
include Ops
|
|
140
|
+
def iow
|
|
141
|
+
ioh.wr
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
class InOut < RIO::Stream::InOut
|
|
146
|
+
include Ops
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
end
|
data/lib/rio/scheme/ftp.rb
CHANGED
|
@@ -50,8 +50,6 @@ module RIO
|
|
|
50
50
|
sub,opq,whole = split_riorl(s)
|
|
51
51
|
[whole]
|
|
52
52
|
end
|
|
53
|
-
def to_s() self.url end
|
|
54
|
-
def scheme() self.uri.scheme end
|
|
55
53
|
def open(*args)
|
|
56
54
|
RIO::FTP::Conn.new(@uri)
|
|
57
55
|
end
|
|
@@ -62,8 +60,6 @@ module RIO
|
|
|
62
60
|
sub,opq,whole = split_riorl(s)
|
|
63
61
|
[whole]
|
|
64
62
|
end
|
|
65
|
-
def to_s() self.url end
|
|
66
|
-
def scheme() self.uri.scheme end
|
|
67
63
|
def open(*args)
|
|
68
64
|
@uri.open
|
|
69
65
|
end
|
data/lib/rio/scheme/http.rb
CHANGED
data/lib/rio/scheme/strio.rb
CHANGED
|
@@ -50,6 +50,22 @@ module RIO
|
|
|
50
50
|
def initialize(str="")
|
|
51
51
|
@str = str
|
|
52
52
|
end
|
|
53
|
+
|
|
54
|
+
def opaque() sprintf('0x%08x',@str.object_id) end
|
|
55
|
+
|
|
56
|
+
# must be able to process both
|
|
57
|
+
# parse('rio:strio',string)
|
|
58
|
+
# parse('rio:strio:0xHEXIOS')
|
|
59
|
+
SPLIT_RE = %r|0x([0-9a-fA-F]+)$|
|
|
60
|
+
def self.splitrl(s)
|
|
61
|
+
sub,opq,whole = split_riorl(s)
|
|
62
|
+
if bm = SPLIT_RE.match(opq)
|
|
63
|
+
oid = bm[1].hex
|
|
64
|
+
str = ObjectSpace._id2ref(oid)
|
|
65
|
+
[str]
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
53
69
|
def open(m,*args)
|
|
54
70
|
::StringIO.new(@str,m.to_s,*args)
|
|
55
71
|
end
|
data/lib/rio/scheme/temp.rb
CHANGED
|
@@ -54,9 +54,9 @@ module RIO
|
|
|
54
54
|
#def path() nil end
|
|
55
55
|
def scheme() self.class.const_get(:RIOSCHEME) end
|
|
56
56
|
def opaque()
|
|
57
|
-
td = @tmpdir.to_s
|
|
57
|
+
td = self.escape(@tmpdir.to_s)
|
|
58
58
|
td += '/' unless td.nil? or td.empty? or (td.ends_with?('/') and td != '/')
|
|
59
|
-
td
|
|
59
|
+
td + self.escape(@prefix)
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
SPLIT_RE = %r|(?:(.*)/)?([^/]*)$|.freeze
|
|
@@ -134,15 +134,15 @@ module RIO
|
|
|
134
134
|
@tempobj = nil
|
|
135
135
|
end
|
|
136
136
|
def check?() true end
|
|
137
|
-
def
|
|
137
|
+
def mkdir(prefix=rl.prefix,tmpdir=rl.tmpdir)
|
|
138
138
|
self.rl = RIO::Temp::Dir::RL.new(prefix, tmpdir)
|
|
139
139
|
become 'Dir::Existing'
|
|
140
140
|
end
|
|
141
|
-
def mkdir()
|
|
142
|
-
dir()
|
|
143
|
-
end
|
|
141
|
+
# def mkdir()
|
|
142
|
+
# dir()
|
|
143
|
+
# end
|
|
144
144
|
def chdir(&block)
|
|
145
|
-
|
|
145
|
+
self.mkdir.chdir(&block)
|
|
146
146
|
end
|
|
147
147
|
def file(prefix=rl.prefix,tmpdir=rl.tmpdir)
|
|
148
148
|
self.rl = RIO::Temp::File::RL.new(prefix, tmpdir)
|