rio 0.4.2 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +21 -0
- data/Gemfile +4 -0
- data/{COPYING → LICENSE} +3 -0
- data/README +20 -27
- data/Rakefile +48 -277
- data/lib/rio.rb +63 -24
- data/lib/rio/.document +5 -0
- data/lib/rio/abstract_method.rb +3 -14
- data/lib/rio/alturi.rb +507 -0
- data/lib/rio/alturi/algorithm.rb +313 -0
- data/lib/rio/alturi/cached_fields.rb +68 -0
- data/lib/rio/alturi/escape.rb +82 -0
- data/lib/rio/alturi/parse.rb +75 -0
- data/lib/rio/alturi/path_parts.rb +81 -0
- data/lib/rio/alturi/regex.rb +76 -0
- data/lib/rio/alturi/uri_parts.rb +512 -0
- data/lib/rio/argv.rb +3 -14
- data/lib/rio/arraynge.rb +146 -0
- data/lib/rio/arycopy.rb +3 -14
- data/lib/rio/assert.rb +87 -15
- data/lib/rio/base.rb +7 -30
- data/lib/rio/callstr.rb +3 -14
- data/lib/rio/const.rb +3 -14
- data/lib/rio/construct.rb +4 -15
- data/lib/rio/constructor.rb +4 -19
- data/lib/rio/context.rb +17 -14
- data/lib/rio/context/autoclose.rb +3 -14
- data/lib/rio/context/binmode.rb +63 -0
- data/lib/rio/context/copying.rb +3 -14
- data/lib/rio/context/cxx.rb +3 -14
- data/lib/rio/context/dir.rb +5 -15
- data/lib/rio/context/encoding.rb +84 -0
- data/lib/rio/context/gzip.rb +3 -14
- data/lib/rio/context/methods.rb +8 -17
- data/lib/rio/context/skip.rb +3 -14
- data/lib/rio/context/stream.rb +3 -14
- data/lib/rio/cp.rb +5 -20
- data/lib/rio/cxuri.rb +67 -0
- data/lib/rio/dbg/trace_states.rb +18 -0
- data/lib/rio/def.rb +3 -14
- data/lib/rio/dir.rb +9 -18
- data/lib/rio/doc.rb +3 -14
- data/lib/rio/doc/EXAMPLES.rb +256 -269
- data/lib/rio/doc/HOWTO.rb +685 -707
- data/lib/rio/doc/INDEX.rb +261 -282
- data/lib/rio/doc/INTRO.rb +1029 -1040
- data/lib/rio/doc/OPTIONAL.rb +77 -103
- data/lib/rio/doc/SYNOPSIS.rb +122 -143
- data/lib/rio/entrysel.rb +3 -14
- data/lib/rio/exception.rb +4 -14
- data/lib/rio/exception/copy.rb +3 -14
- data/lib/rio/exception/notimplemented.rb +3 -14
- data/lib/rio/exception/notsupported.rb +3 -14
- data/lib/rio/exception/open.rb +3 -14
- data/lib/rio/exception/state.rb +3 -14
- data/lib/rio/ext.rb +14 -17
- data/lib/rio/ext/csv.rb +25 -304
- data/lib/rio/ext/csv/csv-legacy.rb +344 -0
- data/lib/rio/ext/csv/csv.rb +359 -0
- data/lib/rio/ext/csv/filter.rb +209 -0
- data/lib/rio/ext/if.rb +3 -14
- data/lib/rio/ext/mp3info.rb +3 -14
- data/lib/rio/ext/splitlines.rb +3 -14
- data/lib/rio/ext/yaml.rb +3 -14
- data/lib/rio/ext/yaml/doc.rb +3 -14
- data/lib/rio/ext/yaml/tie.rb +3 -14
- data/lib/rio/ext/zipfile.rb +3 -14
- data/lib/rio/ext/zipfile/fs.rb +3 -14
- data/lib/rio/ext/zipfile/rl.rb +3 -14
- data/lib/rio/ext/zipfile/rootdir.rb +3 -14
- data/lib/rio/ext/zipfile/state.rb +3 -14
- data/lib/rio/ext/zipfile/wrap.rb +3 -14
- data/lib/rio/factory.rb +96 -213
- data/lib/rio/fibpipe.rb +373 -0
- data/lib/rio/file.rb +8 -17
- data/lib/rio/filter.rb +4 -15
- data/lib/rio/filter/closeoneof.rb +3 -14
- data/lib/rio/filter/gzip.rb +18 -27
- data/lib/rio/fs.rb +172 -0
- data/lib/rio/fs/base.rb +3 -14
- data/lib/rio/fs/impl.rb +3 -14
- data/lib/rio/fs/native.rb +3 -14
- data/lib/rio/fs/stream.rb +3 -14
- data/lib/rio/fs/url.rb +3 -14
- data/lib/rio/ftp/conncache.rb +16 -18
- data/lib/rio/ftp/dir.rb +4 -15
- data/lib/rio/ftp/fs.rb +62 -42
- data/lib/rio/fwd.rb +15 -0
- data/lib/rio/grande.rb +4 -15
- data/lib/rio/handle.rb +3 -45
- data/lib/rio/if.rb +15 -20
- data/lib/rio/if/basic.rb +3 -36
- data/lib/rio/if/csv.rb +7 -20
- data/lib/rio/if/dir.rb +9 -21
- data/lib/rio/if/file.rb +6 -19
- data/lib/rio/if/fileordir.rb +18 -29
- data/lib/rio/if/grande.rb +109 -120
- data/lib/rio/if/grande_entry.rb +5 -18
- data/lib/rio/if/grande_stream.rb +29 -42
- data/lib/rio/if/internal.rb +15 -16
- data/lib/rio/if/path.rb +35 -47
- data/lib/rio/if/rubyio.rb +35 -47
- data/lib/rio/if/string.rb +3 -16
- data/lib/rio/if/temp.rb +3 -16
- data/lib/rio/if/test.rb +8 -20
- data/lib/rio/if/yaml.rb +16 -29
- data/lib/rio/ioh.rb +35 -34
- data/lib/rio/iomode.rb +3 -14
- data/lib/rio/ios/fail.rb +3 -14
- data/lib/rio/ios/generic.rb +3 -14
- data/lib/rio/ios/mode.rb +3 -14
- data/lib/rio/ios/null.rb +3 -14
- data/lib/rio/iowrap.rb +3 -14
- data/lib/rio/kernel.rb +4 -17
- data/lib/rio/local.rb +3 -14
- data/lib/rio/match.rb +3 -14
- data/lib/rio/matchrecord.rb +8 -17
- data/lib/rio/no_warn.rb +3 -14
- data/lib/rio/nullio.rb +3 -14
- data/lib/rio/open3.rb +3 -16
- data/lib/rio/ops.rb +33 -0
- data/lib/rio/ops/construct.rb +3 -14
- data/lib/rio/ops/create.rb +11 -25
- data/lib/rio/ops/dir.rb +17 -24
- data/lib/rio/ops/either.rb +28 -31
- data/lib/rio/ops/file.rb +29 -26
- data/lib/rio/ops/path.rb +65 -34
- data/lib/rio/ops/stream.rb +13 -15
- data/lib/rio/ops/stream/input.rb +59 -28
- data/lib/rio/ops/stream/output.rb +4 -14
- data/lib/rio/ops/stream/read.rb +4 -15
- data/lib/rio/ops/stream/write.rb +3 -14
- data/lib/rio/ops/symlink.rb +6 -15
- data/lib/rio/path.rb +10 -17
- data/lib/rio/path/reset.rb +3 -14
- data/lib/rio/piper.rb +3 -27
- data/lib/rio/piper/cp.rb +50 -27
- data/lib/rio/prompt.rb +3 -14
- data/lib/rio/rectype.rb +8 -16
- data/lib/rio/rl/base.rb +12 -25
- data/lib/rio/rl/builder.rb +25 -24
- data/lib/rio/rl/chmap.rb +3 -16
- data/lib/rio/rl/fs2url.rb +5 -16
- data/lib/rio/rl/ioi.rb +3 -14
- data/lib/rio/rl/path.rb +14 -25
- data/lib/rio/rl/pathmethods.rb +3 -14
- data/lib/rio/rl/uri.rb +18 -35
- data/lib/rio/rl/withpath.rb +36 -53
- data/lib/rio/rrl/base.rb +75 -0
- data/lib/rio/rrl/builder.rb +122 -0
- data/lib/rio/rrl/chmap.rb +53 -0
- data/lib/rio/rrl/ioi.rb +78 -0
- data/lib/rio/rrl/path.rb +117 -0
- data/lib/rio/rrl/withpath.rb +269 -0
- data/lib/rio/scheme/aryio.rb +3 -14
- data/lib/rio/scheme/cmdio.rb +73 -42
- data/lib/rio/scheme/cmdpipe.rb +122 -59
- data/lib/rio/scheme/fd.rb +19 -33
- data/lib/rio/scheme/ftp.rb +34 -40
- data/lib/rio/scheme/http.rb +13 -22
- data/lib/rio/scheme/null.rb +6 -17
- data/lib/rio/scheme/path.rb +60 -71
- data/lib/rio/scheme/stderr.rb +9 -21
- data/lib/rio/scheme/stdio.rb +14 -26
- data/lib/rio/scheme/strio.rb +37 -38
- data/lib/rio/scheme/sysio.rb +20 -32
- data/lib/rio/scheme/tcp.rb +3 -14
- data/lib/rio/scheme/temp.rb +103 -92
- data/lib/rio/state.rb +85 -67
- data/lib/rio/state/data.rb +55 -0
- data/lib/rio/state/error.rb +7 -27
- data/lib/rio/stream.rb +46 -19
- data/lib/rio/stream/base.rb +14 -14
- data/lib/rio/stream/duplex.rb +64 -26
- data/lib/rio/stream/open.rb +9 -19
- data/lib/rio/symantics.rb +3 -14
- data/lib/rio/tempdir.rb +8 -17
- data/lib/rio/to_rio.rb +3 -16
- data/lib/rio/to_rio/all.rb +3 -14
- data/lib/rio/to_rio/array.rb +3 -14
- data/lib/rio/to_rio/io.rb +3 -14
- data/lib/rio/to_rio/object.rb +3 -14
- data/lib/rio/to_rio/string.rb +3 -14
- data/lib/rio/uri/file.rb +98 -153
- data/lib/rio/uriref.rb +144 -0
- data/lib/rio/util.rb +3 -14
- data/lib/rio/version.rb +4 -15
- data/misc/clean-heading-comments.rb +39 -0
- data/misc/fixdoclinks.rb +36 -0
- data/misc/update-copyright.rb +17 -0
- data/rio.gemspec +31 -0
- data/test/alturi/tc/create.rb +24 -0
- data/test/alturi/tc/empty.rb +13 -0
- data/test/alturi/tc/encoding.rb +73 -0
- data/test/alturi/tc/file_test.rb +335 -0
- data/test/alturi/tc/ftp_alturi.rb +147 -0
- data/test/alturi/tc/generic_test.rb +335 -0
- data/test/alturi/tc/http_test.rb +359 -0
- data/test/alturi/tc/path_parts_test.rb +215 -0
- data/test/alturi/tc/rfc_test.rb +83 -0
- data/test/alturi/tc/uri_parts_authority.rb +129 -0
- data/test/alturi/tc/uri_parts_test.rb +473 -0
- data/test/alturi/tc/uri_parts_userinfo.rb +140 -0
- data/test/alturi/tests.rb +27 -0
- data/test/base_test.rb +18 -0
- data/test/bin/demo_chdir.rb +60 -0
- data/test/bin/elipsis.rb +11 -0
- data/test/env.sh +4 -0
- data/test/ftp/initftpfiles.rb +1 -0
- data/test/ftp/tc/anon_copy_data.rb +31 -0
- data/test/ftp/tc/anon_misc.rb +109 -0
- data/test/ftp/tc/anon_read.rb +99 -0
- data/test/ftp/tc/anon_special.rb +37 -0
- data/test/ftp/tc/anon_write.rb +68 -0
- data/test/ftp/tc/copy.rb +35 -0
- data/test/ftp/tc/empty.rb +16 -0
- data/test/ftp/tc/ftp2ftp.rb +42 -0
- data/test/ftp/tc/ftp_fs.rb +333 -0
- data/test/ftp/testdef.rb +7 -2
- data/test/ftp/tests.rb +24 -0
- data/test/gem_runtests.rb +1 -1
- data/test/http/copy-from-http.rb +0 -1
- data/test/http/def.rb +20 -0
- data/test/http/tc/copy_from_http.rb +128 -0
- data/test/http/tc/empty.rb +14 -0
- data/test/http/tc/uri_meta.rb +52 -0
- data/test/http/tests.rb +19 -0
- data/test/lib/assertions.rb +7 -0
- data/test/lib/run_tests.rb +26 -0
- data/test/lib/temp_server.rb +7 -4
- data/test/methods/test_suite.rb +108 -0
- data/test/platform.rb +5 -0
- data/test/qpdir.rb +2 -0
- data/test/rio/scheme.rb +49 -0
- data/test/rio/tc/pathparts.rb +61 -0
- data/test/riotest/test_suite.rb +33 -0
- data/test/riotest/unit_test.rb +118 -0
- data/test/riotest/util.rb +23 -0
- data/test/runalltests.rb +1 -1
- data/test/runftptests.rb +2 -7
- data/test/runhttp.rb +4 -2
- data/test/runhttptests.rb +6 -5
- data/test/runtests.rb +66 -37
- data/test/srv/www/htdocs/riotest/dir/index.html +11 -0
- data/test/srv/www/htdocs/riotest/hw.html +8 -0
- data/test/srv/www/htdocs/riotest/lines.txt.gz +0 -0
- data/test/tc/abs2.rb +358 -0
- data/test/tc/all.rb +17 -10
- data/test/tc/base2.rb +8 -7
- data/test/tc/clearsel.rb +3 -2
- data/test/tc/closeoneof.rb +14 -15
- data/test/tc/cmdio.rb +193 -0
- data/test/tc/cmdpipe.rb +258 -63
- data/test/tc/copy.rb +3 -2
- data/test/tc/copyarray.rb +0 -4
- data/test/tc/copydest.rb +2 -3
- data/test/tc/copydir.rb +5 -1
- data/test/tc/copydir2.rb +68 -0
- data/test/tc/create.rb +4 -9
- data/test/tc/csv.rb +38 -119
- data/test/tc/csv2.rb +38 -57
- data/test/tc/csv_columns.rb +210 -8
- data/test/tc/csv_gzip.rb +78 -0
- data/test/tc/csv_headers.rb +134 -0
- data/test/tc/csvutil.rb +53 -16
- data/test/tc/dir.rb +3 -4
- data/test/tc/dir_iter.rb +3 -1
- data/test/tc/dirent.rb +8 -7
- data/test/tc/each.rb +62 -47
- data/test/tc/each_break.rb +67 -25
- data/test/tc/edf.rb +3 -2
- data/test/tc/empty.rb +6 -4
- data/test/tc/encoding.rb +30 -0
- data/test/tc/entary.rb +6 -5
- data/test/tc/eq.rb +2 -2
- data/test/tc/expand_path.rb +14 -14
- data/test/tc/ext.rb +7 -7
- data/test/tc/fileno.rb +3 -2
- data/test/tc/files_select.rb +1 -1
- data/test/tc/getrec.rb +2 -3
- data/test/tc/gzip.rb +5 -3
- data/test/tc/likeio.rb +5 -5
- data/test/tc/lineno.rb +1 -1
- data/test/tc/lines.rb +4 -4
- data/test/tc/misc.rb +29 -171
- data/test/tc/nolines.rb +4 -2
- data/test/tc/noqae.rb +12 -10
- data/test/tc/overload.rb +1 -2
- data/test/tc/pa.rb +25 -24
- data/test/tc/path_parts.rb +54 -20
- data/test/tc/paths.rb +3 -2
- data/test/tc/piper.rb +32 -31
- data/test/tc/programs_util.rb +9 -9
- data/test/tc/qae.rb +9 -8
- data/test/tc/qae_riovar.rb +9 -8
- data/test/tc/records.rb +3 -2
- data/test/tc/rename.rb +4 -4
- data/test/tc/riorl.rb +19 -19
- data/test/tc/rlparts.ans.yml +1161 -0
- data/test/tc/splitlines.rb +1 -1
- data/test/tc/splitpath.rb +9 -8
- data/test/tc/strio.rb +73 -0
- data/test/tc/symlink.rb +3 -2
- data/test/tc/symlink0.rb +4 -3
- data/test/tc/symlink1.rb +4 -3
- data/test/tc/temp.rb +40 -26
- data/test/tc/tempdir.rb +12 -12
- data/test/tc/testcase.rb +45 -31
- data/test/tc/tonl.rb +0 -1
- data/test/tc/truncate.rb +111 -13
- data/test/tc/yaml.rb +1 -1
- data/test/test_suite.rb +31 -0
- data/test/tests.rb +35 -0
- data/test/tsuite.rb +19 -0
- data/test/uriref/tc/basic.rb +171 -0
- data/test/uriref/tc/build.rb +30 -0
- data/test/uriref/tc/empty.rb +13 -0
- data/test/uriref/tc/route.rb +72 -0
- data/test/uriref/tests.rb +16 -0
- metadata +356 -424
- data/ChangeLog +0 -3122
- data/VERSION +0 -1
- data/build_doc.rb +0 -94
- data/doc/ANNOUNCE +0 -157
- data/doc/RELEASE_NOTES +0 -308
- data/doc/RIOIS +0 -215
- data/doc/generators/template/html/rio.css +0 -428
- data/doc/generators/template/html/rio.rb +0 -523
- data/doc/generators/template/html/ugly.rb +0 -132
- data/doc/pkg_def.rb +0 -60
- data/doc/rdoc/classes/Kernel.html +0 -133
- data/doc/rdoc/classes/Kernel.src/M000234.html +0 -18
- data/doc/rdoc/classes/RIO.html +0 -625
- data/doc/rdoc/classes/RIO.src/M000001.html +0 -18
- data/doc/rdoc/classes/RIO.src/M000002.html +0 -18
- data/doc/rdoc/classes/RIO.src/M000003.html +0 -18
- data/doc/rdoc/classes/RIO/Doc.html +0 -149
- data/doc/rdoc/classes/RIO/Doc/EXAMPLES.html +0 -432
- data/doc/rdoc/classes/RIO/Doc/HOWTO.html +0 -1084
- data/doc/rdoc/classes/RIO/Doc/INDEX.html +0 -368
- data/doc/rdoc/classes/RIO/Doc/INTRO.html +0 -1529
- data/doc/rdoc/classes/RIO/Doc/OPTIONAL.html +0 -221
- data/doc/rdoc/classes/RIO/Doc/SYNOPSIS.html +0 -336
- data/doc/rdoc/classes/RIO/IF.html +0 -165
- data/doc/rdoc/classes/RIO/IF/CSV.html +0 -203
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000129.html +0 -19
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000130.html +0 -16
- data/doc/rdoc/classes/RIO/IF/CSV.src/M000131.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.html +0 -343
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000045.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000046.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000047.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000048.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000049.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000050.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Dir.src/M000051.html +0 -16
- data/doc/rdoc/classes/RIO/IF/File.html +0 -223
- data/doc/rdoc/classes/RIO/IF/File.src/M000216.html +0 -16
- data/doc/rdoc/classes/RIO/IF/File.src/M000217.html +0 -16
- data/doc/rdoc/classes/RIO/IF/File.src/M000218.html +0 -16
- data/doc/rdoc/classes/RIO/IF/File.src/M000219.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.html +0 -572
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000117.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000118.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000119.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000120.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000121.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000122.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000123.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000124.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000125.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000126.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000127.html +0 -16
- data/doc/rdoc/classes/RIO/IF/FileOrDir.src/M000128.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.html +0 -1376
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000052.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000053.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000054.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000055.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000056.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000057.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000058.html +0 -21
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000059.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000060.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000061.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000062.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000063.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000064.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000065.html +0 -21
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000066.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000067.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000068.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000069.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Grande.src/M000070.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.html +0 -810
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000107.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000108.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000109.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000110.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000111.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000112.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000113.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000114.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000115.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeEntry.src/M000116.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.html +0 -1513
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000071.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000072.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000073.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000074.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000075.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000076.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000077.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000078.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000079.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000080.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000081.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000082.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000083.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000084.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000085.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000086.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000087.html +0 -19
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000088.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000089.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000090.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000091.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000092.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000093.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000094.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000095.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000096.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000097.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000098.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000099.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000100.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000101.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000102.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000103.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000104.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000105.html +0 -16
- data/doc/rdoc/classes/RIO/IF/GrandeStream.src/M000106.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.html +0 -999
- data/doc/rdoc/classes/RIO/IF/Path.src/M000132.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000133.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000134.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000135.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000136.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000137.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000138.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000139.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000140.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000141.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000142.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000143.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000144.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000145.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000146.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000147.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000148.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000149.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000150.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000151.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000152.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000153.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000154.html +0 -18
- data/doc/rdoc/classes/RIO/IF/Path.src/M000155.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000156.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000157.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000158.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000159.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000160.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000161.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000162.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Path.src/M000163.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.html +0 -1416
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000004.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000005.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000006.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000007.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000008.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000009.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000010.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000011.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000012.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000013.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000014.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000015.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000016.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000017.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000018.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000019.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000020.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000021.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000022.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000023.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000024.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000025.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000026.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000027.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000028.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000029.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000030.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000031.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000032.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000033.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000034.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000035.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000036.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000037.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000038.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000039.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000040.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000041.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000042.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000043.html +0 -16
- data/doc/rdoc/classes/RIO/IF/RubyIO.src/M000044.html +0 -16
- data/doc/rdoc/classes/RIO/IF/String.html +0 -203
- data/doc/rdoc/classes/RIO/IF/String.src/M000213.html +0 -16
- data/doc/rdoc/classes/RIO/IF/String.src/M000214.html +0 -16
- data/doc/rdoc/classes/RIO/IF/String.src/M000215.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.html +0 -990
- data/doc/rdoc/classes/RIO/IF/Test.src/M000177.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000178.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000179.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000180.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000181.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000182.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000183.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000184.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000185.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000186.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000187.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000188.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000189.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000190.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000191.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000192.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000193.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000194.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000195.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000196.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000197.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000198.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000199.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000200.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000201.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000202.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000203.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000204.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000205.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000206.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000207.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000208.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000209.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000210.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000211.html +0 -16
- data/doc/rdoc/classes/RIO/IF/Test.src/M000212.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.html +0 -517
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000164.html +0 -19
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000165.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000166.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000167.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000168.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000169.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000170.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000171.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000172.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000173.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000174.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000175.html +0 -16
- data/doc/rdoc/classes/RIO/IF/YAML.src/M000176.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.html +0 -508
- data/doc/rdoc/classes/RIO/Rio.src/M000220.html +0 -18
- data/doc/rdoc/classes/RIO/Rio.src/M000221.html +0 -20
- data/doc/rdoc/classes/RIO/Rio.src/M000222.html +0 -27
- data/doc/rdoc/classes/RIO/Rio.src/M000223.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000225.html +0 -19
- data/doc/rdoc/classes/RIO/Rio.src/M000226.html +0 -20
- data/doc/rdoc/classes/RIO/Rio.src/M000227.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000228.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000229.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000230.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000231.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000232.html +0 -16
- data/doc/rdoc/classes/RIO/Rio.src/M000233.html +0 -16
- data/doc/rdoc/created.rid +0 -1
- data/doc/rdoc/files/README.html +0 -232
- data/doc/rdoc/files/lib/rio/constructor_rb.html +0 -141
- data/doc/rdoc/files/lib/rio/doc/EXAMPLES_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/doc/HOWTO_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/doc/INDEX_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/doc/INTRO_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/doc/OPTIONAL_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/doc/SYNOPSIS_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/basic_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/csv_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/dir_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/file_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/fileordir_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/grande_entry_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/grande_rb.html +0 -141
- data/doc/rdoc/files/lib/rio/if/grande_stream_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/internal_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/path_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/rubyio_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/string_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/temp_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/test_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/if/yaml_rb.html +0 -134
- data/doc/rdoc/files/lib/rio/kernel_rb.html +0 -142
- data/doc/rdoc/files/lib/rio_rb.html +0 -153
- data/doc/rdoc/fr_class_index.html +0 -49
- data/doc/rdoc/fr_file_index.html +0 -51
- data/doc/rdoc/fr_method_index.html +0 -260
- data/doc/rdoc/index.html +0 -30
- data/doc/rdoc/rdoc-style.css +0 -428
- data/doc/rfc1738.txt +0 -1403
- data/doc/rfc959.txt +0 -3933
- data/ex/catcsv.rb +0 -64
- data/ex/colx.rb +0 -8
- data/ex/findinruby +0 -15
- data/ex/findruby +0 -14
- data/ex/passwd_report.rb +0 -8
- data/ex/prompt.rb +0 -25
- data/ex/rgb.txt.gz +0 -0
- data/ex/riocat +0 -42
- data/ex/riogunzip +0 -31
- data/ex/riogzip +0 -24
- data/ex/rioprompt.rb +0 -10
- data/ex/targz2zip +0 -17
- data/ex/tonl +0 -10
- data/setup.rb +0 -1360
- data/test/ftp/all.rb +0 -9
- data/test/ftp/anon_copy_data.rb +0 -36
- data/test/ftp/anon_misc.rb +0 -124
- data/test/ftp/anon_read.rb +0 -105
- data/test/ftp/anon_special.rb +0 -68
- data/test/ftp/anon_write.rb +0 -70
- data/test/ftp/ftp2ftp.rb +0 -51
- data/test/tc/abs.rb +0 -355
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.4.2
|
data/build_doc.rb
DELETED
@@ -1,94 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#--
|
3
|
-
# ===============================================================================
|
4
|
-
# Copyright (c) 2005,2006,2007,2008 Christopher Kleckner
|
5
|
-
# All rights reserved
|
6
|
-
#
|
7
|
-
# This file is part of the Rio library for ruby.
|
8
|
-
#
|
9
|
-
# Rio is free software; you can redistribute it and/or modify
|
10
|
-
# it under the terms of the GNU General Public License as published by
|
11
|
-
# the Free Software Foundation; either version 2 of the License, or
|
12
|
-
# (at your option) any later version.
|
13
|
-
#
|
14
|
-
# Rio is distributed in the hope that it will be useful,
|
15
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
-
# GNU General Public License for more details.
|
18
|
-
#
|
19
|
-
# You should have received a copy of the GNU General Public License
|
20
|
-
# along with Rio; if not, write to the Free Software
|
21
|
-
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
22
|
-
# ===============================================================================
|
23
|
-
#
|
24
|
-
# To create the documentation for Rio run the command
|
25
|
-
# ruby build_doc.rb
|
26
|
-
# from the distribution directory.
|
27
|
-
#++
|
28
|
-
|
29
|
-
$:.unshift 'lib'
|
30
|
-
require 'rio'
|
31
|
-
require 'rio/prompt'
|
32
|
-
require 'doc/pkg_def'
|
33
|
-
|
34
|
-
module DFLT
|
35
|
-
RDOC_DIR = rio('doc/rdoc')
|
36
|
-
end
|
37
|
-
|
38
|
-
#puts "Rio interactive RDoc installer."
|
39
|
-
def doc_dir?(d)
|
40
|
-
have_dirs = ['classes','files'].inject(true) {|isdir,f| isdir and rio(d,f).dir?}
|
41
|
-
have_files = ['created.rid','fr_class_index.html',
|
42
|
-
'fr_file_index.html','fr_method_index.html',
|
43
|
-
'index.html','rdoc-style.css'].inject(true) { |isfile,f| isfile && rio(d,f).file? }
|
44
|
-
have_dirs && have_files
|
45
|
-
end
|
46
|
-
|
47
|
-
rdoc_dir = RIO.promptr('Where shall I build the rdoc documentation',DFLT::RDOC_DIR)
|
48
|
-
|
49
|
-
if rdoc_dir.exist?
|
50
|
-
delit = 'y'
|
51
|
-
if rdoc_dir.dir?
|
52
|
-
unless doc_dir?(rdoc_dir)
|
53
|
-
delit = RIO.promptd("Directory '#{rdoc_dir}' exists. Would you like to delete it? ", 'n' )
|
54
|
-
end
|
55
|
-
else
|
56
|
-
delit = RIO.promptd("Non directory '#{rdoc_dir}' exists. Would you like to delete it? ", 'n' )
|
57
|
-
end
|
58
|
-
if delit =~ /^[yY]/
|
59
|
-
rio(rdoc_dir).delete!
|
60
|
-
else
|
61
|
-
exit(-1)
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
|
66
|
-
rdoc_dir = rio(rdoc_dir)
|
67
|
-
|
68
|
-
|
69
|
-
argv = []
|
70
|
-
argv << '--op' << rdoc_dir.to_s
|
71
|
-
argv += PKG::RDOC_OPTIONS
|
72
|
-
argv += PKG::FILES::DOC
|
73
|
-
|
74
|
-
require 'rdoc/rdoc'
|
75
|
-
begin
|
76
|
-
r = RDoc::RDoc.new
|
77
|
-
r.document(argv)
|
78
|
-
rescue RDoc::RDocError => e
|
79
|
-
$stderr.puts e.message
|
80
|
-
exit(1)
|
81
|
-
end
|
82
|
-
|
83
|
-
docindex = (rdoc_dir/'index.html').abs.to_url
|
84
|
-
msg = "Please point your browser at '#{docindex}'"
|
85
|
-
lin = ">" + ">" * (msg.length+2) + ">"
|
86
|
-
|
87
|
-
puts
|
88
|
-
puts lin
|
89
|
-
puts "> " + msg + " >"
|
90
|
-
puts lin
|
91
|
-
__END__
|
92
|
-
|
93
|
-
|
94
|
-
|
data/doc/ANNOUNCE
DELETED
@@ -1,157 +0,0 @@
|
|
1
|
-
Rio 0.4.1
|
2
|
-
|
3
|
-
= Rio - Ruby I/O Facilitator
|
4
|
-
|
5
|
-
fa-cil-i-tate: To make easy or easier.
|
6
|
-
|
7
|
-
== Overview
|
8
|
-
|
9
|
-
Rio is a facade for most of the standard ruby classes that deal with
|
10
|
-
I/O; providing a simple, intuitive, succinct interface to the
|
11
|
-
functionality provided by IO, File, Dir, Pathname, FileUtils,
|
12
|
-
Tempfile, StringIO, OpenURI and others. Rio also provides an
|
13
|
-
application level interface which allows many common I/O idioms to be
|
14
|
-
expressed succinctly.
|
15
|
-
|
16
|
-
|
17
|
-
== SYNOPSIS
|
18
|
-
|
19
|
-
For the following assume:
|
20
|
-
astring = ""
|
21
|
-
anarray = []
|
22
|
-
|
23
|
-
Iterate over the .rb files in a directory.
|
24
|
-
rio('adir').files('*.rb') { |entrio| ... }
|
25
|
-
|
26
|
-
Return an array of the .rb files in a directory.
|
27
|
-
anarray = rio('adir').files['*.rb']
|
28
|
-
|
29
|
-
Copy the .rb files in a directory.to another directory.
|
30
|
-
rio('adir').files('*.rb') > rio('another_directory')
|
31
|
-
|
32
|
-
Iterate over the .rb files in a directory and its subdirectories.
|
33
|
-
rio('adir').all.files('*.rb') { |entrio| ... }
|
34
|
-
|
35
|
-
Return an array of the .rb files in a directory and its
|
36
|
-
subdirectories.
|
37
|
-
anarray = rio('adir').all.files['*.rb']
|
38
|
-
|
39
|
-
Copy or append a file to a string
|
40
|
-
rio('afile') > astring # copy
|
41
|
-
rio('afile') >> astring # append
|
42
|
-
|
43
|
-
Copy or append a string to a file
|
44
|
-
rio('afile') < astring # copy
|
45
|
-
rio('afile') << astring # append
|
46
|
-
|
47
|
-
Copy or append the lines of a file to an array
|
48
|
-
rio('afile') > anarray
|
49
|
-
rio('afile') >> anarray
|
50
|
-
|
51
|
-
Copy or append a file to another file
|
52
|
-
rio('afile') > rio('another_file')
|
53
|
-
rio('afile') >> rio('another_file')
|
54
|
-
|
55
|
-
Copy a file to a directory
|
56
|
-
rio('adir') << rio('afile')
|
57
|
-
|
58
|
-
Copy a directory to another directory
|
59
|
-
rio('adir') >> rio('another_directory')
|
60
|
-
|
61
|
-
Copy a web-page to a file
|
62
|
-
rio('http://rubydoc.org/') > rio('afile')
|
63
|
-
|
64
|
-
Read a web-page into a string
|
65
|
-
astring = rio('http://rubydoc.org/').read
|
66
|
-
|
67
|
-
Ways to get the chomped lines of a file into an array
|
68
|
-
anarray = rio('afile').chomp[] # subscript operator
|
69
|
-
rio('afile').chomp > anarray # copy-to operator
|
70
|
-
anarray = rio('afile').chomp.to_a # to_a
|
71
|
-
anarray = rio('afile').chomp.readlines # IO#readlines
|
72
|
-
|
73
|
-
Iterate over selected lines of a file
|
74
|
-
rio('adir').lines(0..3) { |aline| ... } # a range of lines
|
75
|
-
rio('adir').lines(/re/) { |aline| ... } # by regular expression
|
76
|
-
rio('adir').lines(0..3,/re/) { |aline| ... } # or both
|
77
|
-
|
78
|
-
Return selected lines of a file as an array
|
79
|
-
rio('adir').lines[0..3] # a range of lines
|
80
|
-
rio('adir').lines[/re/] # by regular expression
|
81
|
-
rio('adir').lines[0..3,/re/] # or both
|
82
|
-
|
83
|
-
Iterate over selected chomped lines of a file
|
84
|
-
rio('adir').chomp.lines(0..3) { |aline| ... } # a range of lines
|
85
|
-
rio('adir').chomp.lines(/re/) { |aline| ... } # by regular expression
|
86
|
-
|
87
|
-
Return selected chomped lines of a file as an array
|
88
|
-
rio('adir').chomp[0..3] # a range of lines
|
89
|
-
rio('adir').chomp[/re/] # by regular expression
|
90
|
-
|
91
|
-
Copy a gzipped file un-gzipping it
|
92
|
-
rio('afile.gz').gzip > rio('afile')
|
93
|
-
|
94
|
-
Copy a plain file, gzipping it
|
95
|
-
rio('afile.gz').gzip < rio('afile')
|
96
|
-
|
97
|
-
Copy a file from a ftp server into a local file un-gzipping it
|
98
|
-
rio('ftp://host/afile.gz').gzip > rio('afile')
|
99
|
-
|
100
|
-
Return an array of .rb files excluding symlinks to .rb files
|
101
|
-
rio('adir').files('*.rb').skip[:symlink?]
|
102
|
-
|
103
|
-
Put the first 10 chomped lines of a gzipped file into an array
|
104
|
-
anarray = rio('afile.gz').chomp.gzip[0...10]
|
105
|
-
|
106
|
-
Copy lines 0 and 3 thru 5 of a gzipped file on an ftp server to stdout
|
107
|
-
rio('ftp://host/afile.gz').gzip.lines(0,3..5) > ?-
|
108
|
-
|
109
|
-
Return an array of files in a directory and its subdirectories,
|
110
|
-
without descending into .svn directories.
|
111
|
-
rio('adir').norecurse(/^\.svn$/).files[]
|
112
|
-
|
113
|
-
Iterate over the non-empty, non-comment chomped lines of a file
|
114
|
-
rio('afile').chomp.skip(:empty?,/^\s*#/) { |line| ... }
|
115
|
-
|
116
|
-
Copy the output of th ps command into an array, skipping the header
|
117
|
-
line and the ps command entry
|
118
|
-
rio(?-,'ps -a').skiplines(0,/ps$/) > anarray
|
119
|
-
|
120
|
-
Prompt for input and return what was typed
|
121
|
-
ans = rio(?-).print("Type Something: ").chomp.gets
|
122
|
-
|
123
|
-
Change the extension of all .htm files in a directory and its
|
124
|
-
subdirectories to .html
|
125
|
-
rio('adir').rename.all.files('*.htm') do |htmfile|
|
126
|
-
htmfile.extname = '.html'
|
127
|
-
end
|
128
|
-
|
129
|
-
Copy a CSV file, changing the separator to a semicolon
|
130
|
-
rio('comma.csv').csv > rio('semicolon.csv').csv(';')
|
131
|
-
|
132
|
-
Iterate through a CSVfile with each line parsed into an array
|
133
|
-
rio('afile.csv').csv { |array_of_fields| ...}
|
134
|
-
|
135
|
-
Create a tab separated file of accounts in a UNIX passwd file,
|
136
|
-
listing only the username, uid, and realname fields
|
137
|
-
rio('/etc/passwd').csv(':').columns(0,2,4) > rio('rpt').csv("\t")
|
138
|
-
|
139
|
-
Pipe multiple commands
|
140
|
-
rio('afile') | rio(?-,'acmd') | 'another_cmd' | ?-
|
141
|
-
|
142
|
-
== Contact
|
143
|
-
|
144
|
-
Project:: http://rubyforge.org/projects/rio/
|
145
|
-
Documentation:: http://rio.rubyforge.org/
|
146
|
-
Bugs:: http://rubyforge.org/tracker/?group_id=821
|
147
|
-
Email:: rio4ruby@rubyforge.org
|
148
|
-
Blog:: http://rio4ruby.blogspot.com
|
149
|
-
|
150
|
-
== Copyright
|
151
|
-
Copyright (c) 2005,2006,2007,2008 Christopher Kleckner. All rights reserved
|
152
|
-
|
153
|
-
== License
|
154
|
-
Rio is released under the GNU General Public License
|
155
|
-
(http://www.gnu.org/licenses/gpl.html)
|
156
|
-
|
157
|
-
-Christopher Kleckner
|
data/doc/RELEASE_NOTES
DELETED
@@ -1,308 +0,0 @@
|
|
1
|
-
=== Rio - Ruby I/O Facilitator
|
2
|
-
|
3
|
-
Rio is a facade for most of the standard ruby classes that deal with
|
4
|
-
I/O; providing a simple, intuitive, succinct interface to the
|
5
|
-
functionality provided by IO, File, Dir, Pathname, FileUtils,
|
6
|
-
Tempfile, StringIO, OpenURI and others. Rio also provides an
|
7
|
-
application level interface which allows many common I/O idioms to be
|
8
|
-
expressed succinctly.
|
9
|
-
|
10
|
-
fa-cil-i-tate: To make easy or easier.
|
11
|
-
|
12
|
-
To create the documentation for Rio run the command
|
13
|
-
ruby build_doc.rb
|
14
|
-
from the distribution directory.
|
15
|
-
|
16
|
-
Then point your browser at the 'doc/rdoc' directory.
|
17
|
-
|
18
|
-
Suggested Reading
|
19
|
-
* RIO::Doc::SYNOPSIS
|
20
|
-
* RIO::Doc::INTRO
|
21
|
-
* RIO::Doc::HOWTO
|
22
|
-
* RIO::Rio
|
23
|
-
|
24
|
-
== New for version 0.4.1
|
25
|
-
* Bug fixes to better handle file system paths with URI special
|
26
|
-
characters.
|
27
|
-
* Other bug fixes.
|
28
|
-
|
29
|
-
== New for version 0.4.0
|
30
|
-
* Alpha.
|
31
|
-
|
32
|
-
|
33
|
-
== New for version 0.3.9
|
34
|
-
* Bug fixes, code cleanup.
|
35
|
-
* See Rio#split
|
36
|
-
|
37
|
-
|
38
|
-
== New for version 0.3.8
|
39
|
-
* Enhanced support for FTP file-systems. All of Rio's most powerful
|
40
|
-
idioms are now supported seamlessly on FTP servers.
|
41
|
-
|
42
|
-
# copy a file from or to an FTP server
|
43
|
-
rio('ftp://ahost/adir/afile') > rio('localfile') # server -> local file
|
44
|
-
rio('ftp://ahost/adir/afile') < rio('localfile') # local file -> server
|
45
|
-
|
46
|
-
# copy an entire directory structure from or to an FTP server
|
47
|
-
rio('ftp://ahost/adir') > rio('localdir') # server -> local directory
|
48
|
-
rio('ftp://ahost/adir') < rio('localdir') # local directory -> server
|
49
|
-
|
50
|
-
All of Rio's grande selection and filtering options are available for
|
51
|
-
files and directories on FTP servers.
|
52
|
-
|
53
|
-
# create a gzipped copy of a web page on an ftp server
|
54
|
-
rio('ftp://ftphost/f.html.gz').gzip < rio('http://httphost/f.html')
|
55
|
-
|
56
|
-
# dump the first 10 lines of a gzipped log file on an FTP server to stdout
|
57
|
-
rio('ftp://ftphost/logfile.txt').lines(0...10) > ?-
|
58
|
-
|
59
|
-
# iterate through the entries of a directory on an FTP server
|
60
|
-
rio('ftp://ftphost/adir').entries { |entrio| ... }
|
61
|
-
|
62
|
-
# get an array of all .rb files on an ftp server
|
63
|
-
rb_files = rio('ftp://ftphost/').all.files['*.rb']
|
64
|
-
|
65
|
-
* More tests
|
66
|
-
* Bug fixes
|
67
|
-
|
68
|
-
== Version 0.3.7
|
69
|
-
* Maintenance release
|
70
|
-
|
71
|
-
== New for version 0.3.6
|
72
|
-
* Pipe operator and command pipes
|
73
|
-
|
74
|
-
Pipe multiple commands
|
75
|
-
rio('afile') | rio(?-,'acmd') | 'another_cmd' | ?-
|
76
|
-
|
77
|
-
Run the same series of commands, with different input and/or output
|
78
|
-
cmdpipe = rio(?-,'acmd') | rio(?-,'another_cmd')
|
79
|
-
rio('infile1') | cmdpipe | rio('outfile1')
|
80
|
-
rio('infile2') | cmdpipe | rio('outfile2')
|
81
|
-
|
82
|
-
cmdpipe2 = rio(?|,'cmd1','cmd2',rio('outfile')) # create a cmdpipe Rio
|
83
|
-
rio('infile1') | cmdpipe2 # run with input coming from a file
|
84
|
-
rio(?-) | cmdpipe2 # same commands with input from stdin
|
85
|
-
|
86
|
-
|
87
|
-
== New for version 0.3.5
|
88
|
-
* Partial support for MS Windows drive and UNC path specifications
|
89
|
-
|
90
|
-
The separator must be '/'. Back-slashes are not supported.
|
91
|
-
|
92
|
-
Drives and UNC paths may be specified as expected:
|
93
|
-
rio("D:/adir/afile")
|
94
|
-
rio('//ahost/adir/afile')
|
95
|
-
|
96
|
-
This support has introduced a change in the behaviour
|
97
|
-
of Rio#path. Rio#path now returns the path on the
|
98
|
-
file-system for Rios that are on the file-system; returns the path
|
99
|
-
portion of the URL for FTP, HTTP and other Rios that
|
100
|
-
have a path, and return nil for Rios that have no path
|
101
|
-
rio('/a/b/c').path #==> "/a/b/c"
|
102
|
-
rio('b/c').path #==> "b/c"
|
103
|
-
rio('C:/b/c').path #==> "C:/b/c"
|
104
|
-
rio('//ahost/a/b').path #==> "//ahost/a/b"
|
105
|
-
rio('file://ahost/a/b').path #==> "//ahost/a/b"
|
106
|
-
rio('file:///a/b').path #==> "/a/b"
|
107
|
-
rio('file://localhost/a/b').path #==> "/a/b"
|
108
|
-
rio('http://ahost/index.html').path #==> "/index.html"
|
109
|
-
rio('stdin:').path #==> nil
|
110
|
-
|
111
|
-
|
112
|
-
== New for version 0.3.4
|
113
|
-
* New Grande Selection parameter.
|
114
|
-
|
115
|
-
A major weakness of Rio's selection methods (lines, files, etc.)
|
116
|
-
has always been that it only implemented a logical OR.
|
117
|
-
|
118
|
-
rio('afile').lines(0..10,/Rio/) {...}
|
119
|
-
iterates through lines that are in the range 0..10 OR
|
120
|
-
contain 'Rio'.
|
121
|
-
|
122
|
-
rio('adir').files(:executable?,'*.rb') {...}
|
123
|
-
iterates through files that are executable OR match '*.rb'
|
124
|
-
|
125
|
-
Selecting files that matched both required using a proc.
|
126
|
-
rio('adir').files(proc{ |f| f.executable? and f.fnmatch?('*.rb')}) {...}
|
127
|
-
|
128
|
-
Rio's grande selection methods will now accept an array of conditions
|
129
|
-
which must all be matched, in order to be selected. A logical AND.
|
130
|
-
|
131
|
-
rio('adir').files([:executable?,'*.rb']) {...}
|
132
|
-
|
133
|
-
The array, of course, need not be the only paramter.
|
134
|
-
|
135
|
-
rio('adir').files('*.exe',[:executable?,'*.rb']) {...}
|
136
|
-
|
137
|
-
selects .exe files and .rb files that are executable.
|
138
|
-
|
139
|
-
* Renamed some of grande rejection methods.
|
140
|
-
(based on a suggestion by Gavin Sinclair)
|
141
|
-
nolines => skiplines
|
142
|
-
nofiles => skipfiles
|
143
|
-
etc.
|
144
|
-
|
145
|
-
* New skip() grande method
|
146
|
-
rio('afile').skip.lines(/Rio/) # same as skiplines(/Rio/)
|
147
|
-
rio('afile').lines(/Rio/).skip(0..9) # lines with 'Rio', exclude
|
148
|
-
# the first ten lines
|
149
|
-
|
150
|
-
* Alternative syntaxes for creating Rios that have no path.
|
151
|
-
|
152
|
-
rio(?-) # create a Rio refering to stdio
|
153
|
-
rio(:stdio) # same thing.
|
154
|
-
rio.stdio # same thing
|
155
|
-
RIO.stdio # ditto
|
156
|
-
RIO::Rio.stdio # once again
|
157
|
-
|
158
|
-
* From Pathname added
|
159
|
-
* root?
|
160
|
-
* mountpoint?
|
161
|
-
* realpath
|
162
|
-
* cleanpath
|
163
|
-
|
164
|
-
* Removed Rio#slurp in favor of Rio#contents.
|
165
|
-
|
166
|
-
|
167
|
-
* Added aliases for the copy operators. (suggested by Dave Burt)
|
168
|
-
* copy_to >
|
169
|
-
* append_to >>
|
170
|
-
* copy_from <
|
171
|
-
* append_from <<
|
172
|
-
|
173
|
-
|
174
|
-
* Bug fixes and corrections
|
175
|
-
|
176
|
-
Project:: http://rubyforge.org/projects/rio/
|
177
|
-
Documentation:: http://rio.rubyforge.org/
|
178
|
-
Bugs:: http://rubyforge.org/tracker/?group_id=821
|
179
|
-
Email:: rio4ruby@rubyforge.org
|
180
|
-
|
181
|
-
== New for version 0.3.3
|
182
|
-
* Expanded support and documentation for CSV files
|
183
|
-
Examples:
|
184
|
-
* Copy, changing the separator to a semicolon
|
185
|
-
rio('comma.csv').csv > rio('semicolon.csv').csv(';')
|
186
|
-
* Iterate through a file with each line parsed into an array
|
187
|
-
rio('afile.csv').csv { |array_of_fields| ...}
|
188
|
-
* Create an array of arrays of selected fields
|
189
|
-
array_of_arrays = rio('afile.csv').csv.columns(1..3,7).to_a
|
190
|
-
* Create a tab separated file of accounts in a UNIX passwd file,
|
191
|
-
listing only the username, uid, and realname fields
|
192
|
-
rio('/etc/passwd').csv(':').columns(0,2,4) > rio('report).csv("\t")
|
193
|
-
|
194
|
-
Project:: http://rubyforge.org/projects/rio/
|
195
|
-
Documentation:: http://rio.rubyforge.org/
|
196
|
-
Bugs:: http://rubyforge.org/tracker/?group_id=821
|
197
|
-
|
198
|
-
== New for version 0.3.2
|
199
|
-
|
200
|
-
* Based on a suggestion by Wybo Decker and code attributed to Nobu Nokada,
|
201
|
-
Rio now supports temporary directories in addition to temporary files.
|
202
|
-
* Bug fixes
|
203
|
-
* More tests and documentation.
|
204
|
-
|
205
|
-
== SYNOPSIS
|
206
|
-
|
207
|
-
For the following assume:
|
208
|
-
astring = ""
|
209
|
-
anarray = []
|
210
|
-
|
211
|
-
Copy a file into a string
|
212
|
-
rio('afile') > astring
|
213
|
-
|
214
|
-
Copy the chomped lines of a file into an array
|
215
|
-
rio('afile').chomp > anarray
|
216
|
-
|
217
|
-
Copy a file into another file
|
218
|
-
rio('afile') > rio('another_file')
|
219
|
-
|
220
|
-
Copy a file into a directory
|
221
|
-
rio('afile') > rio('adir')
|
222
|
-
|
223
|
-
Copy an entire directory structure into another directory
|
224
|
-
rio('adir') > rio('another_directory')
|
225
|
-
|
226
|
-
Copy a web page into a file
|
227
|
-
rio('http://rubydoc.org/') > rio('afile')
|
228
|
-
|
229
|
-
Copy a file from a ftp server into a file
|
230
|
-
rio('ftp://host/afile.gz') > rio('afile.gz')
|
231
|
-
|
232
|
-
Copy a gzipped file un-gzipping it
|
233
|
-
rio('afile.gz').gzip > rio('afile')
|
234
|
-
|
235
|
-
Copy a file from a ftp server into a local file un-gzipping it
|
236
|
-
rio('ftp://host/afile.gz').gzip > rio('afile')
|
237
|
-
|
238
|
-
Copy a plain file, gzipping it
|
239
|
-
rio('afile.gz').gzip < rio('afile')
|
240
|
-
|
241
|
-
Iterate over the entries in a directory
|
242
|
-
rio('adir').entries { |entrio| ... }
|
243
|
-
|
244
|
-
Iterate over only the files in a directory
|
245
|
-
rio('adir').files { |entrio| ... }
|
246
|
-
|
247
|
-
Iterate over only the .rb files in a directory
|
248
|
-
rio('adir').files('*.rb') { |entrio| ... }
|
249
|
-
|
250
|
-
Create an array of the .rb entries in a directory
|
251
|
-
anarray = rio('adir')['*.rb']
|
252
|
-
|
253
|
-
Iterate over the .rb files in a directory and its subdirectories
|
254
|
-
rio('adir').all.files('*.rb') { |entrio| ... }
|
255
|
-
|
256
|
-
Create an array of the .rb entries in a directory and its subdirectories
|
257
|
-
anarray = rio('adir').all['*.rb']
|
258
|
-
|
259
|
-
Create an array of the .rb files in a directory and its subdirectories
|
260
|
-
anarray = rio('adir').all.files['*.rb']
|
261
|
-
|
262
|
-
Copy an entire directory structure but only the .rb files from a directory and its subdirectories
|
263
|
-
into another directory
|
264
|
-
rio('adir').dirs.files('*.rb') > rio('another_directory')
|
265
|
-
|
266
|
-
Iterate over the chomped lines of a file
|
267
|
-
rio('afile').chomp.lines { |line| ... }
|
268
|
-
|
269
|
-
Put the chomped lines of a file into an array
|
270
|
-
anarray = rio('afile').chomp.lines[]
|
271
|
-
|
272
|
-
Iterate over the first 10 chomped lines of a file
|
273
|
-
rio('afile').chomp.lines(0..9) { |line| ... }
|
274
|
-
|
275
|
-
Put the first 10 chomped lines of a file into an array
|
276
|
-
anarray = rio('afile').chomp.lines[0..9]
|
277
|
-
|
278
|
-
Copy the first 10 lines of a file into another file
|
279
|
-
rio('afile').lines(0..9) > rio('another_file')
|
280
|
-
|
281
|
-
Copy the first 10 lines of a file to stdout
|
282
|
-
rio('afile').lines(0..9) > rio(?-)
|
283
|
-
|
284
|
-
Copy the first 10 lines of a gzipped file to stdout
|
285
|
-
rio('afile.gz').gzip.lines(0..9) > rio(?-)
|
286
|
-
|
287
|
-
Copy the first 10 lines of a gzipped file on an ftp server to stdout
|
288
|
-
rio('ftp://host/afile.gz').gzip.lines(0..9) > rio(?-)
|
289
|
-
|
290
|
-
Put the first 100 chomped lines of a gzipped file into an array
|
291
|
-
anarray = rio('afile.gz').gzip[0...100]
|
292
|
-
|
293
|
-
Copy the output of th ps command into an array, skipping the header line and the ps command entry
|
294
|
-
rio(?-,'ps -a').skiplines(0,/ps$/) > anarray
|
295
|
-
|
296
|
-
Prompt for input and return what was typed
|
297
|
-
ans = rio(?-).print("Type Something: ").chomp.gets
|
298
|
-
|
299
|
-
Change the extension of all files with the extension '.htm' in a directory and its
|
300
|
-
subdirectories to have the extension '.html'
|
301
|
-
rio('adir').rename.all.files('*.htm') do |htmfile|
|
302
|
-
htmfile.extname = '.html'
|
303
|
-
end
|
304
|
-
|
305
|
-
Create a symbolic link 'asymlink' in 'adir' which refers to 'adir/afile'
|
306
|
-
rio('adir/afile').symlinke('adir/asymlink')
|
307
|
-
|
308
|
-
|