rb2exe 0.1.11 → 0.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1008) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +22 -0
  3. data/README.md +18 -22
  4. data/bin/build +24 -0
  5. data/bin/decompress +17 -0
  6. data/bin/installer +19 -0
  7. data/bin/rb2exe +3 -0
  8. data/bin/rb2exe.rb +49 -0
  9. data/bin/traveling-ruby-2.2.2/bin.real/bundle +23 -0
  10. data/bin/traveling-ruby-2.2.2/bin.real/bundler +23 -0
  11. data/bin/traveling-ruby-2.2.2/bin.real/gem +25 -0
  12. data/bin/traveling-ruby-2.2.2/bin.real/irb +11 -0
  13. data/bin/traveling-ruby-2.2.2/bin.real/nokogiri +23 -0
  14. data/bin/traveling-ruby-2.2.2/bin.real/posix-spawn-benchmark +23 -0
  15. data/bin/traveling-ruby-2.2.2/bin.real/puma +23 -0
  16. data/bin/traveling-ruby-2.2.2/bin.real/pumactl +23 -0
  17. data/bin/traveling-ruby-2.2.2/bin.real/rackup +23 -0
  18. data/bin/traveling-ruby-2.2.2/bin.real/rake +33 -0
  19. data/bin/traveling-ruby-2.2.2/bin.real/redcarpet +23 -0
  20. data/bin/traveling-ruby-2.2.2/bin.real/redcloth +23 -0
  21. data/bin/traveling-ruby-2.2.2/bin.real/ruby +0 -0
  22. data/bin/traveling-ruby-2.2.2/bin.real/thin +23 -0
  23. data/bin/traveling-ruby-2.2.2/bin.real/unicorn +23 -0
  24. data/bin/traveling-ruby-2.2.2/bin.real/unicorn_rails +23 -0
  25. data/bin/traveling-ruby-2.2.2/bin/gem +6 -0
  26. data/bin/traveling-ruby-2.2.2/bin/irb +6 -0
  27. data/bin/traveling-ruby-2.2.2/bin/rake +6 -0
  28. data/bin/traveling-ruby-2.2.2/bin/ruby +6 -0
  29. data/bin/traveling-ruby-2.2.2/bin/ruby_environment +33 -0
  30. data/bin/traveling-ruby-2.2.2/info/GEM_EXTENSION_API_VERSION +1 -0
  31. data/bin/traveling-ruby-2.2.2/info/GEM_PLATFORM +1 -0
  32. data/bin/traveling-ruby-2.2.2/info/RUBY_ARCH +1 -0
  33. data/bin/traveling-ruby-2.2.2/info/RUBY_COMPAT_VERSION +1 -0
  34. data/bin/traveling-ruby-2.2.2/lib/ca-bundle.crt +13885 -0
  35. data/bin/traveling-ruby-2.2.2/lib/libffi.so.6 +0 -0
  36. data/bin/traveling-ruby-2.2.2/lib/libreadline.so.5 +0 -0
  37. data/bin/traveling-ruby-2.2.2/lib/libtermcap.so.2 +0 -0
  38. data/bin/traveling-ruby-2.2.2/lib/libz.so.1 +0 -0
  39. data/bin/traveling-ruby-2.2.2/lib/restore_environment.rb +17 -0
  40. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/English.rb +185 -0
  41. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/abbrev.rb +131 -0
  42. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/base64.rb +91 -0
  43. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/benchmark.rb +557 -0
  44. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/bigdecimal/jacobian.rb +87 -0
  45. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/bigdecimal/ludcmp.rb +88 -0
  46. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/bigdecimal/math.rb +231 -0
  47. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/bigdecimal/newton.rb +79 -0
  48. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/bigdecimal/util.rb +127 -0
  49. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi.rb +295 -0
  50. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/cookie.rb +170 -0
  51. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/core.rb +880 -0
  52. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/html.rb +1034 -0
  53. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/session.rb +531 -0
  54. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/session/pstore.rb +100 -0
  55. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cgi/util.rb +194 -0
  56. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/cmath.rb +400 -0
  57. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/csv.rb +2341 -0
  58. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/date.rb +60 -0
  59. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/debug.rb +1087 -0
  60. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/delegate.rb +417 -0
  61. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/digest.rb +108 -0
  62. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/digest/sha2.rb +107 -0
  63. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb.rb +2 -0
  64. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/acl.rb +232 -0
  65. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/drb.rb +1864 -0
  66. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/eq.rb +14 -0
  67. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/extserv.rb +43 -0
  68. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/extservm.rb +93 -0
  69. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/gw.rb +160 -0
  70. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/invokemethod.rb +34 -0
  71. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/observer.rb +25 -0
  72. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/ssl.rb +345 -0
  73. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/timeridconv.rb +101 -0
  74. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/drb/unix.rb +117 -0
  75. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/e2mmap.rb +172 -0
  76. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/erb.rb +1022 -0
  77. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/expect.rb +71 -0
  78. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle.rb +55 -0
  79. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/closure.rb +48 -0
  80. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/cparser.rb +176 -0
  81. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/function.rb +17 -0
  82. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/import.rb +314 -0
  83. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/pack.rb +128 -0
  84. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/struct.rb +243 -0
  85. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/types.rb +71 -0
  86. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fiddle/value.rb +112 -0
  87. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb +1761 -0
  88. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/find.rb +88 -0
  89. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/forwardable.rb +289 -0
  90. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/getoptlong.rb +612 -0
  91. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/bigdecimal.so +0 -0
  92. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/continuation.so +0 -0
  93. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/date_core.so +0 -0
  94. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest.so +0 -0
  95. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest/bubblebabble.so +0 -0
  96. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest/md5.so +0 -0
  97. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest/rmd160.so +0 -0
  98. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest/sha1.so +0 -0
  99. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/digest/sha2.so +0 -0
  100. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/big5.so +0 -0
  101. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/cp949.so +0 -0
  102. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/emacs_mule.so +0 -0
  103. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/encdb.so +0 -0
  104. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/euc_jp.so +0 -0
  105. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/euc_kr.so +0 -0
  106. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/euc_tw.so +0 -0
  107. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/gb18030.so +0 -0
  108. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/gb2312.so +0 -0
  109. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/gbk.so +0 -0
  110. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_1.so +0 -0
  111. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_10.so +0 -0
  112. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_11.so +0 -0
  113. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_13.so +0 -0
  114. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_14.so +0 -0
  115. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_15.so +0 -0
  116. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_16.so +0 -0
  117. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_2.so +0 -0
  118. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_3.so +0 -0
  119. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_4.so +0 -0
  120. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_5.so +0 -0
  121. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_6.so +0 -0
  122. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_7.so +0 -0
  123. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_8.so +0 -0
  124. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/iso_8859_9.so +0 -0
  125. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/koi8_r.so +0 -0
  126. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/koi8_u.so +0 -0
  127. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/shift_jis.so +0 -0
  128. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/big5.so +0 -0
  129. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/chinese.so +0 -0
  130. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/emoji.so +0 -0
  131. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/emoji_iso2022_kddi.so +0 -0
  132. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/emoji_sjis_docomo.so +0 -0
  133. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/emoji_sjis_kddi.so +0 -0
  134. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/emoji_sjis_softbank.so +0 -0
  135. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/escape.so +0 -0
  136. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/gb18030.so +0 -0
  137. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/gbk.so +0 -0
  138. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/iso2022.so +0 -0
  139. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/japanese.so +0 -0
  140. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/japanese_euc.so +0 -0
  141. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/japanese_sjis.so +0 -0
  142. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/korean.so +0 -0
  143. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/single_byte.so +0 -0
  144. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/transdb.so +0 -0
  145. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/utf8_mac.so +0 -0
  146. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/trans/utf_16_32.so +0 -0
  147. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/utf_16be.so +0 -0
  148. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/utf_16le.so +0 -0
  149. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/utf_32be.so +0 -0
  150. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/utf_32le.so +0 -0
  151. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/windows_1251.so +0 -0
  152. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/enc/windows_31j.so +0 -0
  153. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/etc.so +0 -0
  154. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/fcntl.so +0 -0
  155. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/fiber.so +0 -0
  156. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/fiddle.so +0 -0
  157. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/io/console.so +0 -0
  158. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/io/nonblock.so +0 -0
  159. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/io/wait.so +0 -0
  160. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/json/ext/generator.so +0 -0
  161. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/json/ext/parser.so +0 -0
  162. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/mathn/complex.so +0 -0
  163. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/mathn/rational.so +0 -0
  164. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/nkf.so +0 -0
  165. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/objspace.so +0 -0
  166. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/openssl.so +0 -0
  167. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/pathname.so +0 -0
  168. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/psych.so +0 -0
  169. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/pty.so +0 -0
  170. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/racc/cparse.so +0 -0
  171. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/rbconfig.rb +279 -0
  172. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/rbconfig/sizeof.so +0 -0
  173. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/readline.so +0 -0
  174. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/ripper.so +0 -0
  175. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/socket.so +0 -0
  176. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/stringio.so +0 -0
  177. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/strscan.so +0 -0
  178. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/syslog.so +0 -0
  179. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/thread.so +0 -0
  180. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/i686-linux/zlib.so +0 -0
  181. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/io/console/size.rb +22 -0
  182. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ipaddr.rb +658 -0
  183. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb.rb +703 -0
  184. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/chws.rb +33 -0
  185. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/fork.rb +38 -0
  186. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/help.rb +41 -0
  187. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/load.rb +66 -0
  188. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/nop.rb +38 -0
  189. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/pushws.rb +40 -0
  190. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/cmd/subirb.rb +42 -0
  191. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/completion.rb +227 -0
  192. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/context.rb +419 -0
  193. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/change-ws.rb +45 -0
  194. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/history.rb +118 -0
  195. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/loader.rb +128 -0
  196. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/math-mode.rb +47 -0
  197. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/multi-irb.rb +265 -0
  198. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/save-history.rb +103 -0
  199. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/tracer.rb +71 -0
  200. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/use-loader.rb +73 -0
  201. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ext/workspaces.rb +66 -0
  202. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/extend-command.rb +308 -0
  203. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/frame.rb +80 -0
  204. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/help.rb +36 -0
  205. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/init.rb +304 -0
  206. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/input-method.rb +191 -0
  207. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/inspector.rb +131 -0
  208. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/lc/error.rb +31 -0
  209. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/lc/help-message +50 -0
  210. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/lc/ja/encoding_aliases.rb +10 -0
  211. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/lc/ja/error.rb +30 -0
  212. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/lc/ja/help-message +53 -0
  213. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/locale.rb +181 -0
  214. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/magic-file.rb +37 -0
  215. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/notifier.rb +231 -0
  216. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/output-method.rb +91 -0
  217. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ruby-lex.rb +1170 -0
  218. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ruby-token.rb +266 -0
  219. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/slex.rb +281 -0
  220. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/src_encoding.rb +4 -0
  221. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/version.rb +15 -0
  222. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/workspace.rb +114 -0
  223. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/ws-for-case-2.rb +14 -0
  224. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/irb/xmp.rb +169 -0
  225. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json.rb +62 -0
  226. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/bigdecimal.rb +28 -0
  227. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/complex.rb +22 -0
  228. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/core.rb +11 -0
  229. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/date.rb +34 -0
  230. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/date_time.rb +50 -0
  231. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/exception.rb +31 -0
  232. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/ostruct.rb +31 -0
  233. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/range.rb +29 -0
  234. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/rational.rb +22 -0
  235. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/regexp.rb +30 -0
  236. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/struct.rb +30 -0
  237. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/symbol.rb +25 -0
  238. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/add/time.rb +38 -0
  239. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/common.rb +484 -0
  240. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/ext.rb +21 -0
  241. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/generic_object.rb +70 -0
  242. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/json/version.rb +8 -0
  243. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/kconv.rb +282 -0
  244. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/logger.rb +737 -0
  245. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/mathn.rb +191 -0
  246. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/matrix.rb +2161 -0
  247. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/matrix/eigenvalue_decomposition.rb +882 -0
  248. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/matrix/lup_decomposition.rb +218 -0
  249. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/mkmf.rb +2677 -0
  250. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/monitor.rb +300 -0
  251. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/mutex_m.rb +111 -0
  252. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/ftp.rb +1126 -0
  253. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http.rb +1559 -0
  254. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/backward.rb +25 -0
  255. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/exceptions.rb +25 -0
  256. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/generic_request.rb +332 -0
  257. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/header.rb +452 -0
  258. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/proxy_delta.rb +16 -0
  259. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/request.rb +20 -0
  260. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/requests.rb +122 -0
  261. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/response.rb +414 -0
  262. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/http/responses.rb +273 -0
  263. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/https.rb +22 -0
  264. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/imap.rb +3616 -0
  265. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/pop.rb +1021 -0
  266. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/protocol.rb +420 -0
  267. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/smtp.rb +1073 -0
  268. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/net/telnet.rb +763 -0
  269. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/observer.rb +203 -0
  270. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/open-uri.rb +801 -0
  271. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/open3.rb +663 -0
  272. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl.rb +24 -0
  273. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/bn.rb +45 -0
  274. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/buffering.rb +457 -0
  275. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/cipher.rb +65 -0
  276. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/config.rb +472 -0
  277. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/digest.rb +88 -0
  278. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/ssl.rb +308 -0
  279. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/openssl/x509.rb +182 -0
  280. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optionparser.rb +1 -0
  281. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse.rb +1997 -0
  282. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/ac.rb +50 -0
  283. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/date.rb +17 -0
  284. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/shellwords.rb +6 -0
  285. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/time.rb +10 -0
  286. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/uri.rb +6 -0
  287. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/optparse/version.rb +70 -0
  288. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ostruct.rb +286 -0
  289. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/pathname.rb +579 -0
  290. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/pp.rb +546 -0
  291. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/prettyprint.rb +554 -0
  292. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/prime.rb +487 -0
  293. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/profile.rb +10 -0
  294. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/profiler.rb +148 -0
  295. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/pstore.rb +484 -0
  296. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych.rb +498 -0
  297. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/class_loader.rb +101 -0
  298. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/coder.rb +94 -0
  299. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/core_ext.rb +35 -0
  300. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/deprecated.rb +85 -0
  301. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/exception.rb +13 -0
  302. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/handler.rb +249 -0
  303. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/handlers/document_stream.rb +22 -0
  304. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/handlers/recorder.rb +39 -0
  305. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/json/ruby_events.rb +19 -0
  306. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/json/stream.rb +16 -0
  307. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/json/tree_builder.rb +12 -0
  308. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/json/yaml_events.rb +29 -0
  309. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes.rb +77 -0
  310. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/alias.rb +18 -0
  311. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/document.rb +60 -0
  312. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/mapping.rb +56 -0
  313. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/node.rb +55 -0
  314. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/scalar.rb +67 -0
  315. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/sequence.rb +81 -0
  316. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/nodes/stream.rb +37 -0
  317. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/omap.rb +4 -0
  318. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/parser.rb +51 -0
  319. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/scalar_scanner.rb +149 -0
  320. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/set.rb +4 -0
  321. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/stream.rb +37 -0
  322. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/streaming.rb +27 -0
  323. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/syntax_error.rb +21 -0
  324. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/tree_builder.rb +96 -0
  325. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors.rb +6 -0
  326. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/depth_first.rb +26 -0
  327. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/emitter.rb +51 -0
  328. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/json_tree.rb +24 -0
  329. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/to_ruby.rb +389 -0
  330. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/visitor.rb +19 -0
  331. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/visitors/yaml_tree.rb +565 -0
  332. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/psych/y.rb +9 -0
  333. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/racc/parser.rb +622 -0
  334. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake.rb +79 -0
  335. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/alt_system.rb +110 -0
  336. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/application.rb +790 -0
  337. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/backtrace.rb +23 -0
  338. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/clean.rb +76 -0
  339. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/cloneable.rb +16 -0
  340. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/compositepublisher.rb +21 -0
  341. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/ftptools.rb +137 -0
  342. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/publisher.rb +81 -0
  343. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/rubyforgepublisher.rb +18 -0
  344. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/sshpublisher.rb +61 -0
  345. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/contrib/sys.rb +4 -0
  346. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/cpu_counter.rb +125 -0
  347. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/default_loader.rb +14 -0
  348. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/dsl_definition.rb +201 -0
  349. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/early_time.rb +21 -0
  350. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ext/core.rb +25 -0
  351. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ext/module.rb +2 -0
  352. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ext/pathname.rb +25 -0
  353. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ext/string.rb +173 -0
  354. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ext/time.rb +16 -0
  355. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/file_creation_task.rb +24 -0
  356. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/file_list.rb +428 -0
  357. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/file_task.rb +46 -0
  358. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/file_utils.rb +128 -0
  359. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/file_utils_ext.rb +144 -0
  360. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/gempackagetask.rb +4 -0
  361. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/invocation_chain.rb +56 -0
  362. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/invocation_exception_mixin.rb +16 -0
  363. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/late_time.rb +17 -0
  364. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/linked_list.rb +103 -0
  365. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/loaders/makefile.rb +40 -0
  366. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/multi_task.rb +13 -0
  367. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/name_space.rb +38 -0
  368. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/packagetask.rb +199 -0
  369. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/pathmap.rb +3 -0
  370. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/phony.rb +15 -0
  371. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/private_reader.rb +20 -0
  372. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/promise.rb +99 -0
  373. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/pseudo_status.rb +29 -0
  374. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/rake_module.rb +38 -0
  375. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/rake_test_loader.rb +22 -0
  376. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/rdoctask.rb +4 -0
  377. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/ruby182_test_unit_fix.rb +29 -0
  378. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/rule_recursion_overflow_error.rb +20 -0
  379. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/runtest.rb +27 -0
  380. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/scope.rb +42 -0
  381. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/task.rb +383 -0
  382. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/task_argument_error.rb +7 -0
  383. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/task_arguments.rb +98 -0
  384. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/task_manager.rb +310 -0
  385. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/tasklib.rb +24 -0
  386. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/testtask.rb +212 -0
  387. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/thread_history_display.rb +48 -0
  388. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/thread_pool.rb +164 -0
  389. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/trace_output.rb +22 -0
  390. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/version.rb +7 -0
  391. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rake/win32.rb +56 -0
  392. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rbconfig/datadir.rb +13 -0
  393. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc.rb +185 -0
  394. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/alias.rb +111 -0
  395. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/anon_class.rb +10 -0
  396. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/any_method.rb +316 -0
  397. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/attr.rb +175 -0
  398. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/class_module.rb +799 -0
  399. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/code_object.rb +429 -0
  400. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/code_objects.rb +5 -0
  401. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/comment.rb +229 -0
  402. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/constant.rb +186 -0
  403. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/context.rb +1211 -0
  404. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/context/section.rb +238 -0
  405. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/cross_reference.rb +183 -0
  406. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/encoding.rb +99 -0
  407. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/erb_partial.rb +18 -0
  408. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/erbio.rb +37 -0
  409. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/extend.rb +9 -0
  410. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/generator.rb +51 -0
  411. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ghost_method.rb +6 -0
  412. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/i18n.rb +9 -0
  413. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/i18n/locale.rb +101 -0
  414. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/i18n/text.rb +125 -0
  415. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/include.rb +9 -0
  416. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/known_classes.rb +72 -0
  417. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markdown.rb +16133 -0
  418. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markdown/entities.rb +2131 -0
  419. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markdown/literals_1_9.rb +420 -0
  420. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup.rb +869 -0
  421. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/attr_changer.rb +22 -0
  422. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/attr_span.rb +29 -0
  423. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/attribute_manager.rb +343 -0
  424. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/attributes.rb +70 -0
  425. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/blank_line.rb +27 -0
  426. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/block_quote.rb +14 -0
  427. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/document.rb +164 -0
  428. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/formatter.rb +264 -0
  429. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/formatter_test_case.rb +767 -0
  430. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/hard_break.rb +31 -0
  431. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/heading.rb +78 -0
  432. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/include.rb +42 -0
  433. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/indented_paragraph.rb +47 -0
  434. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/inline.rb +1 -0
  435. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/list.rb +101 -0
  436. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/list_item.rb +99 -0
  437. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/paragraph.rb +28 -0
  438. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/parser.rb +558 -0
  439. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/pre_process.rb +293 -0
  440. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/raw.rb +69 -0
  441. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/rule.rb +20 -0
  442. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/special.rb +40 -0
  443. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/text_formatter_test_case.rb +114 -0
  444. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_ansi.rb +93 -0
  445. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_bs.rb +78 -0
  446. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_html.rb +398 -0
  447. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_html_crossref.rb +160 -0
  448. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_html_snippet.rb +284 -0
  449. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_joined_paragraph.rb +71 -0
  450. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_label.rb +74 -0
  451. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_markdown.rb +191 -0
  452. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_rdoc.rb +333 -0
  453. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_table_of_contents.rb +87 -0
  454. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_test.rb +69 -0
  455. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/to_tt_only.rb +120 -0
  456. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb +83 -0
  457. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/meta_method.rb +6 -0
  458. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/method_attr.rb +418 -0
  459. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/mixin.rb +120 -0
  460. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/normal_class.rb +92 -0
  461. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/normal_module.rb +73 -0
  462. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/options.rb +1251 -0
  463. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser.rb +310 -0
  464. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/c.rb +1229 -0
  465. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/changelog.rb +198 -0
  466. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/markdown.rb +23 -0
  467. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/rd.rb +22 -0
  468. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/ruby.rb +2160 -0
  469. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/ruby_tools.rb +167 -0
  470. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/simple.rb +61 -0
  471. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/parser/text.rb +11 -0
  472. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rd.rb +99 -0
  473. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rd/block_parser.rb +1055 -0
  474. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rd/inline.rb +71 -0
  475. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rd/inline_parser.rb +1207 -0
  476. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rdoc.rb +570 -0
  477. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/require.rb +51 -0
  478. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri.rb +20 -0
  479. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri/driver.rb +1497 -0
  480. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri/formatter.rb +5 -0
  481. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri/paths.rb +187 -0
  482. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri/store.rb +6 -0
  483. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ri/task.rb +71 -0
  484. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ruby_lex.rb +1377 -0
  485. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/ruby_token.rb +460 -0
  486. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/rubygems_hook.rb +253 -0
  487. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/servlet.rb +441 -0
  488. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/single_class.rb +25 -0
  489. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/stats.rb +461 -0
  490. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/stats/normal.rb +59 -0
  491. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/stats/quiet.rb +59 -0
  492. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/stats/verbose.rb +45 -0
  493. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/store.rb +979 -0
  494. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/task.rb +330 -0
  495. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/test_case.rb +217 -0
  496. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/text.rb +324 -0
  497. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/token_stream.rb +95 -0
  498. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/tom_doc.rb +257 -0
  499. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/top_level.rb +282 -0
  500. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/resolv-replace.rb +74 -0
  501. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/resolv.rb +2836 -0
  502. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/attlistdecl.rb +62 -0
  503. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/attribute.rb +191 -0
  504. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/cdata.rb +67 -0
  505. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/child.rb +96 -0
  506. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/comment.rb +79 -0
  507. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/doctype.rb +269 -0
  508. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/document.rb +290 -0
  509. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/dtd/attlistdecl.rb +10 -0
  510. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/dtd/dtd.rb +46 -0
  511. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/dtd/elementdecl.rb +17 -0
  512. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/dtd/entitydecl.rb +56 -0
  513. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/dtd/notationdecl.rb +39 -0
  514. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/element.rb +1240 -0
  515. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/encoding.rb +50 -0
  516. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/entity.rb +173 -0
  517. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/formatters/default.rb +111 -0
  518. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/formatters/pretty.rb +141 -0
  519. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/formatters/transitive.rb +57 -0
  520. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/functions.rb +394 -0
  521. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/instruction.rb +70 -0
  522. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/light/node.rb +195 -0
  523. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/namespace.rb +47 -0
  524. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/node.rb +75 -0
  525. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/output.rb +29 -0
  526. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parent.rb +165 -0
  527. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parseexception.rb +51 -0
  528. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/baseparser.rb +532 -0
  529. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/lightparser.rb +58 -0
  530. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/pullparser.rb +196 -0
  531. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/sax2parser.rb +272 -0
  532. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/streamparser.rb +52 -0
  533. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/treeparser.rb +100 -0
  534. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/ultralightparser.rb +56 -0
  535. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/parsers/xpathparser.rb +656 -0
  536. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/quickpath.rb +265 -0
  537. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/rexml.rb +31 -0
  538. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/sax2listener.rb +97 -0
  539. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/security.rb +27 -0
  540. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/source.rb +296 -0
  541. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/streamlistener.rb +92 -0
  542. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/syncenumerator.rb +32 -0
  543. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/text.rb +425 -0
  544. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/undefinednamespaceexception.rb +8 -0
  545. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/validation/relaxng.rb +538 -0
  546. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/validation/validation.rb +143 -0
  547. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/validation/validationexception.rb +9 -0
  548. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/xmldecl.rb +115 -0
  549. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/xmltokens.rb +84 -0
  550. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/xpath.rb +80 -0
  551. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rexml/xpath_parser.rb +703 -0
  552. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rinda/rinda.rb +327 -0
  553. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rinda/ring.rb +480 -0
  554. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rinda/tuplespace.rb +642 -0
  555. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ripper.rb +73 -0
  556. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ripper/core.rb +70 -0
  557. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ripper/filter.rb +77 -0
  558. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ripper/lexer.rb +186 -0
  559. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ripper/sexp.rb +118 -0
  560. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss.rb +91 -0
  561. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/0.9.rb +461 -0
  562. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/1.0.rb +484 -0
  563. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/2.0.rb +142 -0
  564. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/atom.rb +839 -0
  565. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/content.rb +33 -0
  566. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/content/1.0.rb +9 -0
  567. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/content/2.0.rb +11 -0
  568. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/converter.rb +170 -0
  569. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/dublincore.rb +163 -0
  570. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/dublincore/1.0.rb +12 -0
  571. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/dublincore/2.0.rb +12 -0
  572. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/dublincore/atom.rb +16 -0
  573. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/image.rb +197 -0
  574. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/itunes.rb +412 -0
  575. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker.rb +78 -0
  576. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/0.9.rb +508 -0
  577. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/1.0.rb +435 -0
  578. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/2.0.rb +223 -0
  579. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/atom.rb +172 -0
  580. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/base.rb +944 -0
  581. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/content.rb +21 -0
  582. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/dublincore.rb +121 -0
  583. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/entry.rb +163 -0
  584. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/feed.rb +426 -0
  585. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/image.rb +111 -0
  586. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/itunes.rb +242 -0
  587. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/slash.rb +33 -0
  588. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/syndication.rb +18 -0
  589. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/taxonomy.rb +118 -0
  590. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/maker/trackback.rb +61 -0
  591. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/parser.rb +570 -0
  592. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/rexmlparser.rb +49 -0
  593. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/rss.rb +1352 -0
  594. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/slash.rb +51 -0
  595. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/syndication.rb +68 -0
  596. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/taxonomy.rb +147 -0
  597. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/trackback.rb +290 -0
  598. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/utils.rb +199 -0
  599. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/xml-stylesheet.rb +105 -0
  600. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/xml.rb +71 -0
  601. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/xmlparser.rb +94 -0
  602. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rss/xmlscanner.rb +121 -0
  603. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems.rb +1245 -0
  604. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/available_set.rb +164 -0
  605. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/basic_specification.rb +290 -0
  606. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/command.rb +582 -0
  607. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/command_manager.rb +218 -0
  608. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/build_command.rb +60 -0
  609. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/cert_command.rb +276 -0
  610. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/check_command.rb +93 -0
  611. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/cleanup_command.rb +165 -0
  612. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/contents_command.rb +190 -0
  613. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/dependency_command.rb +207 -0
  614. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/environment_command.rb +158 -0
  615. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/fetch_command.rb +77 -0
  616. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/generate_index_command.rb +84 -0
  617. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/help_command.rb +384 -0
  618. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/install_command.rb +347 -0
  619. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/list_command.rb +40 -0
  620. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/lock_command.rb +110 -0
  621. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/mirror_command.rb +25 -0
  622. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/open_command.rb +74 -0
  623. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/outdated_command.rb +32 -0
  624. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/owner_command.rb +99 -0
  625. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/pristine_command.rb +165 -0
  626. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/push_command.rb +98 -0
  627. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/query_command.rb +343 -0
  628. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/rdoc_command.rb +96 -0
  629. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/search_command.rb +40 -0
  630. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/server_command.rb +86 -0
  631. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/setup_command.rb +483 -0
  632. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/sources_command.rb +210 -0
  633. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/specification_command.rb +145 -0
  634. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/stale_command.rb +38 -0
  635. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/uninstall_command.rb +164 -0
  636. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/unpack_command.rb +182 -0
  637. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/update_command.rb +277 -0
  638. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/which_command.rb +90 -0
  639. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/commands/yank_command.rb +107 -0
  640. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/compatibility.rb +59 -0
  641. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/config_file.rb +483 -0
  642. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/core_ext/kernel_gem.rb +73 -0
  643. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb +139 -0
  644. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/defaults.rb +177 -0
  645. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/dependency.rb +334 -0
  646. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/dependency_installer.rb +480 -0
  647. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/dependency_list.rb +240 -0
  648. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/deprecate.rb +70 -0
  649. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/doctor.rb +131 -0
  650. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/errors.rb +137 -0
  651. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/exceptions.rb +270 -0
  652. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext.rb +18 -0
  653. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/build_error.rb +6 -0
  654. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/builder.rb +218 -0
  655. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/cmake_builder.rb +16 -0
  656. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/configure_builder.rb +23 -0
  657. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/ext_conf_builder.rb +78 -0
  658. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ext/rake_builder.rb +36 -0
  659. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/gem_runner.rb +81 -0
  660. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/gemcutter_utilities.rb +154 -0
  661. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/indexer.rb +498 -0
  662. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/install_default_message.rb +12 -0
  663. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/install_message.rb +12 -0
  664. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/install_update_options.rb +186 -0
  665. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/installer.rb +819 -0
  666. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/installer_test_case.rb +193 -0
  667. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/local_remote_options.rb +148 -0
  668. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/mock_gem_ui.rb +88 -0
  669. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/name_tuple.rb +123 -0
  670. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package.rb +613 -0
  671. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/digest_io.rb +64 -0
  672. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/file_source.rb +33 -0
  673. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/io_source.rb +45 -0
  674. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/old.rb +178 -0
  675. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/source.rb +3 -0
  676. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/tar_header.rb +229 -0
  677. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/tar_reader.rb +123 -0
  678. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/tar_reader/entry.rb +147 -0
  679. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/tar_test_case.rb +137 -0
  680. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package/tar_writer.rb +326 -0
  681. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/package_task.rb +128 -0
  682. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/path_support.rb +87 -0
  683. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/platform.rb +204 -0
  684. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/psych_additions.rb +9 -0
  685. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/psych_tree.rb +31 -0
  686. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/rdoc.rb +335 -0
  687. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/remote_fetcher.rb +398 -0
  688. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request.rb +244 -0
  689. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request/connection_pools.rb +83 -0
  690. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request/http_pool.rb +47 -0
  691. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request/https_pool.rb +10 -0
  692. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request_set.rb +413 -0
  693. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request_set/gem_dependency_api.rb +801 -0
  694. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/request_set/lockfile.rb +650 -0
  695. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/requirement.rb +273 -0
  696. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver.rb +485 -0
  697. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/activation_request.rb +172 -0
  698. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/api_set.rb +125 -0
  699. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/api_specification.rb +85 -0
  700. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/best_set.rb +78 -0
  701. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/composed_set.rb +66 -0
  702. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/conflict.rb +160 -0
  703. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/current_set.rb +13 -0
  704. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/dependency_request.rb +116 -0
  705. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/git_set.rb +122 -0
  706. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/git_specification.rb +59 -0
  707. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/index_set.rb +80 -0
  708. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/index_specification.rb +69 -0
  709. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/installed_specification.rb +58 -0
  710. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/installer_set.rb +224 -0
  711. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/local_specification.rb +41 -0
  712. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/lock_set.rb +84 -0
  713. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/lock_specification.rb +84 -0
  714. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/requirement_list.rb +81 -0
  715. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/set.rb +56 -0
  716. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/spec_specification.rb +56 -0
  717. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/specification.rb +110 -0
  718. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/stats.rb +44 -0
  719. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/vendor_set.rb +87 -0
  720. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/resolver/vendor_specification.rb +24 -0
  721. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/security.rb +595 -0
  722. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/security/policies.rb +115 -0
  723. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/security/policy.rb +295 -0
  724. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/security/signer.rb +154 -0
  725. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/security/trust_dir.rb +118 -0
  726. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/server.rb +868 -0
  727. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source.rb +234 -0
  728. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/git.rb +240 -0
  729. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/installed.rb +40 -0
  730. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/local.rb +129 -0
  731. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/lock.rb +48 -0
  732. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/specific_file.rb +72 -0
  733. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source/vendor.rb +27 -0
  734. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source_list.rb +149 -0
  735. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source_local.rb +5 -0
  736. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/source_specific_file.rb +4 -0
  737. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/spec_fetcher.rb +269 -0
  738. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/specification.rb +2800 -0
  739. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/AddTrustExternalCARoot-2048.pem +25 -0
  740. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/AddTrustExternalCARoot.pem +32 -0
  741. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/Class3PublicPrimaryCertificationAuthority.pem +14 -0
  742. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/DigiCertHighAssuranceEVRootCA.pem +23 -0
  743. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/EntrustnetSecureServerCertificationAuthority.pem +28 -0
  744. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/ssl_certs/GeoTrustGlobalCA.pem +20 -0
  745. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/stub_specification.rb +196 -0
  746. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/syck_hack.rb +76 -0
  747. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/test_case.rb +1430 -0
  748. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/test_utilities.rb +383 -0
  749. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/text.rb +75 -0
  750. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/uninstaller.rb +345 -0
  751. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/uri_formatter.rb +49 -0
  752. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/user_interaction.rb +711 -0
  753. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/util.rb +134 -0
  754. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/util/list.rb +48 -0
  755. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/util/stringio.rb +34 -0
  756. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/validator.rb +165 -0
  757. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/version.rb +356 -0
  758. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rubygems/version_option.rb +71 -0
  759. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/scanf.rb +776 -0
  760. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/securerandom.rb +293 -0
  761. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/set.rb +787 -0
  762. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell.rb +458 -0
  763. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/builtin-command.rb +146 -0
  764. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/command-processor.rb +667 -0
  765. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/error.rb +25 -0
  766. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/filter.rb +137 -0
  767. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/process-controller.rb +310 -0
  768. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/system-command.rb +158 -0
  769. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shell/version.rb +15 -0
  770. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/shellwords.rb +215 -0
  771. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/singleton.rb +172 -0
  772. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/socket.rb +871 -0
  773. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/sync.rb +328 -0
  774. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/syslog/logger.rb +208 -0
  775. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/tempfile.rb +367 -0
  776. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/thwait.rb +140 -0
  777. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/time.rb +676 -0
  778. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/timeout.rb +130 -0
  779. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/tmpdir.rb +139 -0
  780. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/tracer.rb +286 -0
  781. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/tsort.rb +450 -0
  782. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/ubygems.rb +10 -0
  783. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/un.rb +375 -0
  784. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/unicode_normalize.rb +78 -0
  785. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/unicode_normalize/normalize.rb +168 -0
  786. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/unicode_normalize/tables.rb +1163 -0
  787. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri.rb +111 -0
  788. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/common.rb +720 -0
  789. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/ftp.rb +266 -0
  790. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/generic.rb +1557 -0
  791. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/http.rb +106 -0
  792. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/https.rb +22 -0
  793. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/ldap.rb +260 -0
  794. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/ldaps.rb +20 -0
  795. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/mailto.rb +286 -0
  796. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/rfc2396_parser.rb +543 -0
  797. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/uri/rfc3986_parser.rb +124 -0
  798. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/weakref.rb +106 -0
  799. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick.rb +226 -0
  800. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/accesslog.rb +158 -0
  801. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/cgi.rb +308 -0
  802. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/compat.rb +35 -0
  803. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/config.rb +151 -0
  804. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/cookie.rb +171 -0
  805. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/htmlutils.rb +29 -0
  806. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth.rb +95 -0
  807. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/authenticator.rb +116 -0
  808. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/basicauth.rb +108 -0
  809. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/digestauth.rb +408 -0
  810. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/htdigest.rb +131 -0
  811. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/htgroup.rb +93 -0
  812. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/htpasswd.rb +124 -0
  813. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpauth/userdb.rb +52 -0
  814. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpproxy.rb +337 -0
  815. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httprequest.rb +584 -0
  816. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpresponse.rb +466 -0
  817. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/https.rb +86 -0
  818. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpserver.rb +278 -0
  819. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet.rb +22 -0
  820. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/abstract.rb +153 -0
  821. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/cgi_runner.rb +46 -0
  822. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/cgihandler.rb +120 -0
  823. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/erbhandler.rb +87 -0
  824. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/filehandler.rb +521 -0
  825. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpservlet/prochandler.rb +46 -0
  826. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpstatus.rb +196 -0
  827. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httputils.rb +509 -0
  828. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/httpversion.rb +75 -0
  829. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/log.rb +155 -0
  830. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/server.rb +365 -0
  831. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/ssl.rb +196 -0
  832. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/utils.rb +230 -0
  833. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/webrick/version.rb +17 -0
  834. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc.rb +301 -0
  835. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/base64.rb +62 -0
  836. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/client.rb +614 -0
  837. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/config.rb +43 -0
  838. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/create.rb +286 -0
  839. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/datetime.rb +129 -0
  840. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/marshal.rb +66 -0
  841. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/parser.rb +870 -0
  842. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/server.rb +707 -0
  843. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/xmlrpc/utils.rb +171 -0
  844. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/yaml.rb +59 -0
  845. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/yaml/dbm.rb +279 -0
  846. data/bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/yaml/store.rb +81 -0
  847. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/charlock_holmes-0.7.3.info +1 -0
  848. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/eventmachine-1.0.4.info +1 -0
  849. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/eventmachine-1.0.6.info +1 -0
  850. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/puma-2.11.2.info +1 -0
  851. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/rugged-0.21.4.info +1 -0
  852. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/build_info/rugged-0.22.0b5.info +1 -0
  853. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/bin/bundle +21 -0
  854. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/bin/bundle_ruby +56 -0
  855. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/bin/bundler +21 -0
  856. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/bundler.gemspec +32 -0
  857. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler.rb +446 -0
  858. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/anonymizable_uri.rb +32 -0
  859. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/capistrano.rb +16 -0
  860. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli.rb +407 -0
  861. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/binstubs.rb +38 -0
  862. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/cache.rb +35 -0
  863. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/check.rb +35 -0
  864. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/clean.rb +26 -0
  865. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/common.rb +56 -0
  866. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/config.rb +84 -0
  867. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/console.rb +38 -0
  868. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/exec.rb +44 -0
  869. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/gem.rb +195 -0
  870. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/init.rb +33 -0
  871. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/inject.rb +33 -0
  872. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/install.rb +156 -0
  873. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/open.rb +23 -0
  874. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/outdated.rb +80 -0
  875. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/package.rb +45 -0
  876. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/platform.rb +43 -0
  877. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/show.rb +74 -0
  878. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/update.rb +73 -0
  879. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/cli/viz.rb +27 -0
  880. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/constants.rb +5 -0
  881. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/current_ruby.rb +183 -0
  882. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/definition.rb +628 -0
  883. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/dep_proxy.rb +43 -0
  884. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/dependency.rb +110 -0
  885. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/deployment.rb +59 -0
  886. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/deprecate.rb +15 -0
  887. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/dsl.rb +331 -0
  888. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/endpoint_specification.rb +76 -0
  889. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/env.rb +75 -0
  890. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/environment.rb +42 -0
  891. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/fetcher.rb +423 -0
  892. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/friendly_errors.rb +85 -0
  893. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/gem_helper.rb +180 -0
  894. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/gem_helpers.rb +26 -0
  895. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/gem_installer.rb +9 -0
  896. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/gem_path_manipulation.rb +8 -0
  897. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/gem_tasks.rb +2 -0
  898. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/graph.rb +169 -0
  899. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/index.rb +197 -0
  900. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/injector.rb +64 -0
  901. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/installer.rb +339 -0
  902. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/lazy_specification.rb +83 -0
  903. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/lockfile_parser.rb +167 -0
  904. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle +119 -0
  905. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-config +217 -0
  906. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-exec +159 -0
  907. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-install +345 -0
  908. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-package +52 -0
  909. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-platform +61 -0
  910. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/bundle-update +213 -0
  911. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/man/gemfile.5 +669 -0
  912. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/match_platform.rb +13 -0
  913. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/psyched_yaml.rb +26 -0
  914. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/remote_specification.rb +57 -0
  915. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/resolver.rb +334 -0
  916. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/retry.rb +60 -0
  917. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ruby_dsl.rb +11 -0
  918. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ruby_version.rb +117 -0
  919. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/rubygems_ext.rb +170 -0
  920. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/rubygems_integration.rb +619 -0
  921. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/runtime.rb +289 -0
  922. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/settings.rb +208 -0
  923. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/setup.rb +24 -0
  924. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/shared_helpers.rb +149 -0
  925. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/similarity_detector.rb +63 -0
  926. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source.rb +46 -0
  927. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source/git.rb +294 -0
  928. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source/git/git_proxy.rb +162 -0
  929. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source/path.rb +226 -0
  930. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source/path/installer.rb +43 -0
  931. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source/rubygems.rb +381 -0
  932. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/source_list.rb +101 -0
  933. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/spec_set.rb +154 -0
  934. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/.document +1 -0
  935. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/AddTrustExternalCARoot-2048.pem +25 -0
  936. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/AddTrustExternalCARoot.pem +32 -0
  937. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/Class3PublicPrimaryCertificationAuthority.pem +14 -0
  938. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/DigiCertHighAssuranceEVRootCA.pem +23 -0
  939. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/EntrustnetSecureServerCertificationAuthority.pem +28 -0
  940. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/GeoTrustGlobalCA.pem +20 -0
  941. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ssl_certs/certificate_manager.rb +65 -0
  942. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ui.rb +7 -0
  943. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ui/rg_proxy.rb +21 -0
  944. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ui/shell.rb +103 -0
  945. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/ui/silent.rb +44 -0
  946. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo.rb +5 -0
  947. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +266 -0
  948. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +69 -0
  949. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +3 -0
  950. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +90 -0
  951. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +63 -0
  952. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +415 -0
  953. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +43 -0
  954. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +43 -0
  955. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/net/http/faster.rb +26 -0
  956. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/net/http/persistent.rb +1230 -0
  957. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/net/http/persistent/ssl_reuse.rb +128 -0
  958. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor.rb +484 -0
  959. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions.rb +319 -0
  960. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/create_file.rb +103 -0
  961. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +59 -0
  962. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/directory.rb +118 -0
  963. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/empty_directory.rb +135 -0
  964. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +316 -0
  965. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +107 -0
  966. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/base.rb +656 -0
  967. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/command.rb +133 -0
  968. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +77 -0
  969. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/core_ext/io_binary_read.rb +10 -0
  970. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/core_ext/ordered_hash.rb +98 -0
  971. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/error.rb +32 -0
  972. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/group.rb +281 -0
  973. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/invocation.rb +178 -0
  974. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/line_editor.rb +17 -0
  975. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/line_editor/basic.rb +35 -0
  976. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb +88 -0
  977. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/parser.rb +4 -0
  978. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/parser/argument.rb +73 -0
  979. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +175 -0
  980. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/parser/option.rb +125 -0
  981. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/parser/options.rb +218 -0
  982. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/rake_compat.rb +71 -0
  983. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/runner.rb +322 -0
  984. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/shell.rb +81 -0
  985. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +421 -0
  986. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/shell/color.rb +149 -0
  987. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/shell/html.rb +126 -0
  988. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/util.rb +267 -0
  989. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendor/thor/lib/thor/version.rb +3 -0
  990. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendored_molinillo.rb +2 -0
  991. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendored_persistent.rb +11 -0
  992. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vendored_thor.rb +3 -0
  993. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/version.rb +6 -0
  994. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/vlad.rb +11 -0
  995. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.9/lib/bundler/worker.rb +73 -0
  996. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/bundler-1.9.9.gemspec +47 -0
  997. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/bigdecimal-1.2.6.gemspec +20 -0
  998. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/io-console-0.4.3.gemspec +23 -0
  999. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/json-1.8.1.gemspec +7 -0
  1000. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/psych-2.0.8.gemspec +25 -0
  1001. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/rake-10.4.2.gemspec +7 -0
  1002. data/bin/traveling-ruby-2.2.2/lib/ruby/gems/2.2.0/specifications/default/rdoc-4.2.0.gemspec +7 -0
  1003. data/bin/traveling-ruby-2.2.2/test +1 -0
  1004. data/bin/traveling-ruby-2.2.2/test-rake +1 -0
  1005. data/lib/rb2exe/version.rb +1 -1
  1006. data/rb2exe.gemspec +0 -1
  1007. metadata +1003 -16
  1008. data/.gitignore +0 -9
@@ -0,0 +1,300 @@
1
+ # = monitor.rb
2
+ #
3
+ # Copyright (C) 2001 Shugo Maeda <shugo@ruby-lang.org>
4
+ #
5
+ # This library is distributed under the terms of the Ruby license.
6
+ # You can freely distribute/modify this library.
7
+ #
8
+
9
+ require 'thread'
10
+
11
+ #
12
+ # In concurrent programming, a monitor is an object or module intended to be
13
+ # used safely by more than one thread. The defining characteristic of a
14
+ # monitor is that its methods are executed with mutual exclusion. That is, at
15
+ # each point in time, at most one thread may be executing any of its methods.
16
+ # This mutual exclusion greatly simplifies reasoning about the implementation
17
+ # of monitors compared to reasoning about parallel code that updates a data
18
+ # structure.
19
+ #
20
+ # You can read more about the general principles on the Wikipedia page for
21
+ # Monitors[http://en.wikipedia.org/wiki/Monitor_%28synchronization%29]
22
+ #
23
+ # == Examples
24
+ #
25
+ # === Simple object.extend
26
+ #
27
+ # require 'monitor.rb'
28
+ #
29
+ # buf = []
30
+ # buf.extend(MonitorMixin)
31
+ # empty_cond = buf.new_cond
32
+ #
33
+ # # consumer
34
+ # Thread.start do
35
+ # loop do
36
+ # buf.synchronize do
37
+ # empty_cond.wait_while { buf.empty? }
38
+ # print buf.shift
39
+ # end
40
+ # end
41
+ # end
42
+ #
43
+ # # producer
44
+ # while line = ARGF.gets
45
+ # buf.synchronize do
46
+ # buf.push(line)
47
+ # empty_cond.signal
48
+ # end
49
+ # end
50
+ #
51
+ # The consumer thread waits for the producer thread to push a line to buf
52
+ # while <tt>buf.empty?</tt>. The producer thread (main thread) reads a
53
+ # line from ARGF and pushes it into buf then calls <tt>empty_cond.signal</tt>
54
+ # to notify the consumer thread of new data.
55
+ #
56
+ # === Simple Class include
57
+ #
58
+ # require 'monitor'
59
+ #
60
+ # class SynchronizedArray < Array
61
+ #
62
+ # include MonitorMixin
63
+ #
64
+ # def initialize(*args)
65
+ # super(*args)
66
+ # end
67
+ #
68
+ # alias :old_shift :shift
69
+ # alias :old_unshift :unshift
70
+ #
71
+ # def shift(n=1)
72
+ # self.synchronize do
73
+ # self.old_shift(n)
74
+ # end
75
+ # end
76
+ #
77
+ # def unshift(item)
78
+ # self.synchronize do
79
+ # self.old_unshift(item)
80
+ # end
81
+ # end
82
+ #
83
+ # # other methods ...
84
+ # end
85
+ #
86
+ # +SynchronizedArray+ implements an Array with synchronized access to items.
87
+ # This Class is implemented as subclass of Array which includes the
88
+ # MonitorMixin module.
89
+ #
90
+ module MonitorMixin
91
+ #
92
+ # FIXME: This isn't documented in Nutshell.
93
+ #
94
+ # Since MonitorMixin.new_cond returns a ConditionVariable, and the example
95
+ # above calls while_wait and signal, this class should be documented.
96
+ #
97
+ class ConditionVariable
98
+ class Timeout < Exception; end
99
+
100
+ #
101
+ # Releases the lock held in the associated monitor and waits; reacquires the lock on wakeup.
102
+ #
103
+ # If +timeout+ is given, this method returns after +timeout+ seconds passed,
104
+ # even if no other thread doesn't signal.
105
+ #
106
+ def wait(timeout = nil)
107
+ @monitor.__send__(:mon_check_owner)
108
+ count = @monitor.__send__(:mon_exit_for_cond)
109
+ begin
110
+ @cond.wait(@monitor.instance_variable_get(:@mon_mutex), timeout)
111
+ return true
112
+ ensure
113
+ @monitor.__send__(:mon_enter_for_cond, count)
114
+ end
115
+ end
116
+
117
+ #
118
+ # Calls wait repeatedly while the given block yields a truthy value.
119
+ #
120
+ def wait_while
121
+ while yield
122
+ wait
123
+ end
124
+ end
125
+
126
+ #
127
+ # Calls wait repeatedly until the given block yields a truthy value.
128
+ #
129
+ def wait_until
130
+ until yield
131
+ wait
132
+ end
133
+ end
134
+
135
+ #
136
+ # Wakes up the first thread in line waiting for this lock.
137
+ #
138
+ def signal
139
+ @monitor.__send__(:mon_check_owner)
140
+ @cond.signal
141
+ end
142
+
143
+ #
144
+ # Wakes up all threads waiting for this lock.
145
+ #
146
+ def broadcast
147
+ @monitor.__send__(:mon_check_owner)
148
+ @cond.broadcast
149
+ end
150
+
151
+ private
152
+
153
+ def initialize(monitor)
154
+ @monitor = monitor
155
+ @cond = ::ConditionVariable.new
156
+ end
157
+ end
158
+
159
+ def self.extend_object(obj)
160
+ super(obj)
161
+ obj.__send__(:mon_initialize)
162
+ end
163
+
164
+ #
165
+ # Attempts to enter exclusive section. Returns +false+ if lock fails.
166
+ #
167
+ def mon_try_enter
168
+ if @mon_owner != Thread.current
169
+ unless @mon_mutex.try_lock
170
+ return false
171
+ end
172
+ @mon_owner = Thread.current
173
+ end
174
+ @mon_count += 1
175
+ return true
176
+ end
177
+ # For backward compatibility
178
+ alias try_mon_enter mon_try_enter
179
+
180
+ #
181
+ # Enters exclusive section.
182
+ #
183
+ def mon_enter
184
+ if @mon_owner != Thread.current
185
+ @mon_mutex.lock
186
+ @mon_owner = Thread.current
187
+ end
188
+ @mon_count += 1
189
+ end
190
+
191
+ #
192
+ # Leaves exclusive section.
193
+ #
194
+ def mon_exit
195
+ mon_check_owner
196
+ @mon_count -=1
197
+ if @mon_count == 0
198
+ @mon_owner = nil
199
+ @mon_mutex.unlock
200
+ end
201
+ end
202
+
203
+ #
204
+ # Enters exclusive section and executes the block. Leaves the exclusive
205
+ # section automatically when the block exits. See example under
206
+ # +MonitorMixin+.
207
+ #
208
+ def mon_synchronize
209
+ mon_enter
210
+ begin
211
+ yield
212
+ ensure
213
+ mon_exit
214
+ end
215
+ end
216
+ alias synchronize mon_synchronize
217
+
218
+ #
219
+ # Creates a new MonitorMixin::ConditionVariable associated with the
220
+ # receiver.
221
+ #
222
+ def new_cond
223
+ return ConditionVariable.new(self)
224
+ end
225
+
226
+ private
227
+
228
+ # Use <tt>extend MonitorMixin</tt> or <tt>include MonitorMixin</tt> instead
229
+ # of this constructor. Have look at the examples above to understand how to
230
+ # use this module.
231
+ def initialize(*args)
232
+ super
233
+ mon_initialize
234
+ end
235
+
236
+ # Initializes the MonitorMixin after being included in a class or when an
237
+ # object has been extended with the MonitorMixin
238
+ def mon_initialize
239
+ @mon_owner = nil
240
+ @mon_count = 0
241
+ @mon_mutex = Mutex.new
242
+ end
243
+
244
+ def mon_check_owner
245
+ if @mon_owner != Thread.current
246
+ raise ThreadError, "current thread not owner"
247
+ end
248
+ end
249
+
250
+ def mon_enter_for_cond(count)
251
+ @mon_owner = Thread.current
252
+ @mon_count = count
253
+ end
254
+
255
+ def mon_exit_for_cond
256
+ count = @mon_count
257
+ @mon_owner = nil
258
+ @mon_count = 0
259
+ return count
260
+ end
261
+ end
262
+
263
+ # Use the Monitor class when you want to have a lock object for blocks with
264
+ # mutual exclusion.
265
+ #
266
+ # require 'monitor'
267
+ #
268
+ # lock = Monitor.new
269
+ # lock.synchronize do
270
+ # # exclusive access
271
+ # end
272
+ #
273
+ class Monitor
274
+ include MonitorMixin
275
+ alias try_enter try_mon_enter
276
+ alias enter mon_enter
277
+ alias exit mon_exit
278
+ end
279
+
280
+
281
+ # Documentation comments:
282
+ # - All documentation comes from Nutshell.
283
+ # - MonitorMixin.new_cond appears in the example, but is not documented in
284
+ # Nutshell.
285
+ # - All the internals (internal modules Accessible and Initializable, class
286
+ # ConditionVariable) appear in RDoc. It might be good to hide them, by
287
+ # making them private, or marking them :nodoc:, etc.
288
+ # - RDoc doesn't recognise aliases, so we have mon_synchronize documented, but
289
+ # not synchronize.
290
+ # - mon_owner is in Nutshell, but appears as an accessor in a separate module
291
+ # here, so is hard/impossible to RDoc. Some other useful accessors
292
+ # (mon_count and some queue stuff) are also in this module, and don't appear
293
+ # directly in the RDoc output.
294
+ # - in short, it may be worth changing the code layout in this file to make the
295
+ # documentation easier
296
+
297
+ # Local variables:
298
+ # mode: Ruby
299
+ # tab-width: 8
300
+ # End:
@@ -0,0 +1,111 @@
1
+ #
2
+ # mutex_m.rb -
3
+ # $Release Version: 3.0$
4
+ # $Revision: 1.7 $
5
+ # Original from mutex.rb
6
+ # by Keiju ISHITSUKA(keiju@ishitsuka.com)
7
+ # modified by matz
8
+ # patched by akira yamada
9
+ #
10
+ # --
11
+
12
+
13
+ require 'thread'
14
+
15
+ # = mutex_m.rb
16
+ #
17
+ # When 'mutex_m' is required, any object that extends or includes Mutex_m will
18
+ # be treated like a Mutex.
19
+ #
20
+ # Start by requiring the standard library Mutex_m:
21
+ #
22
+ # require "mutex_m.rb"
23
+ #
24
+ # From here you can extend an object with Mutex instance methods:
25
+ #
26
+ # obj = Object.new
27
+ # obj.extend Mutex_m
28
+ #
29
+ # Or mixin Mutex_m into your module to your class inherit Mutex instance
30
+ # methods.
31
+ #
32
+ # class Foo
33
+ # include Mutex_m
34
+ # # ...
35
+ # end
36
+ # obj = Foo.new
37
+ # # this obj can be handled like Mutex
38
+ #
39
+ module Mutex_m
40
+ def Mutex_m.define_aliases(cl) # :nodoc:
41
+ cl.module_eval %q{
42
+ alias locked? mu_locked?
43
+ alias lock mu_lock
44
+ alias unlock mu_unlock
45
+ alias try_lock mu_try_lock
46
+ alias synchronize mu_synchronize
47
+ }
48
+ end
49
+
50
+ def Mutex_m.append_features(cl) # :nodoc:
51
+ super
52
+ define_aliases(cl) unless cl.instance_of?(Module)
53
+ end
54
+
55
+ def Mutex_m.extend_object(obj) # :nodoc:
56
+ super
57
+ obj.mu_extended
58
+ end
59
+
60
+ def mu_extended # :nodoc:
61
+ unless (defined? locked? and
62
+ defined? lock and
63
+ defined? unlock and
64
+ defined? try_lock and
65
+ defined? synchronize)
66
+ Mutex_m.define_aliases(singleton_class)
67
+ end
68
+ mu_initialize
69
+ end
70
+
71
+ # See Mutex#synchronize
72
+ def mu_synchronize(&block)
73
+ @_mutex.synchronize(&block)
74
+ end
75
+
76
+ # See Mutex#locked?
77
+ def mu_locked?
78
+ @_mutex.locked?
79
+ end
80
+
81
+ # See Mutex#try_lock
82
+ def mu_try_lock
83
+ @_mutex.try_lock
84
+ end
85
+
86
+ # See Mutex#lock
87
+ def mu_lock
88
+ @_mutex.lock
89
+ end
90
+
91
+ # See Mutex#unlock
92
+ def mu_unlock
93
+ @_mutex.unlock
94
+ end
95
+
96
+ # See Mutex#sleep
97
+ def sleep(timeout = nil)
98
+ @_mutex.sleep(timeout)
99
+ end
100
+
101
+ private
102
+
103
+ def mu_initialize # :nodoc:
104
+ @_mutex = Mutex.new
105
+ end
106
+
107
+ def initialize(*args) # :nodoc:
108
+ mu_initialize
109
+ super
110
+ end
111
+ end
@@ -0,0 +1,1126 @@
1
+ #
2
+ # = net/ftp.rb - FTP Client Library
3
+ #
4
+ # Written by Shugo Maeda <shugo@ruby-lang.org>.
5
+ #
6
+ # Documentation by Gavin Sinclair, sourced from "Programming Ruby" (Hunt/Thomas)
7
+ # and "Ruby In a Nutshell" (Matsumoto), used with permission.
8
+ #
9
+ # This library is distributed under the terms of the Ruby license.
10
+ # You can freely distribute/modify this library.
11
+ #
12
+ # It is included in the Ruby standard library.
13
+ #
14
+ # See the Net::FTP class for an overview.
15
+ #
16
+
17
+ require "socket"
18
+ require "monitor"
19
+ require "net/protocol"
20
+
21
+ module Net
22
+
23
+ # :stopdoc:
24
+ class FTPError < StandardError; end
25
+ class FTPReplyError < FTPError; end
26
+ class FTPTempError < FTPError; end
27
+ class FTPPermError < FTPError; end
28
+ class FTPProtoError < FTPError; end
29
+ class FTPConnectionError < FTPError; end
30
+ # :startdoc:
31
+
32
+ #
33
+ # This class implements the File Transfer Protocol. If you have used a
34
+ # command-line FTP program, and are familiar with the commands, you will be
35
+ # able to use this class easily. Some extra features are included to take
36
+ # advantage of Ruby's style and strengths.
37
+ #
38
+ # == Example
39
+ #
40
+ # require 'net/ftp'
41
+ #
42
+ # === Example 1
43
+ #
44
+ # ftp = Net::FTP.new('example.com')
45
+ # ftp.login
46
+ # files = ftp.chdir('pub/lang/ruby/contrib')
47
+ # files = ftp.list('n*')
48
+ # ftp.getbinaryfile('nif.rb-0.91.gz', 'nif.gz', 1024)
49
+ # ftp.close
50
+ #
51
+ # === Example 2
52
+ #
53
+ # Net::FTP.open('example.com') do |ftp|
54
+ # ftp.login
55
+ # files = ftp.chdir('pub/lang/ruby/contrib')
56
+ # files = ftp.list('n*')
57
+ # ftp.getbinaryfile('nif.rb-0.91.gz', 'nif.gz', 1024)
58
+ # end
59
+ #
60
+ # == Major Methods
61
+ #
62
+ # The following are the methods most likely to be useful to users:
63
+ # - FTP.open
64
+ # - #getbinaryfile
65
+ # - #gettextfile
66
+ # - #putbinaryfile
67
+ # - #puttextfile
68
+ # - #chdir
69
+ # - #nlst
70
+ # - #size
71
+ # - #rename
72
+ # - #delete
73
+ #
74
+ class FTP
75
+ include MonitorMixin
76
+
77
+ # :stopdoc:
78
+ FTP_PORT = 21
79
+ CRLF = "\r\n"
80
+ DEFAULT_BLOCKSIZE = BufferedIO::BUFSIZE
81
+ # :startdoc:
82
+
83
+ # When +true+, transfers are performed in binary mode. Default: +true+.
84
+ attr_reader :binary
85
+
86
+ # When +true+, the connection is in passive mode. Default: +false+.
87
+ attr_accessor :passive
88
+
89
+ # When +true+, all traffic to and from the server is written
90
+ # to +$stdout+. Default: +false+.
91
+ attr_accessor :debug_mode
92
+
93
+ # Sets or retrieves the +resume+ status, which decides whether incomplete
94
+ # transfers are resumed or restarted. Default: +false+.
95
+ attr_accessor :resume
96
+
97
+ # Number of seconds to wait for the connection to open. Any number
98
+ # may be used, including Floats for fractional seconds. If the FTP
99
+ # object cannot open a connection in this many seconds, it raises a
100
+ # Net::OpenTimeout exception. The default value is +nil+.
101
+ attr_accessor :open_timeout
102
+
103
+ # Number of seconds to wait for one block to be read (via one read(2)
104
+ # call). Any number may be used, including Floats for fractional
105
+ # seconds. If the FTP object cannot read data in this many seconds,
106
+ # it raises a Timeout::Error exception. The default value is 60 seconds.
107
+ attr_reader :read_timeout
108
+
109
+ # Setter for the read_timeout attribute.
110
+ def read_timeout=(sec)
111
+ @sock.read_timeout = sec
112
+ @read_timeout = sec
113
+ end
114
+
115
+ # The server's welcome message.
116
+ attr_reader :welcome
117
+
118
+ # The server's last response code.
119
+ attr_reader :last_response_code
120
+ alias lastresp last_response_code
121
+
122
+ # The server's last response.
123
+ attr_reader :last_response
124
+
125
+ #
126
+ # A synonym for <tt>FTP.new</tt>, but with a mandatory host parameter.
127
+ #
128
+ # If a block is given, it is passed the +FTP+ object, which will be closed
129
+ # when the block finishes, or when an exception is raised.
130
+ #
131
+ def FTP.open(host, user = nil, passwd = nil, acct = nil)
132
+ if block_given?
133
+ ftp = new(host, user, passwd, acct)
134
+ begin
135
+ yield ftp
136
+ ensure
137
+ ftp.close
138
+ end
139
+ else
140
+ new(host, user, passwd, acct)
141
+ end
142
+ end
143
+
144
+ #
145
+ # Creates and returns a new +FTP+ object. If a +host+ is given, a connection
146
+ # is made. Additionally, if the +user+ is given, the given user name,
147
+ # password, and (optionally) account are used to log in. See #login.
148
+ #
149
+ def initialize(host = nil, user = nil, passwd = nil, acct = nil)
150
+ super()
151
+ @binary = true
152
+ @passive = false
153
+ @debug_mode = false
154
+ @resume = false
155
+ @sock = NullSocket.new
156
+ @logged_in = false
157
+ @open_timeout = nil
158
+ @read_timeout = 60
159
+ if host
160
+ connect(host)
161
+ if user
162
+ login(user, passwd, acct)
163
+ end
164
+ end
165
+ end
166
+
167
+ # A setter to toggle transfers in binary mode.
168
+ # +newmode+ is either +true+ or +false+
169
+ def binary=(newmode)
170
+ if newmode != @binary
171
+ @binary = newmode
172
+ send_type_command if @logged_in
173
+ end
174
+ end
175
+
176
+ # Sends a command to destination host, with the current binary sendmode
177
+ # type.
178
+ #
179
+ # If binary mode is +true+, then "TYPE I" (image) is sent, otherwise "TYPE
180
+ # A" (ascii) is sent.
181
+ def send_type_command # :nodoc:
182
+ if @binary
183
+ voidcmd("TYPE I")
184
+ else
185
+ voidcmd("TYPE A")
186
+ end
187
+ end
188
+ private :send_type_command
189
+
190
+ # Toggles transfers in binary mode and yields to a block.
191
+ # This preserves your current binary send mode, but allows a temporary
192
+ # transaction with binary sendmode of +newmode+.
193
+ #
194
+ # +newmode+ is either +true+ or +false+
195
+ def with_binary(newmode) # :nodoc:
196
+ oldmode = binary
197
+ self.binary = newmode
198
+ begin
199
+ yield
200
+ ensure
201
+ self.binary = oldmode
202
+ end
203
+ end
204
+ private :with_binary
205
+
206
+ # Obsolete
207
+ def return_code # :nodoc:
208
+ $stderr.puts("warning: Net::FTP#return_code is obsolete and do nothing")
209
+ return "\n"
210
+ end
211
+
212
+ # Obsolete
213
+ def return_code=(s) # :nodoc:
214
+ $stderr.puts("warning: Net::FTP#return_code= is obsolete and do nothing")
215
+ end
216
+
217
+ # Constructs a socket with +host+ and +port+.
218
+ #
219
+ # If SOCKSSocket is defined and the environment (ENV) defines
220
+ # SOCKS_SERVER, then a SOCKSSocket is returned, else a TCPSocket is
221
+ # returned.
222
+ def open_socket(host, port) # :nodoc:
223
+ return Timeout.timeout(@open_timeout, Net::OpenTimeout) {
224
+ if defined? SOCKSSocket and ENV["SOCKS_SERVER"]
225
+ @passive = true
226
+ sock = SOCKSSocket.open(host, port)
227
+ else
228
+ sock = TCPSocket.open(host, port)
229
+ end
230
+ io = BufferedSocket.new(sock)
231
+ io.read_timeout = @read_timeout
232
+ io
233
+ }
234
+ end
235
+ private :open_socket
236
+
237
+ #
238
+ # Establishes an FTP connection to host, optionally overriding the default
239
+ # port. If the environment variable +SOCKS_SERVER+ is set, sets up the
240
+ # connection through a SOCKS proxy. Raises an exception (typically
241
+ # <tt>Errno::ECONNREFUSED</tt>) if the connection cannot be established.
242
+ #
243
+ def connect(host, port = FTP_PORT)
244
+ if @debug_mode
245
+ print "connect: ", host, ", ", port, "\n"
246
+ end
247
+ synchronize do
248
+ @sock = open_socket(host, port)
249
+ voidresp
250
+ end
251
+ end
252
+
253
+ #
254
+ # Set the socket used to connect to the FTP server.
255
+ #
256
+ # May raise FTPReplyError if +get_greeting+ is false.
257
+ def set_socket(sock, get_greeting = true)
258
+ synchronize do
259
+ @sock = sock
260
+ if get_greeting
261
+ voidresp
262
+ end
263
+ end
264
+ end
265
+
266
+ # If string +s+ includes the PASS command (password), then the contents of
267
+ # the password are cleaned from the string using "*"
268
+ def sanitize(s) # :nodoc:
269
+ if s =~ /^PASS /i
270
+ return s[0, 5] + "*" * (s.length - 5)
271
+ else
272
+ return s
273
+ end
274
+ end
275
+ private :sanitize
276
+
277
+ # Ensures that +line+ has a control return / line feed (CRLF) and writes
278
+ # it to the socket.
279
+ def putline(line) # :nodoc:
280
+ if @debug_mode
281
+ print "put: ", sanitize(line), "\n"
282
+ end
283
+ line = line + CRLF
284
+ @sock.write(line)
285
+ end
286
+ private :putline
287
+
288
+ # Reads a line from the sock. If EOF, then it will raise EOFError
289
+ def getline # :nodoc:
290
+ line = @sock.readline # if get EOF, raise EOFError
291
+ line.sub!(/(\r\n|\n|\r)\z/n, "")
292
+ if @debug_mode
293
+ print "get: ", sanitize(line), "\n"
294
+ end
295
+ return line
296
+ end
297
+ private :getline
298
+
299
+ # Receive a section of lines until the response code's match.
300
+ def getmultiline # :nodoc:
301
+ line = getline
302
+ buff = line
303
+ if line[3] == ?-
304
+ code = line[0, 3]
305
+ begin
306
+ line = getline
307
+ buff << "\n" << line
308
+ end until line[0, 3] == code and line[3] != ?-
309
+ end
310
+ return buff << "\n"
311
+ end
312
+ private :getmultiline
313
+
314
+ # Receives a response from the destination host.
315
+ #
316
+ # Returns the response code or raises FTPTempError, FTPPermError, or
317
+ # FTPProtoError
318
+ def getresp # :nodoc:
319
+ @last_response = getmultiline
320
+ @last_response_code = @last_response[0, 3]
321
+ case @last_response_code
322
+ when /\A[123]/
323
+ return @last_response
324
+ when /\A4/
325
+ raise FTPTempError, @last_response
326
+ when /\A5/
327
+ raise FTPPermError, @last_response
328
+ else
329
+ raise FTPProtoError, @last_response
330
+ end
331
+ end
332
+ private :getresp
333
+
334
+ # Receives a response.
335
+ #
336
+ # Raises FTPReplyError if the first position of the response code is not
337
+ # equal 2.
338
+ def voidresp # :nodoc:
339
+ resp = getresp
340
+ if resp[0] != ?2
341
+ raise FTPReplyError, resp
342
+ end
343
+ end
344
+ private :voidresp
345
+
346
+ #
347
+ # Sends a command and returns the response.
348
+ #
349
+ def sendcmd(cmd)
350
+ synchronize do
351
+ putline(cmd)
352
+ return getresp
353
+ end
354
+ end
355
+
356
+ #
357
+ # Sends a command and expect a response beginning with '2'.
358
+ #
359
+ def voidcmd(cmd)
360
+ synchronize do
361
+ putline(cmd)
362
+ voidresp
363
+ end
364
+ end
365
+
366
+ # Constructs and send the appropriate PORT (or EPRT) command
367
+ def sendport(host, port) # :nodoc:
368
+ af = (@sock.peeraddr)[0]
369
+ if af == "AF_INET"
370
+ cmd = "PORT " + (host.split(".") + port.divmod(256)).join(",")
371
+ elsif af == "AF_INET6"
372
+ cmd = sprintf("EPRT |2|%s|%d|", host, port)
373
+ else
374
+ raise FTPProtoError, host
375
+ end
376
+ voidcmd(cmd)
377
+ end
378
+ private :sendport
379
+
380
+ # Constructs a TCPServer socket, and sends it the PORT command
381
+ #
382
+ # Returns the constructed TCPServer socket
383
+ def makeport # :nodoc:
384
+ sock = TCPServer.open(@sock.addr[3], 0)
385
+ port = sock.addr[1]
386
+ host = sock.addr[3]
387
+ sendport(host, port)
388
+ return sock
389
+ end
390
+ private :makeport
391
+
392
+ # sends the appropriate command to enable a passive connection
393
+ def makepasv # :nodoc:
394
+ if @sock.peeraddr[0] == "AF_INET"
395
+ host, port = parse227(sendcmd("PASV"))
396
+ else
397
+ host, port = parse229(sendcmd("EPSV"))
398
+ # host, port = parse228(sendcmd("LPSV"))
399
+ end
400
+ return host, port
401
+ end
402
+ private :makepasv
403
+
404
+ # Constructs a connection for transferring data
405
+ def transfercmd(cmd, rest_offset = nil) # :nodoc:
406
+ if @passive
407
+ host, port = makepasv
408
+ conn = open_socket(host, port)
409
+ if @resume and rest_offset
410
+ resp = sendcmd("REST " + rest_offset.to_s)
411
+ if resp[0] != ?3
412
+ raise FTPReplyError, resp
413
+ end
414
+ end
415
+ resp = sendcmd(cmd)
416
+ # skip 2XX for some ftp servers
417
+ resp = getresp if resp[0] == ?2
418
+ if resp[0] != ?1
419
+ raise FTPReplyError, resp
420
+ end
421
+ else
422
+ sock = makeport
423
+ begin
424
+ if @resume and rest_offset
425
+ resp = sendcmd("REST " + rest_offset.to_s)
426
+ if resp[0] != ?3
427
+ raise FTPReplyError, resp
428
+ end
429
+ end
430
+ resp = sendcmd(cmd)
431
+ # skip 2XX for some ftp servers
432
+ resp = getresp if resp[0] == ?2
433
+ if resp[0] != ?1
434
+ raise FTPReplyError, resp
435
+ end
436
+ conn = BufferedSocket.new(sock.accept)
437
+ conn.read_timeout = @read_timeout
438
+ sock.shutdown(Socket::SHUT_WR) rescue nil
439
+ sock.read rescue nil
440
+ ensure
441
+ sock.close
442
+ end
443
+ end
444
+ return conn
445
+ end
446
+ private :transfercmd
447
+
448
+ #
449
+ # Logs in to the remote host. The session must have been
450
+ # previously connected. If +user+ is the string "anonymous" and
451
+ # the +password+ is +nil+, "anonymous@" is used as a password. If
452
+ # the +acct+ parameter is not +nil+, an FTP ACCT command is sent
453
+ # following the successful login. Raises an exception on error
454
+ # (typically <tt>Net::FTPPermError</tt>).
455
+ #
456
+ def login(user = "anonymous", passwd = nil, acct = nil)
457
+ if user == "anonymous" and passwd == nil
458
+ passwd = "anonymous@"
459
+ end
460
+
461
+ resp = ""
462
+ synchronize do
463
+ resp = sendcmd('USER ' + user)
464
+ if resp[0] == ?3
465
+ raise FTPReplyError, resp if passwd.nil?
466
+ resp = sendcmd('PASS ' + passwd)
467
+ end
468
+ if resp[0] == ?3
469
+ raise FTPReplyError, resp if acct.nil?
470
+ resp = sendcmd('ACCT ' + acct)
471
+ end
472
+ end
473
+ if resp[0] != ?2
474
+ raise FTPReplyError, resp
475
+ end
476
+ @welcome = resp
477
+ send_type_command
478
+ @logged_in = true
479
+ end
480
+
481
+ #
482
+ # Puts the connection into binary (image) mode, issues the given command,
483
+ # and fetches the data returned, passing it to the associated block in
484
+ # chunks of +blocksize+ characters. Note that +cmd+ is a server command
485
+ # (such as "RETR myfile").
486
+ #
487
+ def retrbinary(cmd, blocksize, rest_offset = nil) # :yield: data
488
+ synchronize do
489
+ with_binary(true) do
490
+ begin
491
+ conn = transfercmd(cmd, rest_offset)
492
+ loop do
493
+ data = conn.read(blocksize)
494
+ break if data == nil
495
+ yield(data)
496
+ end
497
+ conn.shutdown(Socket::SHUT_WR)
498
+ conn.read_timeout = 1
499
+ conn.read
500
+ ensure
501
+ conn.close if conn
502
+ end
503
+ voidresp
504
+ end
505
+ end
506
+ end
507
+
508
+ #
509
+ # Puts the connection into ASCII (text) mode, issues the given command, and
510
+ # passes the resulting data, one line at a time, to the associated block. If
511
+ # no block is given, prints the lines. Note that +cmd+ is a server command
512
+ # (such as "RETR myfile").
513
+ #
514
+ def retrlines(cmd) # :yield: line
515
+ synchronize do
516
+ with_binary(false) do
517
+ begin
518
+ conn = transfercmd(cmd)
519
+ loop do
520
+ line = conn.gets
521
+ break if line == nil
522
+ yield(line.sub(/\r?\n\z/, ""), !line.match(/\n\z/).nil?)
523
+ end
524
+ conn.shutdown(Socket::SHUT_WR)
525
+ conn.read_timeout = 1
526
+ conn.read
527
+ ensure
528
+ conn.close if conn
529
+ end
530
+ voidresp
531
+ end
532
+ end
533
+ end
534
+
535
+ #
536
+ # Puts the connection into binary (image) mode, issues the given server-side
537
+ # command (such as "STOR myfile"), and sends the contents of the file named
538
+ # +file+ to the server. If the optional block is given, it also passes it
539
+ # the data, in chunks of +blocksize+ characters.
540
+ #
541
+ def storbinary(cmd, file, blocksize, rest_offset = nil) # :yield: data
542
+ if rest_offset
543
+ file.seek(rest_offset, IO::SEEK_SET)
544
+ end
545
+ synchronize do
546
+ with_binary(true) do
547
+ conn = transfercmd(cmd)
548
+ loop do
549
+ buf = file.read(blocksize)
550
+ break if buf == nil
551
+ conn.write(buf)
552
+ yield(buf) if block_given?
553
+ end
554
+ conn.close
555
+ voidresp
556
+ end
557
+ end
558
+ rescue Errno::EPIPE
559
+ # EPIPE, in this case, means that the data connection was unexpectedly
560
+ # terminated. Rather than just raising EPIPE to the caller, check the
561
+ # response on the control connection. If getresp doesn't raise a more
562
+ # appropriate exception, re-raise the original exception.
563
+ getresp
564
+ raise
565
+ end
566
+
567
+ #
568
+ # Puts the connection into ASCII (text) mode, issues the given server-side
569
+ # command (such as "STOR myfile"), and sends the contents of the file
570
+ # named +file+ to the server, one line at a time. If the optional block is
571
+ # given, it also passes it the lines.
572
+ #
573
+ def storlines(cmd, file) # :yield: line
574
+ synchronize do
575
+ with_binary(false) do
576
+ conn = transfercmd(cmd)
577
+ loop do
578
+ buf = file.gets
579
+ break if buf == nil
580
+ if buf[-2, 2] != CRLF
581
+ buf = buf.chomp + CRLF
582
+ end
583
+ conn.write(buf)
584
+ yield(buf) if block_given?
585
+ end
586
+ conn.close
587
+ voidresp
588
+ end
589
+ end
590
+ rescue Errno::EPIPE
591
+ # EPIPE, in this case, means that the data connection was unexpectedly
592
+ # terminated. Rather than just raising EPIPE to the caller, check the
593
+ # response on the control connection. If getresp doesn't raise a more
594
+ # appropriate exception, re-raise the original exception.
595
+ getresp
596
+ raise
597
+ end
598
+
599
+ #
600
+ # Retrieves +remotefile+ in binary mode, storing the result in +localfile+.
601
+ # If +localfile+ is nil, returns retrieved data.
602
+ # If a block is supplied, it is passed the retrieved data in +blocksize+
603
+ # chunks.
604
+ #
605
+ def getbinaryfile(remotefile, localfile = File.basename(remotefile),
606
+ blocksize = DEFAULT_BLOCKSIZE) # :yield: data
607
+ result = nil
608
+ if localfile
609
+ if @resume
610
+ rest_offset = File.size?(localfile)
611
+ f = open(localfile, "a")
612
+ else
613
+ rest_offset = nil
614
+ f = open(localfile, "w")
615
+ end
616
+ elsif !block_given?
617
+ result = ""
618
+ end
619
+ begin
620
+ f.binmode if localfile
621
+ retrbinary("RETR " + remotefile.to_s, blocksize, rest_offset) do |data|
622
+ f.write(data) if localfile
623
+ yield(data) if block_given?
624
+ result.concat(data) if result
625
+ end
626
+ return result
627
+ ensure
628
+ f.close if localfile
629
+ end
630
+ end
631
+
632
+ #
633
+ # Retrieves +remotefile+ in ASCII (text) mode, storing the result in
634
+ # +localfile+.
635
+ # If +localfile+ is nil, returns retrieved data.
636
+ # If a block is supplied, it is passed the retrieved data one
637
+ # line at a time.
638
+ #
639
+ def gettextfile(remotefile, localfile = File.basename(remotefile)) # :yield: line
640
+ result = nil
641
+ if localfile
642
+ f = open(localfile, "w")
643
+ elsif !block_given?
644
+ result = ""
645
+ end
646
+ begin
647
+ retrlines("RETR " + remotefile) do |line, newline|
648
+ l = newline ? line + "\n" : line
649
+ f.print(l) if localfile
650
+ yield(line, newline) if block_given?
651
+ result.concat(l) if result
652
+ end
653
+ return result
654
+ ensure
655
+ f.close if localfile
656
+ end
657
+ end
658
+
659
+ #
660
+ # Retrieves +remotefile+ in whatever mode the session is set (text or
661
+ # binary). See #gettextfile and #getbinaryfile.
662
+ #
663
+ def get(remotefile, localfile = File.basename(remotefile),
664
+ blocksize = DEFAULT_BLOCKSIZE, &block) # :yield: data
665
+ if @binary
666
+ getbinaryfile(remotefile, localfile, blocksize, &block)
667
+ else
668
+ gettextfile(remotefile, localfile, &block)
669
+ end
670
+ end
671
+
672
+ #
673
+ # Transfers +localfile+ to the server in binary mode, storing the result in
674
+ # +remotefile+. If a block is supplied, calls it, passing in the transmitted
675
+ # data in +blocksize+ chunks.
676
+ #
677
+ def putbinaryfile(localfile, remotefile = File.basename(localfile),
678
+ blocksize = DEFAULT_BLOCKSIZE, &block) # :yield: data
679
+ if @resume
680
+ begin
681
+ rest_offset = size(remotefile)
682
+ rescue Net::FTPPermError
683
+ rest_offset = nil
684
+ end
685
+ else
686
+ rest_offset = nil
687
+ end
688
+ f = open(localfile)
689
+ begin
690
+ f.binmode
691
+ if rest_offset
692
+ storbinary("APPE " + remotefile, f, blocksize, rest_offset, &block)
693
+ else
694
+ storbinary("STOR " + remotefile, f, blocksize, rest_offset, &block)
695
+ end
696
+ ensure
697
+ f.close
698
+ end
699
+ end
700
+
701
+ #
702
+ # Transfers +localfile+ to the server in ASCII (text) mode, storing the result
703
+ # in +remotefile+. If callback or an associated block is supplied, calls it,
704
+ # passing in the transmitted data one line at a time.
705
+ #
706
+ def puttextfile(localfile, remotefile = File.basename(localfile), &block) # :yield: line
707
+ f = open(localfile)
708
+ begin
709
+ storlines("STOR " + remotefile, f, &block)
710
+ ensure
711
+ f.close
712
+ end
713
+ end
714
+
715
+ #
716
+ # Transfers +localfile+ to the server in whatever mode the session is set
717
+ # (text or binary). See #puttextfile and #putbinaryfile.
718
+ #
719
+ def put(localfile, remotefile = File.basename(localfile),
720
+ blocksize = DEFAULT_BLOCKSIZE, &block)
721
+ if @binary
722
+ putbinaryfile(localfile, remotefile, blocksize, &block)
723
+ else
724
+ puttextfile(localfile, remotefile, &block)
725
+ end
726
+ end
727
+
728
+ #
729
+ # Sends the ACCT command.
730
+ #
731
+ # This is a less common FTP command, to send account
732
+ # information if the destination host requires it.
733
+ #
734
+ def acct(account)
735
+ cmd = "ACCT " + account
736
+ voidcmd(cmd)
737
+ end
738
+
739
+ #
740
+ # Returns an array of filenames in the remote directory.
741
+ #
742
+ def nlst(dir = nil)
743
+ cmd = "NLST"
744
+ if dir
745
+ cmd = cmd + " " + dir
746
+ end
747
+ files = []
748
+ retrlines(cmd) do |line|
749
+ files.push(line)
750
+ end
751
+ return files
752
+ end
753
+
754
+ #
755
+ # Returns an array of file information in the directory (the output is like
756
+ # `ls -l`). If a block is given, it iterates through the listing.
757
+ #
758
+ def list(*args, &block) # :yield: line
759
+ cmd = "LIST"
760
+ args.each do |arg|
761
+ cmd = cmd + " " + arg.to_s
762
+ end
763
+ if block
764
+ retrlines(cmd, &block)
765
+ else
766
+ lines = []
767
+ retrlines(cmd) do |line|
768
+ lines << line
769
+ end
770
+ return lines
771
+ end
772
+ end
773
+ alias ls list
774
+ alias dir list
775
+
776
+ #
777
+ # Renames a file on the server.
778
+ #
779
+ def rename(fromname, toname)
780
+ resp = sendcmd("RNFR " + fromname)
781
+ if resp[0] != ?3
782
+ raise FTPReplyError, resp
783
+ end
784
+ voidcmd("RNTO " + toname)
785
+ end
786
+
787
+ #
788
+ # Deletes a file on the server.
789
+ #
790
+ def delete(filename)
791
+ resp = sendcmd("DELE " + filename)
792
+ if resp[0, 3] == "250"
793
+ return
794
+ elsif resp[0] == ?5
795
+ raise FTPPermError, resp
796
+ else
797
+ raise FTPReplyError, resp
798
+ end
799
+ end
800
+
801
+ #
802
+ # Changes the (remote) directory.
803
+ #
804
+ def chdir(dirname)
805
+ if dirname == ".."
806
+ begin
807
+ voidcmd("CDUP")
808
+ return
809
+ rescue FTPPermError => e
810
+ if e.message[0, 3] != "500"
811
+ raise e
812
+ end
813
+ end
814
+ end
815
+ cmd = "CWD " + dirname
816
+ voidcmd(cmd)
817
+ end
818
+
819
+ #
820
+ # Returns the size of the given (remote) filename.
821
+ #
822
+ def size(filename)
823
+ with_binary(true) do
824
+ resp = sendcmd("SIZE " + filename)
825
+ if resp[0, 3] != "213"
826
+ raise FTPReplyError, resp
827
+ end
828
+ return resp[3..-1].strip.to_i
829
+ end
830
+ end
831
+
832
+ MDTM_REGEXP = /^(\d\d\d\d)(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/ # :nodoc:
833
+
834
+ #
835
+ # Returns the last modification time of the (remote) file. If +local+ is
836
+ # +true+, it is returned as a local time, otherwise it's a UTC time.
837
+ #
838
+ def mtime(filename, local = false)
839
+ str = mdtm(filename)
840
+ ary = str.scan(MDTM_REGEXP)[0].collect {|i| i.to_i}
841
+ return local ? Time.local(*ary) : Time.gm(*ary)
842
+ end
843
+
844
+ #
845
+ # Creates a remote directory.
846
+ #
847
+ def mkdir(dirname)
848
+ resp = sendcmd("MKD " + dirname)
849
+ return parse257(resp)
850
+ end
851
+
852
+ #
853
+ # Removes a remote directory.
854
+ #
855
+ def rmdir(dirname)
856
+ voidcmd("RMD " + dirname)
857
+ end
858
+
859
+ #
860
+ # Returns the current remote directory.
861
+ #
862
+ def pwd
863
+ resp = sendcmd("PWD")
864
+ return parse257(resp)
865
+ end
866
+ alias getdir pwd
867
+
868
+ #
869
+ # Returns system information.
870
+ #
871
+ def system
872
+ resp = sendcmd("SYST")
873
+ if resp[0, 3] != "215"
874
+ raise FTPReplyError, resp
875
+ end
876
+ return resp[4 .. -1]
877
+ end
878
+
879
+ #
880
+ # Aborts the previous command (ABOR command).
881
+ #
882
+ def abort
883
+ line = "ABOR" + CRLF
884
+ print "put: ABOR\n" if @debug_mode
885
+ @sock.send(line, Socket::MSG_OOB)
886
+ resp = getmultiline
887
+ unless ["426", "226", "225"].include?(resp[0, 3])
888
+ raise FTPProtoError, resp
889
+ end
890
+ return resp
891
+ end
892
+
893
+ #
894
+ # Returns the status (STAT command).
895
+ #
896
+ def status
897
+ line = "STAT" + CRLF
898
+ print "put: STAT\n" if @debug_mode
899
+ @sock.send(line, Socket::MSG_OOB)
900
+ return getresp
901
+ end
902
+
903
+ #
904
+ # Returns the raw last modification time of the (remote) file in the format
905
+ # "YYYYMMDDhhmmss" (MDTM command).
906
+ #
907
+ # Use +mtime+ if you want a parsed Time instance.
908
+ #
909
+ def mdtm(filename)
910
+ resp = sendcmd("MDTM " + filename)
911
+ if resp[0, 3] == "213"
912
+ return resp[3 .. -1].strip
913
+ end
914
+ end
915
+
916
+ #
917
+ # Issues the HELP command.
918
+ #
919
+ def help(arg = nil)
920
+ cmd = "HELP"
921
+ if arg
922
+ cmd = cmd + " " + arg
923
+ end
924
+ sendcmd(cmd)
925
+ end
926
+
927
+ #
928
+ # Exits the FTP session.
929
+ #
930
+ def quit
931
+ voidcmd("QUIT")
932
+ end
933
+
934
+ #
935
+ # Issues a NOOP command.
936
+ #
937
+ # Does nothing except return a response.
938
+ #
939
+ def noop
940
+ voidcmd("NOOP")
941
+ end
942
+
943
+ #
944
+ # Issues a SITE command.
945
+ #
946
+ def site(arg)
947
+ cmd = "SITE " + arg
948
+ voidcmd(cmd)
949
+ end
950
+
951
+ #
952
+ # Closes the connection. Further operations are impossible until you open
953
+ # a new connection with #connect.
954
+ #
955
+ def close
956
+ if @sock and not @sock.closed?
957
+ begin
958
+ @sock.shutdown(Socket::SHUT_WR) rescue nil
959
+ orig, self.read_timeout = self.read_timeout, 3
960
+ @sock.read rescue nil
961
+ ensure
962
+ @sock.close
963
+ self.read_timeout = orig
964
+ end
965
+ end
966
+ end
967
+
968
+ #
969
+ # Returns +true+ iff the connection is closed.
970
+ #
971
+ def closed?
972
+ @sock == nil or @sock.closed?
973
+ end
974
+
975
+ # handler for response code 227
976
+ # (Entering Passive Mode (h1,h2,h3,h4,p1,p2))
977
+ #
978
+ # Returns host and port.
979
+ def parse227(resp) # :nodoc:
980
+ if resp[0, 3] != "227"
981
+ raise FTPReplyError, resp
982
+ end
983
+ if m = /\((?<host>\d+(,\d+){3}),(?<port>\d+,\d+)\)/.match(resp)
984
+ return parse_pasv_ipv4_host(m["host"]), parse_pasv_port(m["port"])
985
+ else
986
+ raise FTPProtoError, resp
987
+ end
988
+ end
989
+ private :parse227
990
+
991
+ # handler for response code 228
992
+ # (Entering Long Passive Mode)
993
+ #
994
+ # Returns host and port.
995
+ def parse228(resp) # :nodoc:
996
+ if resp[0, 3] != "228"
997
+ raise FTPReplyError, resp
998
+ end
999
+ if m = /\(4,4,(?<host>\d+(,\d+){3}),2,(?<port>\d+,\d+)\)/.match(resp)
1000
+ return parse_pasv_ipv4_host(m["host"]), parse_pasv_port(m["port"])
1001
+ elsif m = /\(6,16,(?<host>\d+(,(\d+)){15}),2,(?<port>\d+,\d+)\)/.match(resp)
1002
+ return parse_pasv_ipv6_host(m["host"]), parse_pasv_port(m["port"])
1003
+ else
1004
+ raise FTPProtoError, resp
1005
+ end
1006
+ end
1007
+ private :parse228
1008
+
1009
+ def parse_pasv_ipv4_host(s)
1010
+ return s.tr(",", ".")
1011
+ end
1012
+ private :parse_pasv_ipv4_host
1013
+
1014
+ def parse_pasv_ipv6_host(s)
1015
+ return s.split(/,/).map { |i|
1016
+ "%02x" % i.to_i
1017
+ }.each_slice(2).map(&:join).join(":")
1018
+ end
1019
+ private :parse_pasv_ipv6_host
1020
+
1021
+ def parse_pasv_port(s)
1022
+ return s.split(/,/).map(&:to_i).inject { |x, y|
1023
+ (x << 8) + y
1024
+ }
1025
+ end
1026
+ private :parse_pasv_port
1027
+
1028
+ # handler for response code 229
1029
+ # (Extended Passive Mode Entered)
1030
+ #
1031
+ # Returns host and port.
1032
+ def parse229(resp) # :nodoc:
1033
+ if resp[0, 3] != "229"
1034
+ raise FTPReplyError, resp
1035
+ end
1036
+ if m = /\((?<d>[!-~])\k<d>\k<d>(?<port>\d+)\k<d>\)/.match(resp)
1037
+ return @sock.peeraddr[3], m["port"].to_i
1038
+ else
1039
+ raise FTPProtoError, resp
1040
+ end
1041
+ end
1042
+ private :parse229
1043
+
1044
+ # handler for response code 257
1045
+ # ("PATHNAME" created)
1046
+ #
1047
+ # Returns host and port.
1048
+ def parse257(resp) # :nodoc:
1049
+ if resp[0, 3] != "257"
1050
+ raise FTPReplyError, resp
1051
+ end
1052
+ if resp[3, 2] != ' "'
1053
+ return ""
1054
+ end
1055
+ dirname = ""
1056
+ i = 5
1057
+ n = resp.length
1058
+ while i < n
1059
+ c = resp[i, 1]
1060
+ i = i + 1
1061
+ if c == '"'
1062
+ if i > n or resp[i, 1] != '"'
1063
+ break
1064
+ end
1065
+ i = i + 1
1066
+ end
1067
+ dirname = dirname + c
1068
+ end
1069
+ return dirname
1070
+ end
1071
+ private :parse257
1072
+
1073
+ # :stopdoc:
1074
+ class NullSocket
1075
+ def read_timeout=(sec)
1076
+ end
1077
+
1078
+ def close
1079
+ end
1080
+
1081
+ def method_missing(mid, *args)
1082
+ raise FTPConnectionError, "not connected"
1083
+ end
1084
+ end
1085
+
1086
+ class BufferedSocket < BufferedIO
1087
+ [:addr, :peeraddr, :send, :shutdown].each do |method|
1088
+ define_method(method) { |*args|
1089
+ @io.__send__(method, *args)
1090
+ }
1091
+ end
1092
+
1093
+ def read(len = nil)
1094
+ if len
1095
+ s = super(len, "", true)
1096
+ return s.empty? ? nil : s
1097
+ else
1098
+ result = ""
1099
+ while s = super(DEFAULT_BLOCKSIZE, "", true)
1100
+ break if s.empty?
1101
+ result << s
1102
+ end
1103
+ return result
1104
+ end
1105
+ end
1106
+
1107
+ def gets
1108
+ line = readuntil("\n", true)
1109
+ return line.empty? ? nil : line
1110
+ end
1111
+
1112
+ def readline
1113
+ line = gets
1114
+ if line.nil?
1115
+ raise EOFError, "end of file reached"
1116
+ end
1117
+ return line
1118
+ end
1119
+ end
1120
+ # :startdoc:
1121
+ end
1122
+ end
1123
+
1124
+
1125
+ # Documentation comments:
1126
+ # - sourced from pickaxe and nutshell, with improvements (hopefully)