win32-api 1.6.0-universal-mingw32 → 1.6.1.beta1-universal-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES +4 -0
- data/Gemfile.lock +5 -5
- data/Rakefile +45 -19
- data/appveyor.yml +12 -0
- data/appveyor/build.cmd +3 -0
- data/lib/win32/api.rb +8 -0
- data/lib/win32/ruby21_32/win32/api.so +0 -0
- data/lib/win32/ruby21_64/win32/api.so +0 -0
- data/lib/win32/ruby22_32/win32/api.so +0 -0
- data/lib/win32/ruby22_64/win32/api.so +0 -0
- data/lib/win32/ruby23_32/win32/api.so +0 -0
- data/lib/win32/ruby23_64/win32/api.so +0 -0
- data/lib/win32/ruby24_32/win32/api.so +0 -0
- data/lib/win32/ruby24_64/win32/api.so +0 -0
- data/lib/win32/ruby2_32/win32/api.so +0 -0
- data/lib/win32/ruby2_64/win32/api.so +0 -0
- data/win32-api.gemspec +1 -1
- metadata +8 -341
- data/vendor/bundle/ruby/2.2.0/bin/devkit +0 -23
- data/vendor/bundle/ruby/2.2.0/bin/devkit.bat +0 -6
- data/vendor/bundle/ruby/2.2.0/bin/rake +0 -23
- data/vendor/bundle/ruby/2.2.0/bin/rake.bat +0 -6
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/CHANGELOG +0 -55
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/LICENSE +0 -339
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/README.md +0 -73
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/Rakefile +0 -8
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/colorize.gemspec +0 -35
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize.rb +0 -12
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/class_methods.rb +0 -116
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/instance_methods.rb +0 -135
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/test/test_colorize.rb +0 -161
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Gemfile +0 -4
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/LICENSE.txt +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/README.md +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rakefile +0 -1
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rspec-example-matchers.txt +0 -184
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/bin/devkit +0 -87
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/devkit.gemspec +0 -27
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit.rb +0 -18
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/core.rb +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/identity.rb +0 -78
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/ssh_identity.rb +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/version.rb +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/core_spec.rb +0 -46
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/identity_spec.rb +0 -1
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/ssh_identity_spec.rb +0 -1
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit_spec.rb +0 -5
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/spec_helper.rb +0 -8
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/AUTHORS +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/COPYING +0 -339
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Changelog.md +0 -415
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Gemfile +0 -9
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/INSTALL +0 -59
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/LICENSE +0 -7
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/README.rdoc +0 -74
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Rakefile +0 -30
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/TODO +0 -6
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/ansi_colors.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/asking_for_arrays.rb +0 -18
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/basic_usage.rb +0 -75
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/color_scheme.rb +0 -32
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/get_character.rb +0 -12
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/limit.rb +0 -12
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/menus.rb +0 -65
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/overwrite.rb +0 -19
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/page_and_wrap.rb +0 -322
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/password.rb +0 -7
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/repeat_entry.rb +0 -21
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/trapping_eof.rb +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/using_readline.rb +0 -17
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/highline.gemspec +0 -37
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline.rb +0 -1048
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/color_scheme.rb +0 -134
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/compatibility.rb +0 -16
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/import.rb +0 -41
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/menu.rb +0 -381
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/question.rb +0 -480
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/simulate.rb +0 -48
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/style.rb +0 -192
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/version.rb +0 -4
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/setup.rb +0 -1360
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/highline.css +0 -65
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/images/logo.png +0 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/index.html +0 -58
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/string_methods.rb +0 -32
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_color_scheme.rb +0 -96
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_highline.rb +0 -1402
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_import.rb +0 -52
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_menu.rb +0 -439
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_simulator.rb +0 -23
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_string_highline.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_style.rb +0 -578
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/BSDL +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/COPYING +0 -57
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Gemfile +0 -9
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/LEGAL +0 -4
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/README.rdoc +0 -19
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Rakefile +0 -16
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/bm_yhpg.rb +0 -59
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/helper.rb +0 -8
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert.rb +0 -338
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/enable_tracepoint_events.rb +0 -82
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/version.rb +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/power_assert.gemspec +0 -23
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/helper.rb +0 -10
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/test_power_assert.rb +0 -512
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/CONTRIBUTING.rdoc +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/History.rdoc +0 -719
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/MIT-LICENSE +0 -21
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Manifest.txt +0 -154
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/README.rdoc +0 -157
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Rakefile +0 -82
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/bin/rake +0 -33
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/command_line_usage.rdoc +0 -158
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile1 +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile2 +0 -35
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/a.c +0 -6
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/b.c +0 -6
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/main.c +0 -11
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/glossary.rdoc +0 -42
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/jamis.rb +0 -591
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/proto_rake.rdoc +0 -127
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rake.1 +0 -141
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rakefile.rdoc +0 -624
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rational.rdoc +0 -151
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.14.rdoc +0 -23
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.15.rdoc +0 -35
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.0.rdoc +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.3.rdoc +0 -78
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.4.rdoc +0 -46
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.6.0.rdoc +0 -141
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.0.rdoc +0 -119
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.1.rdoc +0 -59
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.2.rdoc +0 -121
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.3.rdoc +0 -47
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.0.rdoc +0 -114
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.2.rdoc +0 -165
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.3.rdoc +0 -112
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.4.rdoc +0 -147
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.5.rdoc +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.6.rdoc +0 -37
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.7.rdoc +0 -55
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.0.rdoc +0 -112
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.1.rdoc +0 -52
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.2.rdoc +0 -55
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.rdoc +0 -49
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.3.rdoc +0 -102
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.4.rdoc +0 -60
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.5.rdoc +0 -55
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.6.rdoc +0 -64
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.0.rdoc +0 -178
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.1.rdoc +0 -58
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.2.rdoc +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.3.rdoc +0 -191
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.1.0.rdoc +0 -61
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake.rb +0 -73
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/application.rb +0 -787
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/backtrace.rb +0 -23
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/clean.rb +0 -76
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cloneable.rb +0 -16
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/compositepublisher.rb +0 -21
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/ftptools.rb +0 -137
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/sshpublisher.rb +0 -60
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cpu_counter.rb +0 -120
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/default_loader.rb +0 -14
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/dsl_definition.rb +0 -194
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/early_time.rb +0 -21
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_creation_task.rb +0 -24
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_list.rb +0 -436
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_task.rb +0 -46
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_utils.rb +0 -123
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_chain.rb +0 -56
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_exception_mixin.rb +0 -16
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/late_time.rb +0 -17
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/linked_list.rb +0 -111
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/loaders/makefile.rb +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/multi_task.rb +0 -13
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/name_space.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/packagetask.rb +0 -199
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/phony.rb +0 -15
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/private_reader.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/promise.rb +0 -99
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/pseudo_status.rb +0 -29
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_module.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_test_loader.rb +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/scope.rb +0 -42
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task.rb +0 -391
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_argument_error.rb +0 -7
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_arguments.rb +0 -102
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_manager.rb +0 -316
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/tasklib.rb +0 -11
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/testtask.rb +0 -204
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_history_display.rb +0 -48
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_pool.rb +0 -163
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/trace_output.rb +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/version.rb +0 -7
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/win32.rb +0 -50
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/rakelib/test_times.rake +0 -25
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/file_creation.rb +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/helper.rb +0 -134
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/rakefile_definitions.rb +0 -476
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/ruby_runner.rb +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_private_reader.rb +0 -42
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake.rb +0 -40
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application.rb +0 -659
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application_options.rb +0 -468
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_backtrace.rb +0 -119
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_clean.rb +0 -61
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_cpu_counter.rb +0 -68
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_definitions.rb +0 -84
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_directory_task.rb +0 -76
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_dsl.rb +0 -40
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_early_time.rb +0 -31
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_creation_task.rb +0 -56
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list.rb +0 -687
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list_path_map.rb +0 -15
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_task.rb +0 -197
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_utils.rb +0 -318
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_ftp_file.rb +0 -74
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_functional.rb +0 -484
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_invocation_chain.rb +0 -64
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_late_time.rb +0 -18
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_linked_list.rb +0 -84
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_makefile_loader.rb +0 -46
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_multi_task.rb +0 -64
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_name_space.rb +0 -57
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_package_task.rb +0 -79
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map.rb +0 -168
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_explode.rb +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_partial.rb +0 -18
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_pseudo_status.rb +0 -21
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rake_test_loader.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_reduce_compat.rb +0 -26
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_require.rb +0 -40
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rules.rb +0 -388
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_scope.rb +0 -44
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task.rb +0 -430
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_argument_parsing.rb +0 -119
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_arguments.rb +0 -134
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager.rb +0 -178
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager_argument_resolution.rb +0 -19
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_with_arguments.rb +0 -172
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_test_task.rb +0 -130
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_thread_pool.rb +0 -145
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_top_level_functions.rb +0 -71
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_win32.rb +0 -72
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_thread_history_display.rb +0 -101
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_trace_output.rb +0 -52
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/COPYING +0 -64
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/GPL +0 -339
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/LGPL +0 -502
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/PSFL +0 -271
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/README.md +0 -101
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/Rakefile +0 -71
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test-unit.rb +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit.rb +0 -505
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertion-failed-error.rb +0 -25
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertions.rb +0 -2218
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute-matcher.rb +0 -26
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute.rb +0 -158
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/auto-runner-loader.rb +0 -17
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/autorunner.rb +0 -536
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/code-snippet-fetcher.rb +0 -58
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector.rb +0 -73
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/descendant.rb +0 -19
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/dir.rb +0 -108
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/load.rb +0 -202
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/objectspace.rb +0 -34
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/xml.rb +0 -249
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color-scheme.rb +0 -198
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color.rb +0 -134
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/data.rb +0 -262
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/diff.rb +0 -746
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/error.rb +0 -158
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/exception-handler.rb +0 -82
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/failure.rb +0 -169
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fault-location-detector.rb +0 -100
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fixture.rb +0 -295
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/notification.rb +0 -136
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/omission.rb +0 -195
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/pending.rb +0 -154
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/priority.rb +0 -192
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/console.rb +0 -59
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/emacs.rb +0 -8
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/xml.rb +0 -15
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/test-suite-creator.rb +0 -89
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testcase.rb +0 -811
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testresult.rb +0 -132
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testsuite.rb +0 -175
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/outputlevel.rb +0 -15
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/testrunner.rb +0 -693
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/emacs/testrunner.rb +0 -49
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunner.rb +0 -53
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnermediator.rb +0 -114
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnerutilities.rb +0 -41
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/xml/testrunner.rb +0 -224
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/backtracefilter.rb +0 -59
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/method-owner-finder.rb +0 -28
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/observable.rb +0 -90
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/output.rb +0 -31
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/procwrapper.rb +0 -48
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/version.rb +0 -5
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/adder.rb +0 -13
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/subtracter.rb +0 -12
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_adder.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_subtracter.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_user.rb +0 -23
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-descendant.rb +0 -178
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-load.rb +0 -442
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_dir.rb +0 -406
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_objectspace.rb +0 -100
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.csv +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.tsv +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.csv +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.tsv +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.csv +0 -2
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.tsv +0 -2
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/plus.csv +0 -3
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/run-test.rb +0 -22
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-assertions.rb +0 -2160
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute-matcher.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute.rb +0 -123
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-code-snippet.rb +0 -37
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color-scheme.rb +0 -82
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color.rb +0 -47
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-data.rb +0 -303
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-diff.rb +0 -518
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-emacs-runner.rb +0 -60
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-error.rb +0 -26
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-failure.rb +0 -33
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fault-location-detector.rb +0 -163
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fixture.rb +0 -713
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-notification.rb +0 -33
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-omission.rb +0 -81
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-pending.rb +0 -70
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-priority.rb +0 -173
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-case.rb +0 -1171
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-result.rb +0 -113
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite-creator.rb +0 -97
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite.rb +0 -150
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/testunit-test-util.rb +0 -31
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/ui/test_testrunmediator.rb +0 -20
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-method-owner-finder.rb +0 -38
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-output.rb +0 -11
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_backtracefilter.rb +0 -52
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_observable.rb +0 -102
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_procwrapper.rb +0 -36
- data/vendor/bundle/ruby/2.2.0/specifications/colorize-0.7.7.gemspec +0 -38
- data/vendor/bundle/ruby/2.2.0/specifications/devkit-0.1.0.gemspec +0 -46
- data/vendor/bundle/ruby/2.2.0/specifications/highline-1.7.8.gemspec +0 -37
- data/vendor/bundle/ruby/2.2.0/specifications/power_assert-0.3.0.gemspec +0 -41
- data/vendor/bundle/ruby/2.2.0/specifications/rake-11.1.2.gemspec +0 -43
- 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
|