win32-api 1.6.0-universal-mingw32 → 1.6.1.beta1-universal-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (355) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +4 -0
  3. data/Gemfile.lock +5 -5
  4. data/Rakefile +45 -19
  5. data/appveyor.yml +12 -0
  6. data/appveyor/build.cmd +3 -0
  7. data/lib/win32/api.rb +8 -0
  8. data/lib/win32/ruby21_32/win32/api.so +0 -0
  9. data/lib/win32/ruby21_64/win32/api.so +0 -0
  10. data/lib/win32/ruby22_32/win32/api.so +0 -0
  11. data/lib/win32/ruby22_64/win32/api.so +0 -0
  12. data/lib/win32/ruby23_32/win32/api.so +0 -0
  13. data/lib/win32/ruby23_64/win32/api.so +0 -0
  14. data/lib/win32/ruby24_32/win32/api.so +0 -0
  15. data/lib/win32/ruby24_64/win32/api.so +0 -0
  16. data/lib/win32/ruby2_32/win32/api.so +0 -0
  17. data/lib/win32/ruby2_64/win32/api.so +0 -0
  18. data/win32-api.gemspec +1 -1
  19. metadata +8 -341
  20. data/vendor/bundle/ruby/2.2.0/bin/devkit +0 -23
  21. data/vendor/bundle/ruby/2.2.0/bin/devkit.bat +0 -6
  22. data/vendor/bundle/ruby/2.2.0/bin/rake +0 -23
  23. data/vendor/bundle/ruby/2.2.0/bin/rake.bat +0 -6
  24. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/CHANGELOG +0 -55
  25. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/LICENSE +0 -339
  26. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/README.md +0 -73
  27. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/Rakefile +0 -8
  28. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/colorize.gemspec +0 -35
  29. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize.rb +0 -12
  30. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/class_methods.rb +0 -116
  31. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/instance_methods.rb +0 -135
  32. data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/test/test_colorize.rb +0 -161
  33. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Gemfile +0 -4
  34. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/LICENSE.txt +0 -22
  35. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/README.md +0 -34
  36. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rakefile +0 -1
  37. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rspec-example-matchers.txt +0 -184
  38. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/bin/devkit +0 -87
  39. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/devkit.gemspec +0 -27
  40. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit.rb +0 -18
  41. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/core.rb +0 -53
  42. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/identity.rb +0 -78
  43. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/ssh_identity.rb +0 -53
  44. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/version.rb +0 -3
  45. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/core_spec.rb +0 -46
  46. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/identity_spec.rb +0 -1
  47. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/ssh_identity_spec.rb +0 -1
  48. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit_spec.rb +0 -5
  49. data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/spec_helper.rb +0 -8
  50. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/AUTHORS +0 -3
  51. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/COPYING +0 -339
  52. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Changelog.md +0 -415
  53. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Gemfile +0 -9
  54. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/INSTALL +0 -59
  55. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/LICENSE +0 -7
  56. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/README.rdoc +0 -74
  57. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Rakefile +0 -30
  58. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/TODO +0 -6
  59. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/ansi_colors.rb +0 -38
  60. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/asking_for_arrays.rb +0 -18
  61. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/basic_usage.rb +0 -75
  62. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/color_scheme.rb +0 -32
  63. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/get_character.rb +0 -12
  64. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/limit.rb +0 -12
  65. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/menus.rb +0 -65
  66. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/overwrite.rb +0 -19
  67. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/page_and_wrap.rb +0 -322
  68. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/password.rb +0 -7
  69. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/repeat_entry.rb +0 -21
  70. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/trapping_eof.rb +0 -22
  71. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/using_readline.rb +0 -17
  72. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/highline.gemspec +0 -37
  73. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline.rb +0 -1048
  74. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/color_scheme.rb +0 -134
  75. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/compatibility.rb +0 -16
  76. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/import.rb +0 -41
  77. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/menu.rb +0 -381
  78. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/question.rb +0 -480
  79. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/simulate.rb +0 -48
  80. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/style.rb +0 -192
  81. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/version.rb +0 -4
  82. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/setup.rb +0 -1360
  83. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/highline.css +0 -65
  84. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/images/logo.png +0 -0
  85. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/index.html +0 -58
  86. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/string_methods.rb +0 -32
  87. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_color_scheme.rb +0 -96
  88. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_highline.rb +0 -1402
  89. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_import.rb +0 -52
  90. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_menu.rb +0 -439
  91. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_simulator.rb +0 -23
  92. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_string_highline.rb +0 -38
  93. data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_style.rb +0 -578
  94. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/BSDL +0 -22
  95. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/COPYING +0 -57
  96. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Gemfile +0 -9
  97. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/LEGAL +0 -4
  98. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/README.rdoc +0 -19
  99. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Rakefile +0 -16
  100. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/bm_yhpg.rb +0 -59
  101. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/helper.rb +0 -8
  102. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert.rb +0 -338
  103. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/enable_tracepoint_events.rb +0 -82
  104. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/version.rb +0 -3
  105. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/power_assert.gemspec +0 -23
  106. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/helper.rb +0 -10
  107. data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/test_power_assert.rb +0 -512
  108. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/CONTRIBUTING.rdoc +0 -38
  109. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/History.rdoc +0 -719
  110. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/MIT-LICENSE +0 -21
  111. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Manifest.txt +0 -154
  112. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/README.rdoc +0 -157
  113. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Rakefile +0 -82
  114. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/bin/rake +0 -33
  115. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/command_line_usage.rdoc +0 -158
  116. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile1 +0 -38
  117. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile2 +0 -35
  118. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/a.c +0 -6
  119. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/b.c +0 -6
  120. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/main.c +0 -11
  121. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/glossary.rdoc +0 -42
  122. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/jamis.rb +0 -591
  123. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/proto_rake.rdoc +0 -127
  124. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rake.1 +0 -141
  125. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rakefile.rdoc +0 -624
  126. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rational.rdoc +0 -151
  127. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.14.rdoc +0 -23
  128. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.15.rdoc +0 -35
  129. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.0.rdoc +0 -53
  130. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.3.rdoc +0 -78
  131. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.4.rdoc +0 -46
  132. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.6.0.rdoc +0 -141
  133. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.0.rdoc +0 -119
  134. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.1.rdoc +0 -59
  135. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.2.rdoc +0 -121
  136. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.3.rdoc +0 -47
  137. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.0.rdoc +0 -114
  138. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.2.rdoc +0 -165
  139. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.3.rdoc +0 -112
  140. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.4.rdoc +0 -147
  141. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.5.rdoc +0 -53
  142. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.6.rdoc +0 -37
  143. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.7.rdoc +0 -55
  144. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.0.rdoc +0 -112
  145. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.1.rdoc +0 -52
  146. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.2.rdoc +0 -55
  147. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.rdoc +0 -49
  148. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.3.rdoc +0 -102
  149. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.4.rdoc +0 -60
  150. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.5.rdoc +0 -55
  151. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.6.rdoc +0 -64
  152. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.0.rdoc +0 -178
  153. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.1.rdoc +0 -58
  154. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.2.rdoc +0 -53
  155. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.3.rdoc +0 -191
  156. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.1.0.rdoc +0 -61
  157. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake.rb +0 -73
  158. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/application.rb +0 -787
  159. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/backtrace.rb +0 -23
  160. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/clean.rb +0 -76
  161. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cloneable.rb +0 -16
  162. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/compositepublisher.rb +0 -21
  163. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/ftptools.rb +0 -137
  164. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/sshpublisher.rb +0 -60
  165. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cpu_counter.rb +0 -120
  166. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/default_loader.rb +0 -14
  167. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/dsl_definition.rb +0 -194
  168. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/early_time.rb +0 -21
  169. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_creation_task.rb +0 -24
  170. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_list.rb +0 -436
  171. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_task.rb +0 -46
  172. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_utils.rb +0 -123
  173. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_chain.rb +0 -56
  174. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_exception_mixin.rb +0 -16
  175. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/late_time.rb +0 -17
  176. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/linked_list.rb +0 -111
  177. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/loaders/makefile.rb +0 -53
  178. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/multi_task.rb +0 -13
  179. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/name_space.rb +0 -38
  180. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/packagetask.rb +0 -199
  181. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/phony.rb +0 -15
  182. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/private_reader.rb +0 -20
  183. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/promise.rb +0 -99
  184. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/pseudo_status.rb +0 -29
  185. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_module.rb +0 -38
  186. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_test_loader.rb +0 -22
  187. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
  188. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/scope.rb +0 -42
  189. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task.rb +0 -391
  190. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_argument_error.rb +0 -7
  191. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_arguments.rb +0 -102
  192. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_manager.rb +0 -316
  193. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/tasklib.rb +0 -11
  194. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/testtask.rb +0 -204
  195. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_history_display.rb +0 -48
  196. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_pool.rb +0 -163
  197. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/trace_output.rb +0 -22
  198. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/version.rb +0 -7
  199. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/win32.rb +0 -50
  200. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/rakelib/test_times.rake +0 -25
  201. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/file_creation.rb +0 -34
  202. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/helper.rb +0 -134
  203. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/rakefile_definitions.rb +0 -476
  204. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/ruby_runner.rb +0 -34
  205. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_private_reader.rb +0 -42
  206. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake.rb +0 -40
  207. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application.rb +0 -659
  208. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application_options.rb +0 -468
  209. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_backtrace.rb +0 -119
  210. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_clean.rb +0 -61
  211. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_cpu_counter.rb +0 -68
  212. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_definitions.rb +0 -84
  213. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_directory_task.rb +0 -76
  214. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_dsl.rb +0 -40
  215. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_early_time.rb +0 -31
  216. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_creation_task.rb +0 -56
  217. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list.rb +0 -687
  218. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list_path_map.rb +0 -15
  219. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_task.rb +0 -197
  220. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_utils.rb +0 -318
  221. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_ftp_file.rb +0 -74
  222. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_functional.rb +0 -484
  223. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_invocation_chain.rb +0 -64
  224. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_late_time.rb +0 -18
  225. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_linked_list.rb +0 -84
  226. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_makefile_loader.rb +0 -46
  227. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_multi_task.rb +0 -64
  228. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_name_space.rb +0 -57
  229. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_package_task.rb +0 -79
  230. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map.rb +0 -168
  231. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_explode.rb +0 -34
  232. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_partial.rb +0 -18
  233. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_pseudo_status.rb +0 -21
  234. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rake_test_loader.rb +0 -20
  235. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_reduce_compat.rb +0 -26
  236. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_require.rb +0 -40
  237. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rules.rb +0 -388
  238. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_scope.rb +0 -44
  239. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task.rb +0 -430
  240. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_argument_parsing.rb +0 -119
  241. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_arguments.rb +0 -134
  242. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager.rb +0 -178
  243. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager_argument_resolution.rb +0 -19
  244. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_with_arguments.rb +0 -172
  245. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_test_task.rb +0 -130
  246. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_thread_pool.rb +0 -145
  247. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_top_level_functions.rb +0 -71
  248. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_win32.rb +0 -72
  249. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_thread_history_display.rb +0 -101
  250. data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_trace_output.rb +0 -52
  251. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/COPYING +0 -64
  252. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/GPL +0 -339
  253. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/LGPL +0 -502
  254. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/PSFL +0 -271
  255. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/README.md +0 -101
  256. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/Rakefile +0 -71
  257. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test-unit.rb +0 -34
  258. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit.rb +0 -505
  259. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertion-failed-error.rb +0 -25
  260. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertions.rb +0 -2218
  261. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute-matcher.rb +0 -26
  262. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute.rb +0 -158
  263. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/auto-runner-loader.rb +0 -17
  264. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/autorunner.rb +0 -536
  265. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/code-snippet-fetcher.rb +0 -58
  266. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector.rb +0 -73
  267. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/descendant.rb +0 -19
  268. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/dir.rb +0 -108
  269. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/load.rb +0 -202
  270. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/objectspace.rb +0 -34
  271. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/xml.rb +0 -249
  272. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color-scheme.rb +0 -198
  273. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color.rb +0 -134
  274. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/data.rb +0 -262
  275. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/diff.rb +0 -746
  276. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/error.rb +0 -158
  277. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/exception-handler.rb +0 -82
  278. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/failure.rb +0 -169
  279. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fault-location-detector.rb +0 -100
  280. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fixture.rb +0 -295
  281. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/notification.rb +0 -136
  282. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/omission.rb +0 -195
  283. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/pending.rb +0 -154
  284. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/priority.rb +0 -192
  285. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/console.rb +0 -59
  286. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/emacs.rb +0 -8
  287. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/xml.rb +0 -15
  288. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/test-suite-creator.rb +0 -89
  289. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testcase.rb +0 -811
  290. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testresult.rb +0 -132
  291. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testsuite.rb +0 -175
  292. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/outputlevel.rb +0 -15
  293. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/testrunner.rb +0 -693
  294. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  295. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunner.rb +0 -53
  296. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnermediator.rb +0 -114
  297. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  298. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/xml/testrunner.rb +0 -224
  299. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/backtracefilter.rb +0 -59
  300. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/method-owner-finder.rb +0 -28
  301. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/observable.rb +0 -90
  302. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/output.rb +0 -31
  303. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/procwrapper.rb +0 -48
  304. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/version.rb +0 -5
  305. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/adder.rb +0 -13
  306. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/subtracter.rb +0 -12
  307. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_adder.rb +0 -20
  308. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_subtracter.rb +0 -20
  309. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_user.rb +0 -23
  310. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-descendant.rb +0 -178
  311. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-load.rb +0 -442
  312. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_dir.rb +0 -406
  313. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_objectspace.rb +0 -100
  314. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.csv +0 -3
  315. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.tsv +0 -3
  316. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.csv +0 -3
  317. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.tsv +0 -3
  318. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.csv +0 -2
  319. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.tsv +0 -2
  320. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/plus.csv +0 -3
  321. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/run-test.rb +0 -22
  322. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-assertions.rb +0 -2160
  323. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute-matcher.rb +0 -38
  324. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute.rb +0 -123
  325. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-code-snippet.rb +0 -37
  326. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color-scheme.rb +0 -82
  327. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color.rb +0 -47
  328. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-data.rb +0 -303
  329. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-diff.rb +0 -518
  330. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-emacs-runner.rb +0 -60
  331. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-error.rb +0 -26
  332. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-failure.rb +0 -33
  333. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fault-location-detector.rb +0 -163
  334. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fixture.rb +0 -713
  335. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-notification.rb +0 -33
  336. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-omission.rb +0 -81
  337. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-pending.rb +0 -70
  338. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-priority.rb +0 -173
  339. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-case.rb +0 -1171
  340. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-result.rb +0 -113
  341. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite-creator.rb +0 -97
  342. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite.rb +0 -150
  343. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/testunit-test-util.rb +0 -31
  344. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/ui/test_testrunmediator.rb +0 -20
  345. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-method-owner-finder.rb +0 -38
  346. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-output.rb +0 -11
  347. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_backtracefilter.rb +0 -52
  348. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_observable.rb +0 -102
  349. data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_procwrapper.rb +0 -36
  350. data/vendor/bundle/ruby/2.2.0/specifications/colorize-0.7.7.gemspec +0 -38
  351. data/vendor/bundle/ruby/2.2.0/specifications/devkit-0.1.0.gemspec +0 -46
  352. data/vendor/bundle/ruby/2.2.0/specifications/highline-1.7.8.gemspec +0 -37
  353. data/vendor/bundle/ruby/2.2.0/specifications/power_assert-0.3.0.gemspec +0 -41
  354. data/vendor/bundle/ruby/2.2.0/specifications/rake-11.1.2.gemspec +0 -43
  355. data/vendor/bundle/ruby/2.2.0/specifications/test-unit-3.1.9.gemspec +0 -47
@@ -1,480 +0,0 @@
1
- # question.rb
2
- #
3
- # Created by James Edward Gray II on 2005-04-26.
4
- # Copyright 2005 Gray Productions. All rights reserved.
5
- #
6
- # This is Free Software. See LICENSE and COPYING for details.
7
-
8
- require "optparse"
9
- require "date"
10
- require "pathname"
11
-
12
- class HighLine
13
- #
14
- # Question objects contain all the details of a single invocation of
15
- # HighLine.ask(). The object is initialized by the parameters passed to
16
- # HighLine.ask() and then queried to make sure each step of the input
17
- # process is handled according to the users wishes.
18
- #
19
- class Question
20
- # An internal HighLine error. User code does not need to trap this.
21
- class NoAutoCompleteMatch < StandardError
22
- # do nothing, just creating a unique error type
23
- end
24
-
25
- #
26
- # Create an instance of HighLine::Question. Expects a _question_ to ask
27
- # (can be <tt>""</tt>) and an _answer_type_ to convert the answer to.
28
- # The _answer_type_ parameter must be a type recognized by
29
- # Question.convert(). If given, a block is yielded the new Question
30
- # object to allow custom initialization.
31
- #
32
- def initialize( question, answer_type )
33
- # initialize instance data
34
- @question = String(question).dup
35
- @answer_type = answer_type
36
- @completion = @answer_type
37
-
38
- @character = nil
39
- @limit = nil
40
- @echo = true
41
- @readline = false
42
- @whitespace = :strip
43
- @case = nil
44
- @default = nil
45
- @validate = nil
46
- @above = nil
47
- @below = nil
48
- @in = nil
49
- @confirm = nil
50
- @gather = false
51
- @verify_match = false
52
- @first_answer = nil
53
- @directory = Pathname.new(File.expand_path(File.dirname($0)))
54
- @glob = "*"
55
- @responses = Hash.new
56
- @overwrite = false
57
-
58
- # allow block to override settings
59
- yield self if block_given?
60
-
61
- # finalize responses based on settings
62
- build_responses
63
- end
64
-
65
- # The ERb template of the question to be asked.
66
- attr_accessor :question
67
- # The type that will be used to convert this answer.
68
- attr_accessor :answer_type
69
- # For Auto-completion
70
- attr_accessor :completion
71
- #
72
- # Can be set to +true+ to use HighLine's cross-platform character reader
73
- # instead of fetching an entire line of input. (Note: HighLine's character
74
- # reader *ONLY* supports STDIN on Windows and Unix.) Can also be set to
75
- # <tt>:getc</tt> to use that method on the input stream.
76
- #
77
- # *WARNING*: The _echo_ and _overwrite_ attributes for a question are
78
- # ignored when using the <tt>:getc</tt> method.
79
- #
80
- attr_accessor :character
81
- #
82
- # Allows you to set a character limit for input.
83
- #
84
- # *WARNING*: This option forces a character by character read.
85
- #
86
- attr_accessor :limit
87
- #
88
- # Can be set to +true+ or +false+ to control whether or not input will
89
- # be echoed back to the user. A setting of +true+ will cause echo to
90
- # match input, but any other true value will be treated as a String to
91
- # echo for each character typed.
92
- #
93
- # This requires HighLine's character reader. See the _character_
94
- # attribute for details.
95
- #
96
- # *Note*: When using HighLine to manage echo on Unix based systems, we
97
- # recommend installing the termios gem. Without it, it's possible to type
98
- # fast enough to have letters still show up (when reading character by
99
- # character only).
100
- #
101
- attr_accessor :echo
102
- #
103
- # Use the Readline library to fetch input. This allows input editing as
104
- # well as keeping a history. In addition, tab will auto-complete
105
- # within an Array of choices or a file listing.
106
- #
107
- # *WARNING*: This option is incompatible with all of HighLine's
108
- # character reading modes and it causes HighLine to ignore the
109
- # specified _input_ stream.
110
- #
111
- attr_accessor :readline
112
- #
113
- # Used to control whitespace processing for the answer to this question.
114
- # See HighLine::Question.remove_whitespace() for acceptable settings.
115
- #
116
- attr_accessor :whitespace
117
- #
118
- # Used to control character case processing for the answer to this question.
119
- # See HighLine::Question.change_case() for acceptable settings.
120
- #
121
- attr_accessor :case
122
- # Used to provide a default answer to this question.
123
- attr_accessor :default
124
- #
125
- # If set to a Regexp, the answer must match (before type conversion).
126
- # Can also be set to a Proc which will be called with the provided
127
- # answer to validate with a +true+ or +false+ return.
128
- #
129
- attr_accessor :validate
130
- # Used to control range checks for answer.
131
- attr_accessor :above, :below
132
- # If set, answer must pass an include?() check on this object.
133
- attr_accessor :in
134
- #
135
- # Asks a yes or no confirmation question, to ensure a user knows what
136
- # they have just agreed to. If set to +true+ the question will be,
137
- # "Are you sure? " Any other true value for this attribute is assumed
138
- # to be the question to ask. When +false+ or +nil+ (the default),
139
- # answers are not confirmed.
140
- #
141
- attr_accessor :confirm
142
- #
143
- # When set, the user will be prompted for multiple answers which will
144
- # be collected into an Array or Hash and returned as the final answer.
145
- #
146
- # You can set _gather_ to an Integer to have an Array of exactly that
147
- # many answers collected, or a String/Regexp to match an end input which
148
- # will not be returned in the Array.
149
- #
150
- # Optionally _gather_ can be set to a Hash. In this case, the question
151
- # will be asked once for each key and the answers will be returned in a
152
- # Hash, mapped by key. The <tt>@key</tt> variable is set before each
153
- # question is evaluated, so you can use it in your question.
154
- #
155
- attr_accessor :gather
156
- #
157
- # When set to +true+ multiple entries will be collected according to
158
- # the setting for _gather_, except they will be required to match
159
- # each other. Multiple identical entries will return a single answer.
160
- #
161
- attr_accessor :verify_match
162
- #
163
- # When set to a non *nil* value, this will be tried as an answer to the
164
- # question. If this answer passes validations, it will become the result
165
- # without the user ever being prompted. Otherwise this value is discarded,
166
- # and this Question is resolved as a normal call to HighLine.ask().
167
- #
168
- attr_writer :first_answer
169
- #
170
- # The directory from which a user will be allowed to select files, when
171
- # File or Pathname is specified as an _answer_type_. Initially set to
172
- # <tt>Pathname.new(File.expand_path(File.dirname($0)))</tt>.
173
- #
174
- attr_accessor :directory
175
- #
176
- # The glob pattern used to limit file selection when File or Pathname is
177
- # specified as an _answer_type_. Initially set to <tt>"*"</tt>.
178
- #
179
- attr_accessor :glob
180
- #
181
- # A Hash that stores the various responses used by HighLine to notify
182
- # the user. The currently used responses and their purpose are as
183
- # follows:
184
- #
185
- # <tt>:ambiguous_completion</tt>:: Used to notify the user of an
186
- # ambiguous answer the auto-completion
187
- # system cannot resolve.
188
- # <tt>:ask_on_error</tt>:: This is the question that will be
189
- # redisplayed to the user in the event
190
- # of an error. Can be set to
191
- # <tt>:question</tt> to repeat the
192
- # original question.
193
- # <tt>:invalid_type</tt>:: The error message shown when a type
194
- # conversion fails.
195
- # <tt>:no_completion</tt>:: Used to notify the user that their
196
- # selection does not have a valid
197
- # auto-completion match.
198
- # <tt>:not_in_range</tt>:: Used to notify the user that a
199
- # provided answer did not satisfy
200
- # the range requirement tests.
201
- # <tt>:not_valid</tt>:: The error message shown when
202
- # validation checks fail.
203
- #
204
- attr_reader :responses
205
- #
206
- # When set to +true+ the question is asked, but output does not progress to
207
- # the next line. The Cursor is moved back to the beginning of the question
208
- # line and it is cleared so that all the contents of the line disappear from
209
- # the screen.
210
- #
211
- attr_accessor :overwrite
212
-
213
- #
214
- # Returns the provided _answer_string_ or the default answer for this
215
- # Question if a default was set and the answer is empty.
216
- #
217
- def answer_or_default( answer_string )
218
- if answer_string.length == 0 and not @default.nil?
219
- @default
220
- else
221
- answer_string
222
- end
223
- end
224
-
225
- #
226
- # Called late in the initialization process to build intelligent
227
- # responses based on the details of this Question object.
228
- # Also used by Menu#update_responses.
229
- #
230
- def build_responses(message_source = answer_type, new_hash_wins = false)
231
- append_default if [::String, Symbol].include? default.class
232
-
233
- choice_error_str_func = lambda do
234
- message_source.is_a?(Array) \
235
- ? '[' + message_source.map { |s| "#{s}" }.join(', ') + ']' \
236
- : message_source.inspect
237
- end
238
-
239
- old_hash = @responses
240
-
241
- new_hash = { :ambiguous_completion =>
242
- "Ambiguous choice. Please choose one of " +
243
- choice_error_str_func.call + '.',
244
- :ask_on_error =>
245
- "? ",
246
- :invalid_type =>
247
- "You must enter a valid #{message_source}.",
248
- :no_completion =>
249
- "You must choose one of " + choice_error_str_func.call + '.',
250
- :not_in_range =>
251
- "Your answer isn't within the expected range " +
252
- "(#{expected_range}).",
253
- :mismatch =>
254
- "Your entries didn't match.",
255
- :not_valid =>
256
- "Your answer isn't valid (must match " +
257
- "#{@validate.inspect})." }
258
-
259
- @responses = new_hash_wins ? old_hash.merge(new_hash) : new_hash.merge(old_hash)
260
- end
261
-
262
- #
263
- # Returns the provided _answer_string_ after changing character case by
264
- # the rules of this Question. Valid settings for whitespace are:
265
- #
266
- # +nil+:: Do not alter character case.
267
- # (Default.)
268
- # <tt>:up</tt>:: Calls upcase().
269
- # <tt>:upcase</tt>:: Calls upcase().
270
- # <tt>:down</tt>:: Calls downcase().
271
- # <tt>:downcase</tt>:: Calls downcase().
272
- # <tt>:capitalize</tt>:: Calls capitalize().
273
- #
274
- # An unrecognized choice (like <tt>:none</tt>) is treated as +nil+.
275
- #
276
- def change_case( answer_string )
277
- if [:up, :upcase].include?(@case)
278
- answer_string.upcase
279
- elsif [:down, :downcase].include?(@case)
280
- answer_string.downcase
281
- elsif @case == :capitalize
282
- answer_string.capitalize
283
- else
284
- answer_string
285
- end
286
- end
287
-
288
- #
289
- # Transforms the given _answer_string_ into the expected type for this
290
- # Question. Currently supported conversions are:
291
- #
292
- # <tt>[...]</tt>:: Answer must be a member of the passed Array.
293
- # Auto-completion is used to expand partial
294
- # answers.
295
- # <tt>lambda {...}</tt>:: Answer is passed to lambda for conversion.
296
- # Date:: Date.parse() is called with answer.
297
- # DateTime:: DateTime.parse() is called with answer.
298
- # File:: The entered file name is auto-completed in
299
- # terms of _directory_ + _glob_, opened, and
300
- # returned.
301
- # Float:: Answer is converted with Kernel.Float().
302
- # Integer:: Answer is converted with Kernel.Integer().
303
- # +nil+:: Answer is left in String format. (Default.)
304
- # Pathname:: Same as File, save that a Pathname object is
305
- # returned.
306
- # String:: Answer is converted with Kernel.String().
307
- # HighLine::String:: Answer is converted with HighLine::String()
308
- # Regexp:: Answer is fed to Regexp.new().
309
- # Symbol:: The method to_sym() is called on answer and
310
- # the result returned.
311
- # <i>any other Class</i>:: The answer is passed on to
312
- # <tt>Class.parse()</tt>.
313
- #
314
- # This method throws ArgumentError, if the conversion cannot be
315
- # completed for any reason.
316
- #
317
- def convert( answer_string )
318
- if @answer_type.nil?
319
- answer_string
320
- elsif [::String, HighLine::String].include?(@answer_type)
321
- HighLine::String(answer_string)
322
- elsif [Float, Integer, String].include?(@answer_type)
323
- Kernel.send(@answer_type.to_s.to_sym, answer_string)
324
- elsif @answer_type == Symbol
325
- answer_string.to_sym
326
- elsif @answer_type == Regexp
327
- Regexp.new(answer_string)
328
- elsif @answer_type.is_a?(Array) or [File, Pathname].include?(@answer_type)
329
- # cheating, using OptionParser's Completion module
330
- choices = selection
331
- choices.extend(OptionParser::Completion)
332
- answer = choices.complete(answer_string)
333
- if answer.nil?
334
- raise NoAutoCompleteMatch
335
- end
336
- if @answer_type.is_a?(Array)
337
- answer.last
338
- elsif @answer_type == File
339
- File.open(File.join(@directory.to_s, answer.last))
340
- else
341
- Pathname.new(File.join(@directory.to_s, answer.last))
342
- end
343
- elsif [Date, DateTime].include?(@answer_type) or @answer_type.is_a?(Class)
344
- @answer_type.parse(answer_string)
345
- elsif @answer_type.is_a?(Proc)
346
- @answer_type[answer_string]
347
- end
348
- end
349
-
350
- # Returns an English explanation of the current range settings.
351
- def expected_range( )
352
- expected = [ ]
353
-
354
- expected << "above #{@above}" unless @above.nil?
355
- expected << "below #{@below}" unless @below.nil?
356
- expected << "included in #{@in.inspect}" unless @in.nil?
357
-
358
- case expected.size
359
- when 0 then ""
360
- when 1 then expected.first
361
- when 2 then expected.join(" and ")
362
- else expected[0..-2].join(", ") + ", and #{expected.last}"
363
- end
364
- end
365
-
366
- # Returns _first_answer_, which will be unset following this call.
367
- def first_answer( )
368
- @first_answer
369
- ensure
370
- @first_answer = nil
371
- end
372
-
373
- # Returns true if _first_answer_ is set.
374
- def first_answer?( )
375
- not @first_answer.nil?
376
- end
377
-
378
- #
379
- # Returns +true+ if the _answer_object_ is greater than the _above_
380
- # attribute, less than the _below_ attribute and include?()ed in the
381
- # _in_ attribute. Otherwise, +false+ is returned. Any +nil+ attributes
382
- # are not checked.
383
- #
384
- def in_range?( answer_object )
385
- (@above.nil? or answer_object > @above) and
386
- (@below.nil? or answer_object < @below) and
387
- (@in.nil? or @in.include?(answer_object))
388
- end
389
-
390
- #
391
- # Returns the provided _answer_string_ after processing whitespace by
392
- # the rules of this Question. Valid settings for whitespace are:
393
- #
394
- # +nil+:: Do not alter whitespace.
395
- # <tt>:strip</tt>:: Calls strip(). (Default.)
396
- # <tt>:chomp</tt>:: Calls chomp().
397
- # <tt>:collapse</tt>:: Collapses all whitespace runs to a
398
- # single space.
399
- # <tt>:strip_and_collapse</tt>:: Calls strip(), then collapses all
400
- # whitespace runs to a single space.
401
- # <tt>:chomp_and_collapse</tt>:: Calls chomp(), then collapses all
402
- # whitespace runs to a single space.
403
- # <tt>:remove</tt>:: Removes all whitespace.
404
- #
405
- # An unrecognized choice (like <tt>:none</tt>) is treated as +nil+.
406
- #
407
- # This process is skipped for single character input.
408
- #
409
- def remove_whitespace( answer_string )
410
- if @whitespace.nil?
411
- answer_string
412
- elsif [:strip, :chomp].include?(@whitespace)
413
- answer_string.send(@whitespace)
414
- elsif @whitespace == :collapse
415
- answer_string.gsub(/\s+/, " ")
416
- elsif [:strip_and_collapse, :chomp_and_collapse].include?(@whitespace)
417
- result = answer_string.send(@whitespace.to_s[/^[a-z]+/])
418
- result.gsub(/\s+/, " ")
419
- elsif @whitespace == :remove
420
- answer_string.gsub(/\s+/, "")
421
- else
422
- answer_string
423
- end
424
- end
425
-
426
- #
427
- # Returns an Array of valid answers to this question. These answers are
428
- # only known when _answer_type_ is set to an Array of choices, File, or
429
- # Pathname. Any other time, this method will return an empty Array.
430
- #
431
- def selection( )
432
- if @completion.is_a?(Array)
433
- @completion
434
- elsif [File, Pathname].include?(@completion)
435
- Dir[File.join(@directory.to_s, @glob)].map do |file|
436
- File.basename(file)
437
- end
438
- else
439
- [ ]
440
- end
441
- end
442
-
443
- # Stringifies the question to be asked.
444
- def to_s
445
- @question
446
- end
447
-
448
- #
449
- # Returns +true+ if the provided _answer_string_ is accepted by the
450
- # _validate_ attribute or +false+ if it's not.
451
- #
452
- # It's important to realize that an answer is validated after whitespace
453
- # and case handling.
454
- #
455
- def valid_answer?( answer_string )
456
- @validate.nil? or
457
- (@validate.is_a?(Regexp) and answer_string =~ @validate) or
458
- (@validate.is_a?(Proc) and @validate[answer_string])
459
- end
460
-
461
- private
462
-
463
- #
464
- # Adds the default choice to the end of question between <tt>|...|</tt>.
465
- # Trailing whitespace is preserved so the function of HighLine.say() is
466
- # not affected.
467
- #
468
- def append_default( )
469
- if @question =~ /([\t ]+)\Z/
470
- @question << "|#{@default}|#{$1}"
471
- elsif @question == ""
472
- @question << "|#{@default}| "
473
- elsif @question[-1, 1] == "\n"
474
- @question[-2, 0] = " |#{@default}|"
475
- else
476
- @question << " |#{@default}|"
477
- end
478
- end
479
- end
480
- end