windows-pr 1.2.5 → 1.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (505) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/CHANGES +4 -1
  4. data/windows-pr.gemspec +2 -2
  5. metadata +4 -503
  6. data/Gemfile.lock +0 -26
  7. data/vendor/bundle/ruby/2.2.0/bin/rake +0 -23
  8. data/vendor/bundle/ruby/2.2.0/bin/rake.bat +0 -6
  9. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/History.rdoc +0 -1176
  10. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/Manifest.txt +0 -26
  11. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/README.rdoc +0 -656
  12. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/Rakefile +0 -72
  13. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/design_rationale.rb +0 -52
  14. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/hoe/minitest.rb +0 -26
  15. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest.rb +0 -815
  16. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/assertions.rb +0 -674
  17. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/autorun.rb +0 -13
  18. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/benchmark.rb +0 -424
  19. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/expectations.rb +0 -284
  20. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/hell.rb +0 -17
  21. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/mock.rb +0 -232
  22. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/parallel.rb +0 -69
  23. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/pride.rb +0 -4
  24. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/pride_plugin.rb +0 -142
  25. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/spec.rb +0 -331
  26. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/test.rb +0 -284
  27. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/lib/minitest/unit.rb +0 -45
  28. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/metametameta.rb +0 -90
  29. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/test_minitest_benchmark.rb +0 -137
  30. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/test_minitest_mock.rb +0 -512
  31. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/test_minitest_reporter.rb +0 -281
  32. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/test_minitest_spec.rb +0 -967
  33. data/vendor/bundle/ruby/2.2.0/gems/minitest-5.9.0/test/minitest/test_minitest_test.rb +0 -1983
  34. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/CONTRIBUTING.rdoc +0 -36
  35. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/Gemfile +0 -3
  36. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/History.rdoc +0 -2228
  37. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/MIT-LICENSE +0 -21
  38. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/README.rdoc +0 -157
  39. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/Rakefile +0 -29
  40. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/appveyor.yml +0 -24
  41. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/bin/console +0 -7
  42. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/bin/setup +0 -6
  43. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/command_line_usage.rdoc +0 -158
  44. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/example/Rakefile1 +0 -38
  45. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/example/Rakefile2 +0 -35
  46. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/example/a.c +0 -6
  47. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/example/b.c +0 -6
  48. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/example/main.c +0 -11
  49. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/glossary.rdoc +0 -42
  50. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/jamis.rb +0 -591
  51. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/proto_rake.rdoc +0 -127
  52. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/rake.1 +0 -141
  53. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/rakefile.rdoc +0 -624
  54. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/rational.rdoc +0 -151
  55. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/README.md +0 -4
  56. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.4.14.rdoc +0 -23
  57. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.4.15.rdoc +0 -35
  58. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.5.0.rdoc +0 -53
  59. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.5.3.rdoc +0 -78
  60. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.5.4.rdoc +0 -46
  61. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.6.0.rdoc +0 -141
  62. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.7.0.rdoc +0 -119
  63. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.7.1.rdoc +0 -59
  64. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.7.2.rdoc +0 -121
  65. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.7.3.rdoc +0 -47
  66. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.0.rdoc +0 -114
  67. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.2.rdoc +0 -165
  68. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.3.rdoc +0 -112
  69. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.4.rdoc +0 -147
  70. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.5.rdoc +0 -53
  71. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.6.rdoc +0 -37
  72. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.8.7.rdoc +0 -55
  73. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.0.rdoc +0 -112
  74. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.1.rdoc +0 -52
  75. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.2.2.rdoc +0 -55
  76. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.2.rdoc +0 -49
  77. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.3.rdoc +0 -102
  78. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.4.rdoc +0 -60
  79. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.5.rdoc +0 -55
  80. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-0.9.6.rdoc +0 -64
  81. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-10.0.0.rdoc +0 -178
  82. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-10.0.1.rdoc +0 -58
  83. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-10.0.2.rdoc +0 -53
  84. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-10.0.3.rdoc +0 -191
  85. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/doc/release_notes/rake-10.1.0.rdoc +0 -61
  86. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/exe/rake +0 -27
  87. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake.rb +0 -71
  88. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/application.rb +0 -784
  89. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/backtrace.rb +0 -23
  90. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/clean.rb +0 -76
  91. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/cloneable.rb +0 -16
  92. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/contrib/compositepublisher.rb +0 -21
  93. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/contrib/ftptools.rb +0 -137
  94. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/contrib/sshpublisher.rb +0 -60
  95. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/cpu_counter.rb +0 -106
  96. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/default_loader.rb +0 -14
  97. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/dsl_definition.rb +0 -194
  98. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/early_time.rb +0 -21
  99. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/ext/core.rb +0 -25
  100. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/ext/fixnum.rb +0 -18
  101. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/ext/pathname.rb +0 -25
  102. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/ext/string.rb +0 -175
  103. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/file_creation_task.rb +0 -24
  104. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/file_list.rb +0 -436
  105. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/file_task.rb +0 -46
  106. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/file_utils.rb +0 -139
  107. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/file_utils_ext.rb +0 -144
  108. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/invocation_chain.rb +0 -56
  109. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/invocation_exception_mixin.rb +0 -16
  110. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/late_time.rb +0 -17
  111. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/linked_list.rb +0 -111
  112. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/loaders/makefile.rb +0 -53
  113. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/multi_task.rb +0 -13
  114. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/name_space.rb +0 -38
  115. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/packagetask.rb +0 -210
  116. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/phony.rb +0 -15
  117. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/private_reader.rb +0 -20
  118. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/promise.rb +0 -99
  119. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/pseudo_status.rb +0 -29
  120. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/rake_module.rb +0 -38
  121. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/rake_test_loader.rb +0 -21
  122. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/rule_recursion_overflow_error.rb +0 -19
  123. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/scope.rb +0 -42
  124. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/task.rb +0 -391
  125. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/task_argument_error.rb +0 -7
  126. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/task_arguments.rb +0 -103
  127. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/task_manager.rb +0 -316
  128. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/tasklib.rb +0 -11
  129. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/testtask.rb +0 -212
  130. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/thread_history_display.rb +0 -48
  131. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/thread_pool.rb +0 -162
  132. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/trace_output.rb +0 -22
  133. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/version.rb +0 -9
  134. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/lib/rake/win32.rb +0 -50
  135. data/vendor/bundle/ruby/2.2.0/gems/rake-11.2.2/rake.gemspec +0 -30
  136. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/CHANGES +0 -174
  137. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/Gemfile +0 -4
  138. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/Gemfile.lock +0 -24
  139. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/MANIFEST +0 -10
  140. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/README +0 -129
  141. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/Rakefile +0 -185
  142. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/appveyor.yml +0 -42
  143. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/ext/win32/api.c +0 -1092
  144. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/api.rb +0 -40
  145. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby21_32/win32/api.so +0 -0
  146. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby21_64/win32/api.so +0 -0
  147. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby22_32/win32/api.so +0 -0
  148. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby22_64/win32/api.so +0 -0
  149. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby23_32/win32/api.so +0 -0
  150. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby23_64/win32/api.so +0 -0
  151. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby2_32/win32/api.so +0 -0
  152. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/lib/win32/ruby2_64/win32/api.so +0 -0
  153. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/test/test_win32_api.rb +0 -145
  154. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/test/test_win32_api_callback.rb +0 -74
  155. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/test/test_win32_api_function.rb +0 -66
  156. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/bin/devkit +0 -23
  157. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/bin/devkit.bat +0 -6
  158. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/bin/rake +0 -23
  159. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/bin/rake.bat +0 -6
  160. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/CHANGELOG +0 -55
  161. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/LICENSE +0 -339
  162. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/README.md +0 -73
  163. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/Rakefile +0 -8
  164. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/colorize.gemspec +0 -35
  165. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize.rb +0 -12
  166. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/class_methods.rb +0 -116
  167. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/instance_methods.rb +0 -135
  168. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/test/test_colorize.rb +0 -161
  169. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Gemfile +0 -4
  170. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/LICENSE.txt +0 -22
  171. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/README.md +0 -34
  172. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rakefile +0 -1
  173. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rspec-example-matchers.txt +0 -184
  174. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/bin/devkit +0 -87
  175. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/devkit.gemspec +0 -27
  176. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit.rb +0 -18
  177. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/core.rb +0 -53
  178. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/identity.rb +0 -78
  179. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/ssh_identity.rb +0 -53
  180. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/version.rb +0 -3
  181. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/core_spec.rb +0 -46
  182. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/identity_spec.rb +0 -1
  183. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/ssh_identity_spec.rb +0 -1
  184. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit_spec.rb +0 -5
  185. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/spec_helper.rb +0 -8
  186. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/AUTHORS +0 -3
  187. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/COPYING +0 -339
  188. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Changelog.md +0 -415
  189. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Gemfile +0 -9
  190. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/INSTALL +0 -59
  191. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/LICENSE +0 -7
  192. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/README.rdoc +0 -74
  193. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Rakefile +0 -30
  194. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/TODO +0 -6
  195. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/ansi_colors.rb +0 -38
  196. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/asking_for_arrays.rb +0 -18
  197. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/basic_usage.rb +0 -75
  198. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/color_scheme.rb +0 -32
  199. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/get_character.rb +0 -12
  200. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/limit.rb +0 -12
  201. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/menus.rb +0 -65
  202. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/overwrite.rb +0 -19
  203. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/page_and_wrap.rb +0 -322
  204. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/password.rb +0 -7
  205. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/repeat_entry.rb +0 -21
  206. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/trapping_eof.rb +0 -22
  207. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/using_readline.rb +0 -17
  208. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/highline.gemspec +0 -37
  209. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline.rb +0 -1048
  210. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/color_scheme.rb +0 -134
  211. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/compatibility.rb +0 -16
  212. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/import.rb +0 -41
  213. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/menu.rb +0 -381
  214. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/question.rb +0 -480
  215. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/simulate.rb +0 -48
  216. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/style.rb +0 -192
  217. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/version.rb +0 -4
  218. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/setup.rb +0 -1360
  219. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/highline.css +0 -65
  220. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/images/logo.png +0 -0
  221. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/index.html +0 -58
  222. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/string_methods.rb +0 -32
  223. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_color_scheme.rb +0 -96
  224. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_highline.rb +0 -1402
  225. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_import.rb +0 -52
  226. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_menu.rb +0 -439
  227. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_simulator.rb +0 -23
  228. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_string_highline.rb +0 -38
  229. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_style.rb +0 -578
  230. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/BSDL +0 -22
  231. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/COPYING +0 -57
  232. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Gemfile +0 -9
  233. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/LEGAL +0 -4
  234. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/README.rdoc +0 -19
  235. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Rakefile +0 -16
  236. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/bm_yhpg.rb +0 -59
  237. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/helper.rb +0 -8
  238. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert.rb +0 -338
  239. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/enable_tracepoint_events.rb +0 -82
  240. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/version.rb +0 -3
  241. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/power_assert.gemspec +0 -23
  242. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/helper.rb +0 -10
  243. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/test_power_assert.rb +0 -512
  244. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/CONTRIBUTING.rdoc +0 -38
  245. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/History.rdoc +0 -719
  246. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/MIT-LICENSE +0 -21
  247. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Manifest.txt +0 -154
  248. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/README.rdoc +0 -157
  249. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Rakefile +0 -82
  250. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/bin/rake +0 -33
  251. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/command_line_usage.rdoc +0 -158
  252. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile1 +0 -38
  253. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile2 +0 -35
  254. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/a.c +0 -6
  255. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/b.c +0 -6
  256. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/main.c +0 -11
  257. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/glossary.rdoc +0 -42
  258. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/jamis.rb +0 -591
  259. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/proto_rake.rdoc +0 -127
  260. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rake.1 +0 -141
  261. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rakefile.rdoc +0 -624
  262. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rational.rdoc +0 -151
  263. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.14.rdoc +0 -23
  264. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.15.rdoc +0 -35
  265. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.0.rdoc +0 -53
  266. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.3.rdoc +0 -78
  267. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.4.rdoc +0 -46
  268. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.6.0.rdoc +0 -141
  269. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.0.rdoc +0 -119
  270. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.1.rdoc +0 -59
  271. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.2.rdoc +0 -121
  272. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.3.rdoc +0 -47
  273. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.0.rdoc +0 -114
  274. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.2.rdoc +0 -165
  275. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.3.rdoc +0 -112
  276. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.4.rdoc +0 -147
  277. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.5.rdoc +0 -53
  278. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.6.rdoc +0 -37
  279. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.7.rdoc +0 -55
  280. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.0.rdoc +0 -112
  281. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.1.rdoc +0 -52
  282. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.2.rdoc +0 -55
  283. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.rdoc +0 -49
  284. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.3.rdoc +0 -102
  285. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.4.rdoc +0 -60
  286. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.5.rdoc +0 -55
  287. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.6.rdoc +0 -64
  288. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.0.rdoc +0 -178
  289. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.1.rdoc +0 -58
  290. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.2.rdoc +0 -53
  291. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.3.rdoc +0 -191
  292. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.1.0.rdoc +0 -61
  293. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake.rb +0 -73
  294. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/application.rb +0 -787
  295. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/backtrace.rb +0 -23
  296. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/clean.rb +0 -76
  297. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cloneable.rb +0 -16
  298. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/compositepublisher.rb +0 -21
  299. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/ftptools.rb +0 -137
  300. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/sshpublisher.rb +0 -60
  301. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cpu_counter.rb +0 -120
  302. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/default_loader.rb +0 -14
  303. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/dsl_definition.rb +0 -194
  304. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/early_time.rb +0 -21
  305. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_creation_task.rb +0 -24
  306. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_list.rb +0 -436
  307. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_task.rb +0 -46
  308. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_utils.rb +0 -123
  309. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_chain.rb +0 -56
  310. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_exception_mixin.rb +0 -16
  311. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/late_time.rb +0 -17
  312. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/linked_list.rb +0 -111
  313. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/loaders/makefile.rb +0 -53
  314. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/multi_task.rb +0 -13
  315. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/name_space.rb +0 -38
  316. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/packagetask.rb +0 -199
  317. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/phony.rb +0 -15
  318. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/private_reader.rb +0 -20
  319. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/promise.rb +0 -99
  320. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/pseudo_status.rb +0 -29
  321. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_module.rb +0 -38
  322. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_test_loader.rb +0 -22
  323. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
  324. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/scope.rb +0 -42
  325. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task.rb +0 -391
  326. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_argument_error.rb +0 -7
  327. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_arguments.rb +0 -102
  328. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_manager.rb +0 -316
  329. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/tasklib.rb +0 -11
  330. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/testtask.rb +0 -204
  331. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_history_display.rb +0 -48
  332. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_pool.rb +0 -163
  333. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/trace_output.rb +0 -22
  334. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/version.rb +0 -7
  335. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/win32.rb +0 -50
  336. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/rakelib/test_times.rake +0 -25
  337. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/file_creation.rb +0 -34
  338. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/helper.rb +0 -134
  339. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/rakefile_definitions.rb +0 -476
  340. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/ruby_runner.rb +0 -34
  341. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_private_reader.rb +0 -42
  342. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake.rb +0 -40
  343. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application.rb +0 -659
  344. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application_options.rb +0 -468
  345. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_backtrace.rb +0 -119
  346. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_clean.rb +0 -61
  347. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_cpu_counter.rb +0 -68
  348. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_definitions.rb +0 -84
  349. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_directory_task.rb +0 -76
  350. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_dsl.rb +0 -40
  351. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_early_time.rb +0 -31
  352. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_creation_task.rb +0 -56
  353. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list.rb +0 -687
  354. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list_path_map.rb +0 -15
  355. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_task.rb +0 -197
  356. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_utils.rb +0 -318
  357. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_ftp_file.rb +0 -74
  358. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_functional.rb +0 -484
  359. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_invocation_chain.rb +0 -64
  360. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_late_time.rb +0 -18
  361. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_linked_list.rb +0 -84
  362. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_makefile_loader.rb +0 -46
  363. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_multi_task.rb +0 -64
  364. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_name_space.rb +0 -57
  365. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_package_task.rb +0 -79
  366. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map.rb +0 -168
  367. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_explode.rb +0 -34
  368. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_partial.rb +0 -18
  369. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_pseudo_status.rb +0 -21
  370. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rake_test_loader.rb +0 -20
  371. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_reduce_compat.rb +0 -26
  372. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_require.rb +0 -40
  373. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rules.rb +0 -388
  374. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_scope.rb +0 -44
  375. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task.rb +0 -430
  376. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_argument_parsing.rb +0 -119
  377. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_arguments.rb +0 -134
  378. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager.rb +0 -178
  379. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager_argument_resolution.rb +0 -19
  380. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_with_arguments.rb +0 -172
  381. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_test_task.rb +0 -130
  382. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_thread_pool.rb +0 -145
  383. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_top_level_functions.rb +0 -71
  384. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_win32.rb +0 -72
  385. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_thread_history_display.rb +0 -101
  386. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_trace_output.rb +0 -52
  387. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/COPYING +0 -64
  388. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/GPL +0 -339
  389. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/LGPL +0 -502
  390. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/PSFL +0 -271
  391. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/README.md +0 -101
  392. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/Rakefile +0 -71
  393. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test-unit.rb +0 -34
  394. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit.rb +0 -505
  395. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertion-failed-error.rb +0 -25
  396. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertions.rb +0 -2218
  397. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute-matcher.rb +0 -26
  398. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute.rb +0 -158
  399. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/auto-runner-loader.rb +0 -17
  400. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/autorunner.rb +0 -536
  401. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/code-snippet-fetcher.rb +0 -58
  402. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector.rb +0 -73
  403. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/descendant.rb +0 -19
  404. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/dir.rb +0 -108
  405. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/load.rb +0 -202
  406. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/objectspace.rb +0 -34
  407. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/xml.rb +0 -249
  408. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color-scheme.rb +0 -198
  409. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color.rb +0 -134
  410. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/data.rb +0 -262
  411. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/diff.rb +0 -746
  412. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/error.rb +0 -158
  413. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/exception-handler.rb +0 -82
  414. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/failure.rb +0 -169
  415. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fault-location-detector.rb +0 -100
  416. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fixture.rb +0 -295
  417. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/notification.rb +0 -136
  418. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/omission.rb +0 -195
  419. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/pending.rb +0 -154
  420. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/priority.rb +0 -192
  421. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/console.rb +0 -59
  422. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/emacs.rb +0 -8
  423. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/xml.rb +0 -15
  424. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/test-suite-creator.rb +0 -89
  425. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testcase.rb +0 -811
  426. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testresult.rb +0 -132
  427. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testsuite.rb +0 -175
  428. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/outputlevel.rb +0 -15
  429. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/testrunner.rb +0 -693
  430. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  431. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunner.rb +0 -53
  432. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnermediator.rb +0 -114
  433. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  434. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/xml/testrunner.rb +0 -224
  435. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/backtracefilter.rb +0 -59
  436. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/method-owner-finder.rb +0 -28
  437. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/observable.rb +0 -90
  438. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/output.rb +0 -31
  439. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/procwrapper.rb +0 -48
  440. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/version.rb +0 -5
  441. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/adder.rb +0 -13
  442. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/subtracter.rb +0 -12
  443. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_adder.rb +0 -20
  444. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_subtracter.rb +0 -20
  445. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_user.rb +0 -23
  446. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-descendant.rb +0 -178
  447. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-load.rb +0 -442
  448. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_dir.rb +0 -406
  449. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_objectspace.rb +0 -100
  450. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.csv +0 -3
  451. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.tsv +0 -3
  452. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.csv +0 -3
  453. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.tsv +0 -3
  454. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.csv +0 -2
  455. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.tsv +0 -2
  456. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/plus.csv +0 -3
  457. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/run-test.rb +0 -22
  458. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-assertions.rb +0 -2160
  459. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute-matcher.rb +0 -38
  460. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute.rb +0 -123
  461. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-code-snippet.rb +0 -37
  462. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color-scheme.rb +0 -82
  463. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color.rb +0 -47
  464. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-data.rb +0 -303
  465. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-diff.rb +0 -518
  466. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-emacs-runner.rb +0 -60
  467. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-error.rb +0 -26
  468. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-failure.rb +0 -33
  469. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fault-location-detector.rb +0 -163
  470. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fixture.rb +0 -713
  471. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-notification.rb +0 -33
  472. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-omission.rb +0 -81
  473. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-pending.rb +0 -70
  474. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-priority.rb +0 -173
  475. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-case.rb +0 -1171
  476. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-result.rb +0 -113
  477. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite-creator.rb +0 -97
  478. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite.rb +0 -150
  479. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/testunit-test-util.rb +0 -31
  480. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/ui/test_testrunmediator.rb +0 -20
  481. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-method-owner-finder.rb +0 -38
  482. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-output.rb +0 -11
  483. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_backtracefilter.rb +0 -52
  484. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_observable.rb +0 -102
  485. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_procwrapper.rb +0 -36
  486. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/colorize-0.7.7.gemspec +0 -38
  487. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/devkit-0.1.0.gemspec +0 -46
  488. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/highline-1.7.8.gemspec +0 -37
  489. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/power_assert-0.3.0.gemspec +0 -41
  490. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/rake-11.1.2.gemspec +0 -43
  491. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/vendor/bundle/ruby/2.2.0/specifications/test-unit-3.1.9.gemspec +0 -47
  492. data/vendor/bundle/ruby/2.2.0/gems/win32-api-1.6.0-universal-mingw32/win32-api.gemspec +0 -27
  493. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/CHANGES +0 -68
  494. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/MANIFEST +0 -9
  495. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/README +0 -96
  496. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/Rakefile +0 -47
  497. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/lib/windows/api.rb +0 -503
  498. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/lib/windows/wide_string.rb +0 -60
  499. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/test/test_wide_string.rb +0 -59
  500. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/test/test_windows_api.rb +0 -171
  501. data/vendor/bundle/ruby/2.2.0/gems/windows-api-0.4.4/windows-api.gemspec +0 -26
  502. data/vendor/bundle/ruby/2.2.0/specifications/minitest-5.9.0.gemspec +0 -39
  503. data/vendor/bundle/ruby/2.2.0/specifications/rake-11.2.2.gemspec +0 -43
  504. data/vendor/bundle/ruby/2.2.0/specifications/win32-api-1.6.0-universal-mingw32.gemspec +0 -39
  505. data/vendor/bundle/ruby/2.2.0/specifications/windows-api-0.4.4.gemspec +0 -37
@@ -1,4 +0,0 @@
1
- # A sample Gemfile
2
- source "https://rubygems.org"
3
-
4
- gemspec
@@ -1,24 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- win32-api (1.6.0)
5
-
6
- GEM
7
- remote: https://rubygems.org/
8
- specs:
9
- power_assert (0.3.0)
10
- rake (11.1.2)
11
- test-unit (3.1.9)
12
- power_assert
13
-
14
- PLATFORMS
15
- x64-mingw32
16
- x86-mingw32
17
-
18
- DEPENDENCIES
19
- rake
20
- test-unit (>= 2.5.0)
21
- win32-api!
22
-
23
- BUNDLED WITH
24
- 1.10.5
@@ -1,10 +0,0 @@
1
- * CHANGES
2
- * MANIFEST
3
- * README
4
- * Rakefile
5
- * win32-api.gemspec
6
- * ext/extconf.rb
7
- * ext/win32/api.c
8
- * test/test_win32_api.rb
9
- * test/test_win32_api_callback.rb
10
- * test/test_win32_api_function.rb
@@ -1,129 +0,0 @@
1
- = Description
2
- This is a drop-in replacement for the Win32API library currently part of
3
- Ruby's standard library.
4
-
5
- = Synopsis
6
- require 'win32/api'
7
- include Win32
8
-
9
- # Typical example - Get user name
10
- buf = 0.chr * 260
11
- len = [buf.length].pack('L')
12
-
13
- GetUserName = API.new('GetUserName', 'PP', 'I', 'advapi32')
14
- GetUserName.call(buf, len)
15
-
16
- puts buf.strip
17
-
18
- # Callback example - Enumerate windows
19
- EnumWindows = API.new('EnumWindows', 'KP', 'L', 'user32')
20
- GetWindowText = API.new('GetWindowText', 'LPI', 'I', 'user32')
21
- EnumWindowsProc = API::Callback.new('LP', 'I'){ |handle, param|
22
- buf = "\0" * 200
23
- GetWindowText.call(handle, buf, 200);
24
- puts buf.strip unless buf.strip.empty?
25
- buf.index(param).nil? ? true : false
26
- }
27
-
28
- EnumWindows.call(EnumWindowsProc, 'UEDIT32')
29
-
30
- # Raw function pointer example - System beep
31
- LoadLibrary = API.new('LoadLibrary', 'P', 'L')
32
- GetProcAddress = API.new('GetProcAddress', 'LP', 'L')
33
-
34
- hlib = LoadLibrary.call('user32')
35
- addr = GetProcAddress.call(hlib, 'MessageBeep')
36
- func = Win32::API::Function.new(addr, 'L', 'L')
37
- func.call(0)
38
-
39
- = Differences between win32-api and Win32API
40
- * This library has callback support
41
- * This library supports raw function pointers.
42
- * This library supports a separate string type for const char* (S).
43
- * Argument order change. The DLL name is now last, not first.
44
- * Removed the 'N' and 'n' prototypes. Always use 'L' for longs now.
45
- * Sensible default arguments for the prototype, return type and DLL name.
46
- * Reader methods for the function name, effective function name, prototype,
47
- return type and DLL.
48
- * Removed the support for lower case prototype and return types. Always
49
- use capital letters.
50
-
51
- = Developer's Notes
52
- [NOTE: Some of the information below is now out of date, but explains my
53
- motivation at the time the project was originally created.]
54
-
55
- The current Win32API library that ships with the standard library has been
56
- slated for removal from Ruby 2.0 and it will not receive any updates in the
57
- Ruby 1.8.x branch. I have far too many libraries invested in it to let it
58
- die at this point.
59
-
60
- In addition, the current Win32API library was written in the bad old Ruby
61
- 1.6.x days, which means it doesn't use the newer allocation framework.
62
- There were several other refactorings that I felt it needed to more closely
63
- match how it was actually being used in practice.
64
-
65
- The first order of business was changing the order of the arguments. By
66
- moving the DLL name from first to last, I was able to provide reasonable
67
- default arguments for the prototype, return type and the DLL. Only the
68
- function name is required now.
69
-
70
- There was a laundry list of other refactorings that were needed: sensical
71
- instance variable names with proper accessors, removing support for lower
72
- case prototype and return value characters that no one used in practice,
73
- better naming conventions, the addition of RDoc ready comments and,
74
- especially, callback and raw function pointer support.
75
-
76
- Most importantly, we can now add, modify and fix any features that we feel
77
- best benefit our end users.
78
-
79
- = Multiple Binaries
80
- As of win32-api 1.4.8 a binary gem is shipped that contains binaries for
81
- both Ruby 1.8, Ruby 1.9, and 2.x. For Ruby 2.x, both 32 and 64 bit binaries
82
- are included as of release 1.5.0.
83
-
84
- The file under lib/win32 dynamically requires the correct binary based on
85
- your version of Ruby.
86
-
87
- = Documentation
88
- The source file contains inline RDoc documentation. If you installed
89
- this file as a gem, then you have the docs. Run "gem server" and point
90
- your browser at http://localhost:8808 to see them.
91
-
92
- = Warranty
93
- This package is provided "as is" and without any express or
94
- implied warranties, including, without limitation, the implied
95
- warranties of merchantability and fitness for a particular purpose.
96
-
97
- = Known Issues
98
- Possible callback issues when dealing with multi-threaded applications.
99
-
100
- Please submit any bug reports to the project page at
101
- https://github.com/djberg96/win32-api
102
-
103
- == Contributions
104
- Although this library is free, please consider having your company
105
- setup a gittip if used by your company professionally.
106
-
107
- http://www.gittip.com/djberg96/
108
-
109
- = Future Plans
110
- I really don't have future plans for this library since you should use FFI
111
- as your preferred C interface going forward. All of my own projects have
112
- since been converted to either use FFI or an analogous OLE interface.
113
-
114
- I will continue to maintain this library as long as there are folks out
115
- there who are still using it, but I strongly encourage you to convert
116
- your projects to FFI when possible.
117
-
118
- = Copyright
119
- (C) 2003-2015 Daniel J. Berger
120
- (C) 2016 Hiroshi Hatake
121
- All Rights Reserved
122
-
123
- = License
124
- Artistic 2.0
125
-
126
- = Authors
127
- Daniel J. Berger
128
- Park Heesob
129
- Hiroshi Hatake
@@ -1,185 +0,0 @@
1
- require 'rake'
2
- require 'rake/clean'
3
- require 'rake/testtask'
4
- require 'rbconfig'
5
- include RbConfig
6
-
7
- CLEAN.include(
8
- '**/*.gem', # Gem files
9
- '**/*.rbc', # Rubinius
10
- '**/*.o', # C object file
11
- '**/*.log', # Ruby extension build log
12
- '**/Makefile', # C Makefile
13
- '**/*.def', # Definition files
14
- '**/*.exp',
15
- '**/*.lib',
16
- '**/*.pdb',
17
- '**/*.obj',
18
- '**/*.stackdump', # Junk that can happen on Windows
19
- "**/*.#{CONFIG['DLEXT']}" # C shared object
20
- )
21
-
22
- CLOBBER.include('lib') # Generated when building binaries
23
-
24
- make = CONFIG['host_os'] =~ /mingw|cygwin/i ? 'make' : 'nmake'
25
-
26
- desc 'Build the ruby.exe.manifest if it does not already exist'
27
- task :build_manifest do
28
- version = CONFIG['host_os'].split('_')[1]
29
-
30
- if version && version.to_i >= 80
31
- unless File.exist?(File.join(CONFIG['bindir'], 'ruby.exe.manifest'))
32
- Dir.chdir(CONFIG['bindir']) do
33
- sh "mt -nologo -inputresource:ruby.exe;2 -out:ruby.exe.manifest"
34
- end
35
- end
36
- end
37
- end
38
-
39
- desc "Build the win32-api library"
40
- task :build => [:clean, :build_manifest] do
41
- Dir.chdir('ext') do
42
- ruby "extconf.rb"
43
- sh make
44
- cp 'api.so', 'win32' # For testing
45
- end
46
- end
47
-
48
- namespace 'gem' do
49
- require 'rubygems/package'
50
-
51
- desc 'Build the win32-api gem'
52
- task :create => [:clean] do
53
- spec = eval(IO.read('win32-api.gemspec'))
54
- if Gem::VERSION.to_f < 2.0
55
- Gem::Builder.new(spec).build
56
- else
57
- Gem::Package.build(spec)
58
- end
59
- end
60
-
61
- desc 'Build a binary gem'
62
- task :binary, :ruby2_32, :ruby2_64, :ruby21, :ruby21_64, :ruby22, :ruby22_64, :ruby23_32, :ruby23_64 do |task, args|
63
- # These are just what's on my system at the moment. Adjust as needed.
64
- args.with_defaults(
65
- :ruby2_32 => "c:/ruby200/bin/ruby",
66
- :ruby2_64 => "c:/ruby200-x64/bin/ruby",
67
- :ruby21_32 => "c:/ruby21/bin/ruby",
68
- :ruby21_64 => "c:/ruby21-x64/bin/ruby",
69
- :ruby22_32 => "c:/ruby22/bin/ruby",
70
- :ruby22_64 => "c:/ruby22-x64/bin/ruby",
71
- :ruby23_32 => "c:/ruby23/bin/ruby",
72
- :ruby23_64 => "c:/ruby23-x64/bin/ruby"
73
- )
74
-
75
- Rake::Task[:clobber].invoke
76
-
77
- args.each{ |key, rubyx|
78
- # Adjust devkit paths as needed.
79
- if `"#{rubyx}" -v` =~ /x64/i
80
- ENV['PATH'] = "C:/Devkit64/bin;C:/Devkit64/mingw/bin;" + ENV['PATH']
81
- else
82
- ENV['PATH'] = "C:/Devkit/bin;C:/Devkit/mingw/bin;" + ENV['PATH']
83
- end
84
-
85
- mkdir_p "lib/win32/#{key}/win32"
86
-
87
- Dir.chdir('ext') do
88
- sh "make distclean" rescue nil
89
- sh "#{rubyx} extconf.rb"
90
- sh "make"
91
- cp 'api.so', "../lib/win32/#{key}/win32/api.so"
92
- end
93
- }
94
-
95
- text = <<HERE
96
- require 'rbconfig'
97
- begin
98
- case RbConfig::CONFIG['MAJOR']
99
- when '2'
100
- if RbConfig::CONFIG['MINOR'] == '0'
101
- if RbConfig::CONFIG['arch'] =~ /x64/i
102
- require File.join(File.dirname(__FILE__), 'ruby2_64/win32/api')
103
- else
104
- require File.join(File.dirname(__FILE__), 'ruby2_32/win32/api')
105
- end
106
- end
107
-
108
- if RbConfig::CONFIG['MINOR'] == '1'
109
- if RbConfig::CONFIG['arch'] =~ /x64/i
110
- require File.join(File.dirname(__FILE__), 'ruby21_64/win32/api')
111
- else
112
- require File.join(File.dirname(__FILE__), 'ruby21_32/win32/api')
113
- end
114
- end
115
-
116
- if RbConfig::CONFIG['MINOR'] == '2'
117
- if RbConfig::CONFIG['arch'] =~ /x64/i
118
- require File.join(File.dirname(__FILE__), 'ruby22_64/win32/api')
119
- else
120
- require File.join(File.dirname(__FILE__), 'ruby22_32/win32/api')
121
- end
122
- end
123
-
124
- if RbConfig::CONFIG['MINOR'] == '3'
125
- if RbConfig::CONFIG['arch'] =~ /x64/i
126
- require File.join(File.dirname(__FILE__), 'ruby23_64/win32/api')
127
- else
128
- require File.join(File.dirname(__FILE__), 'ruby23_32/win32/api')
129
- end
130
- end
131
-
132
- end
133
- rescue LoadError
134
- require File.join(File.dirname(__FILE__), '../../ext/api')
135
- end
136
- HERE
137
-
138
- File.open('lib/win32/api.rb', 'w'){ |fh| fh.puts text }
139
-
140
- spec = eval(IO.read('win32-api.gemspec'))
141
- spec.platform = Gem::Platform.new(['universal', 'mingw32'])
142
- spec.extensions = nil
143
- spec.files = spec.files.reject{ |f| f.include?('ext') }
144
-
145
- if Gem::VERSION.to_f < 2.0
146
- Gem::Builder.new(spec).build
147
- else
148
- require 'rubygems/package'
149
- Gem::Package.build(spec)
150
- end
151
- end
152
-
153
- desc 'Install the gem'
154
- task :install => [:create] do
155
- file = Dir["*.gem"].first
156
- sh "gem install -l #{file}"
157
- end
158
- end
159
-
160
- namespace 'test' do
161
- Rake::TestTask.new(:all) do |test|
162
- task :all => [:build]
163
- test.libs << 'ext'
164
- test.warning = true
165
- test.verbose = true
166
- end
167
-
168
- Rake::TestTask.new(:callback) do |test|
169
- task :callback => [:build]
170
- test.test_files = FileList['test/test_win32_api_callback.rb']
171
- test.libs << 'ext'
172
- test.warning = true
173
- test.verbose = true
174
- end
175
-
176
- Rake::TestTask.new(:function) do |test|
177
- task :function => [:build]
178
- test.test_files = FileList['test/test_win32_api_function.rb']
179
- test.libs << 'ext'
180
- test.warning = true
181
- test.verbose = true
182
- end
183
- end
184
-
185
- task :default => 'test:all'
@@ -1,42 +0,0 @@
1
- version: '{build}'
2
-
3
- platform: x64
4
-
5
- install:
6
- - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
7
- - "%devkit64%\\devkitvars.bat"
8
- - "%devkit32%\\devkitvars.bat"
9
- - ruby --version
10
- - gem --version
11
- - bundle install
12
- build: off
13
- test_script:
14
- - bundle exec rake gem:binary
15
- - bundle exec rake test:all
16
-
17
- environment:
18
- matrix:
19
- - ruby_version: "23-x64"
20
- devkit64: C:\Ruby23-x64\DevKit
21
- devkit32: C:\Ruby23\DevKit
22
- - ruby_version: "23"
23
- devkit64: C:\Ruby23-x64\DevKit
24
- devkit32: C:\Ruby23\DevKit
25
- - ruby_version: "22-x64"
26
- devkit64: C:\Ruby23-x64\DevKit
27
- devkit32: C:\Ruby23\DevKit
28
- - ruby_version: "22"
29
- devkit64: C:\Ruby23-x64\DevKit
30
- devkit32: C:\Ruby23\DevKit
31
- - ruby_version: "21-x64"
32
- devkit64: C:\Ruby23-x64\DevKit
33
- devkit32: C:\Ruby23\DevKit
34
- - ruby_version: "21"
35
- devkit64: C:\Ruby23-x64\DevKit
36
- devkit32: C:\Ruby23\DevKit
37
- - ruby_version: "200-x64"
38
- devkit64: C:\Ruby23-x64\DevKit
39
- devkit32: C:\Ruby23\DevKit
40
- - ruby_version: "200"
41
- devkit64: C:\Ruby23-x64\DevKit
42
- devkit32: C:\Ruby23\DevKit
@@ -1,1092 +0,0 @@
1
- #include <ruby.h>
2
- #include <windows.h>
3
-
4
- // Ruby 1.9.x
5
- #ifndef RSTRING_PTR
6
- #define RSTRING_PTR(s) (RSTRING(s)->ptr)
7
- #endif
8
- #ifndef RSTRING_LEN
9
- #define RSTRING_LEN(s) (RSTRING(s)->len)
10
- #endif
11
-
12
- #ifndef RARRAY_PTR
13
- #define RARRAY_PTR(a) (RARRAY(a)->ptr)
14
- #endif
15
- #ifndef RARRAY_LEN
16
- #define RARRAY_LEN(a) (RARRAY(a)->len)
17
- #endif
18
-
19
- #if defined(HAVE_LONG_LONG) && SIZEOF_SIZE_T > SIZEOF_LONG
20
- # define NUM2SIZET(x) ((size_t)NUM2ULL(x))
21
- # define NUM2SSIZET(x) ((ssize_t)NUM2LL(x))
22
- #else
23
- # define NUM2SIZET(x) NUM2ULONG(x)
24
- # define NUM2SSIZET(x) NUM2LONG(x)
25
- #endif
26
-
27
- #if SIZEOF_SIZE_T > SIZEOF_LONG && defined(HAVE_LONG_LONG)
28
- # define SIZET2NUM(v) ULL2NUM(v)
29
- # define SSIZET2NUM(v) LL2NUM(v)
30
- #elif SIZEOF_SIZE_T == SIZEOF_LONG
31
- # define SIZET2NUM(v) ULONG2NUM(v)
32
- # define SSIZET2NUM(v) LONG2NUM(v)
33
- #else
34
- # define SIZET2NUM(v) UINT2NUM(v)
35
- # define SSIZET2NUM(v) INT2NUM(v)
36
- #endif
37
-
38
-
39
- #define MAX_BUF 1024
40
- #define WINDOWS_API_VERSION "1.6.0"
41
-
42
- #define _T_VOID 0
43
- #define _T_LONG 1
44
- #define _T_POINTER 2
45
- #define _T_INTEGER 3
46
- #define _T_CALLBACK 4
47
- #define _T_STRING 5
48
-
49
- VALUE cAPIError, cAPIProtoError, cAPILoadError;
50
- static VALUE ActiveCallback = Qnil;
51
-
52
- typedef struct {
53
- HANDLE library;
54
- FARPROC function;
55
- int return_type;
56
- int prototype[20];
57
- } Win32API;
58
-
59
- static void api_free(Win32API* ptr){
60
- if(ptr->library)
61
- FreeLibrary(ptr->library);
62
-
63
- if(ptr)
64
- free(ptr);
65
- }
66
-
67
- static VALUE api_allocate(VALUE klass){
68
- Win32API* ptr = malloc(sizeof(Win32API));
69
- memset(ptr, 0, sizeof(*ptr));
70
- return Data_Wrap_Struct(klass, 0, api_free, ptr);
71
- }
72
-
73
- /* Helper function that converts the error number returned by GetLastError()
74
- * into a human readable string. Note that we always use English for error
75
- * output because that's what Ruby itself does.
76
- *
77
- * Internal use only.
78
- */
79
- char* StringError(DWORD dwError){
80
- LPVOID lpMsgBuf;
81
- static char buf[MAX_PATH];
82
- DWORD dwLen, dwLastError;
83
-
84
- // Assume ASCII (English) error messages from the Windows API
85
- dwLen = FormatMessageA(
86
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
87
- FORMAT_MESSAGE_FROM_SYSTEM |
88
- FORMAT_MESSAGE_IGNORE_INSERTS,
89
- NULL,
90
- dwError,
91
- MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US),
92
- (LPSTR)&lpMsgBuf,
93
- 0,
94
- NULL
95
- );
96
-
97
- dwLastError = GetLastError();
98
-
99
- /* It appears that Windows doesn't necessarily ship with the DLL
100
- * required to always use English error messages. Check for error
101
- * ERROR_MUI_FILE_NOT_FOUND (15100) or ERROR_RESOURCE_LANG_NOT_FOUND (1815)
102
- * and try again if necessary.
103
- */
104
- if(!dwLen && (dwLastError == 15100 || dwLastError == 1815)){
105
- dwLen = FormatMessageA(
106
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
107
- FORMAT_MESSAGE_FROM_SYSTEM |
108
- FORMAT_MESSAGE_IGNORE_INSERTS,
109
- NULL,
110
- dwError,
111
- 0,
112
- (LPSTR)&lpMsgBuf,
113
- 0,
114
- NULL
115
- );
116
- }
117
-
118
- if(!dwLen){
119
- rb_raise(
120
- cAPIError,
121
- "Attempt to format message failed (error = '%lu')",
122
- GetLastError()
123
- );
124
- }
125
-
126
- memset(buf, 0, MAX_PATH);
127
-
128
- // Remove \r\n at end of string.
129
- #ifdef HAVE_STRNCPY_S
130
- strncpy_s(buf, MAX_PATH, lpMsgBuf, dwLen - 2);
131
- #else
132
- strncpy(buf, lpMsgBuf, dwLen - 2);
133
- #endif
134
-
135
- LocalFree(lpMsgBuf);
136
-
137
- return buf;
138
- }
139
-
140
- /*
141
- * call-seq:
142
- * Win32::API::Callback.new(prototype, return='L'){ |proto| ... }
143
- *
144
- * Creates and returns a new Win32::API::Callback object. The prototype
145
- * arguments are yielded back to the block in the same order they were
146
- * declared.
147
- *
148
- * The +prototype+ is the function prototype for the callback function. This
149
- * is a string. The possible valid characters are 'I' (integer), 'L' (long),
150
- * 'V' (void), 'P' (pointer) or 'S' (string). Unlike API objects, API::Callback
151
- * objects do not have a default prototype.
152
- *
153
- * The +return+ argument is the return type for the callback function. The
154
- * valid characters are the same as for the +prototype+. The default is
155
- * 'L' (long).
156
- *
157
- * Example:
158
- * require 'win32/api'
159
- * include Win32
160
- *
161
- * EnumWindows = API.new('EnumWindows', 'KP', 'L', 'user32')
162
- * GetWindowText = API.new('GetWindowText', 'LPI', 'I', 'user32')
163
- *
164
- * EnumWindowsProc = API::Callback.new('LP', 'I'){ |handle, param|
165
- * buf = "\0" * 200
166
- * GetWindowText.call(handle, buf, 200);
167
- * puts buf.strip unless buf.strip.empty?
168
- * buf.index(param).nil? ? true : false
169
- * }
170
- *
171
- * EnumWindows.call(EnumWindowsProc, 'UEDIT32')
172
- */
173
- static VALUE callback_init(int argc, VALUE* argv, VALUE self)
174
- {
175
- void *find_callback(VALUE,int);
176
- VALUE v_proto, v_return, v_proc;
177
- int i;
178
-
179
- rb_scan_args(argc, argv, "11&", &v_proto, &v_return, &v_proc);
180
-
181
- /* Validate prototype characters */
182
- for(i = 0; i < RSTRING_LEN(v_proto); i++){
183
- switch(RSTRING_PTR(v_proto)[i]){
184
- case 'I': case 'L': case 'P': case 'V': case 'S':
185
- break;
186
- default:
187
- rb_raise(cAPIProtoError, "Illegal prototype '%c'",
188
- RSTRING_PTR(v_proto)[i]
189
- );
190
- }
191
- }
192
-
193
- if(NIL_P(v_return) || RARRAY_LEN(v_return) == 0){
194
- v_return = rb_str_new2("L");
195
- }
196
- else{
197
- switch(*(TCHAR*)RSTRING_PTR(v_return)){
198
- case 'I': case 'L': case 'P': case 'V': case 'S':
199
- break;
200
- default:
201
- rb_raise(cAPIProtoError, "Illegal return type '%s'",
202
- RSTRING_PTR(v_return)
203
- );
204
- }
205
- }
206
-
207
- rb_iv_set(self, "@function", v_proc);
208
- rb_iv_set(self, "@prototype", v_proto);
209
- rb_iv_set(self, "@return_type", v_return);
210
- rb_iv_set(self, "@address", SIZET2NUM((LPARAM)find_callback(self,RSTRING_LEN(v_proto))));
211
- ActiveCallback = self;
212
-
213
- return self;
214
- }
215
-
216
- /*
217
- * call-seq:
218
- * Win32::API.new(function, prototype='V', return='L', dll='kernel32')
219
- *
220
- * Creates and returns a new Win32::API object. The +function+ is the name
221
- * of the Windows function.
222
- *
223
- * The +prototype+ is the function prototype for +function+. This can be a
224
- * string or an array of characters. The possible valid characters are 'I'
225
- * (integer), 'L' (long), 'V' (void), 'P' (pointer), 'K' (callback) or 'S'
226
- * (string).
227
- *
228
- * The default is void ('V').
229
- *
230
- * Constant (const char*) strings should use 'S'. Pass by reference string
231
- * buffers should use 'P'. The former is faster, but cannot be modified.
232
- *
233
- * The +return+ argument is the return type for the function. The valid
234
- * characters are the same as for the +prototype+. The default is 'L' (long).
235
- *
236
- * The +dll+ is the name of the DLL file that the function is exported from.
237
- * The default is 'kernel32'.
238
- *
239
- * If the function cannot be found then an API::Error is raised (a subclass
240
- * of RuntimeError).
241
- *
242
- * Example:
243
- *
244
- * require 'win32/api'
245
- * include Win32
246
- *
247
- * buf = 0.chr * 260
248
- * len = [buf.length].pack('L')
249
- *
250
- * GetUserName = API.new('GetUserName', 'PP', 'I', 'advapi32')
251
- * GetUserName.call(buf, len)
252
- *
253
- * puts buf.strip
254
- */
255
- static VALUE api_init(int argc, VALUE* argv, VALUE self)
256
- {
257
- HMODULE hLibrary;
258
- FARPROC fProc;
259
- Win32API* ptr;
260
- int i;
261
- const char* first = "A";
262
- const char* second = "W";
263
- VALUE v_proc, v_proto, v_return, v_dll;
264
-
265
- rb_scan_args(argc, argv, "13", &v_proc, &v_proto, &v_return, &v_dll);
266
-
267
- Data_Get_Struct(self, Win32API, ptr);
268
-
269
- // Convert a string prototype to an array of characters
270
- if(rb_respond_to(v_proto, rb_intern("split")))
271
- v_proto = rb_str_split(v_proto, "");
272
-
273
- // Convert a nil or empty prototype to 'V' (void) automatically
274
- if(NIL_P(v_proto) || RARRAY_LEN(v_proto) == 0){
275
- v_proto = rb_ary_new();
276
- rb_ary_push(v_proto, rb_str_new2("V"));
277
- }
278
-
279
- // Set an arbitrary limit of 20 parameters
280
- if(RARRAY_LEN(v_proto) > 20)
281
- rb_raise(rb_eArgError, "too many parameters: %ld", RARRAY_LEN(v_proto));
282
-
283
- // Set the default dll to 'kernel32'
284
- if(NIL_P(v_dll))
285
- v_dll = rb_str_new2("kernel32");
286
-
287
- // Set the default return type to 'L' (DWORD)
288
- if(NIL_P(v_return))
289
- v_return = rb_str_new2("L");
290
-
291
- SafeStringValue(v_dll);
292
- SafeStringValue(v_proc);
293
-
294
- hLibrary = LoadLibrary(TEXT(RSTRING_PTR(v_dll)));
295
-
296
- // The most likely cause of failure is a bad DLL load path
297
- if(!hLibrary){
298
- rb_raise(cAPILoadError, "LoadLibrary() function failed for '%s': %s",
299
- RSTRING_PTR(v_dll),
300
- StringError(GetLastError())
301
- );
302
- }
303
-
304
- ptr->library = hLibrary;
305
-
306
- /* Attempt to get the function. If it fails, try again with an 'A'
307
- * appended. If that fails, try again with a 'W' appended. If that
308
- * still fails, raise an API::LoadLibraryError.
309
- */
310
-
311
- fProc = GetProcAddress(hLibrary, TEXT(RSTRING_PTR(v_proc)));
312
-
313
- // Skip the ANSI and Wide function checks for MSVCRT functions.
314
- if(!fProc){
315
- if(strstr(RSTRING_PTR(v_dll), "msvcr")){
316
- rb_raise(
317
- cAPILoadError,
318
- "Unable to load function '%s'",
319
- RSTRING_PTR(v_proc)
320
- );
321
- }
322
- else{
323
- VALUE v_ascii = rb_str_new3(v_proc);
324
- v_ascii = rb_str_cat(v_ascii, first, 1);
325
- fProc = GetProcAddress(hLibrary, TEXT(RSTRING_PTR(v_ascii)));
326
-
327
- if(!fProc){
328
- VALUE v_unicode = rb_str_new3(v_proc);
329
- v_unicode = rb_str_cat(v_unicode, second, 1);
330
- fProc = GetProcAddress(hLibrary, TEXT(RSTRING_PTR(v_unicode)));
331
-
332
- if(!fProc){
333
- rb_raise(
334
- cAPILoadError,
335
- "Unable to load function '%s', '%s', or '%s'",
336
- RSTRING_PTR(v_proc),
337
- RSTRING_PTR(v_ascii),
338
- RSTRING_PTR(v_unicode)
339
- );
340
- }
341
- else{
342
- rb_iv_set(self, "@effective_function_name", v_unicode);
343
- }
344
- }
345
- else{
346
- rb_iv_set(self, "@effective_function_name", v_ascii);
347
- }
348
- }
349
- }
350
- else{
351
- rb_iv_set(self, "@effective_function_name", v_proc);
352
- }
353
-
354
- ptr->function = fProc;
355
-
356
- // Push the numeric prototypes onto our int array for later use.
357
-
358
- for(i = 0; i < RARRAY_LEN(v_proto); i++){
359
- SafeStringValue(RARRAY_PTR(v_proto)[i]);
360
- switch(*(TCHAR*)StringValuePtr(RARRAY_PTR(v_proto)[i])){
361
- case 'L':
362
- ptr->prototype[i] = _T_LONG;
363
- break;
364
- case 'P':
365
- ptr->prototype[i] = _T_POINTER;
366
- break;
367
- case 'I': case 'B':
368
- ptr->prototype[i] = _T_INTEGER;
369
- break;
370
- case 'V':
371
- ptr->prototype[i] = _T_VOID;
372
- break;
373
- case 'K':
374
- ptr->prototype[i] = _T_CALLBACK;
375
- break;
376
- case 'S':
377
- ptr->prototype[i] = _T_STRING;
378
- break;
379
- default:
380
- rb_raise(cAPIProtoError, "Illegal prototype '%s'",
381
- StringValuePtr(RARRAY_PTR(v_proto)[i])
382
- );
383
- }
384
- }
385
-
386
- // Store the return type for later use.
387
-
388
- // Automatically convert empty strings or nil to type void.
389
- if(NIL_P(v_return) || RSTRING_LEN(v_return) == 0){
390
- v_return = rb_str_new2("V");
391
- ptr->return_type = _T_VOID;
392
- }
393
- else{
394
- SafeStringValue(v_return);
395
- switch(*RSTRING_PTR(v_return)){
396
- case 'L':
397
- ptr->return_type = _T_LONG;
398
- break;
399
- case 'P':
400
- ptr->return_type = _T_POINTER;
401
- break;
402
- case 'I': case 'B':
403
- ptr->return_type = _T_INTEGER;
404
- break;
405
- case 'V':
406
- ptr->return_type = _T_VOID;
407
- break;
408
- case 'S':
409
- ptr->return_type = _T_STRING;
410
- break;
411
- default:
412
- rb_raise(cAPIProtoError, "Illegal return type '%s'",
413
- RSTRING_PTR(v_return)
414
- );
415
- }
416
- }
417
-
418
- rb_iv_set(self, "@dll_name", v_dll);
419
- rb_iv_set(self, "@function_name", v_proc);
420
- rb_iv_set(self, "@prototype", v_proto);
421
- rb_iv_set(self, "@return_type", v_return);
422
-
423
- return self;
424
- }
425
-
426
- /*
427
- * call-seq:
428
- *
429
- * API::Function.new(address, prototype = 'V', return_type = 'L')
430
- *
431
- * Creates and returns an API::Function object. This object is similar to an
432
- * API object, except that instead of a character function name you pass a
433
- * function pointer address as the first argument, and there's no associated
434
- * DLL file.
435
- *
436
- * Once you have your API::Function object you can then call it the same way
437
- * you would an API object.
438
- *
439
- * Example:
440
- *
441
- * require 'win32/api'
442
- * include Win32
443
- *
444
- * LoadLibrary = API.new('LoadLibrary', 'P', 'L')
445
- * GetProcAddress = API.new('GetProcAddress', 'LP', 'L')
446
- *
447
- * # Play a system beep
448
- * hlib = LoadLibrary.call('user32')
449
- * addr = GetProcAddress.call(hlib, 'MessageBeep')
450
- * func = Win32::API::Function.new(addr, 'L', 'L')
451
- * func.call(0)
452
- */
453
- static VALUE func_init(int argc, VALUE* argv, VALUE self){
454
- Win32API* ptr;
455
- int i;
456
- VALUE v_address, v_proto, v_return;
457
-
458
- rb_scan_args(argc, argv, "12", &v_address, &v_proto, &v_return);
459
-
460
- Data_Get_Struct(self, Win32API, ptr);
461
-
462
- // Convert a string prototype to an array of characters
463
- if(rb_respond_to(v_proto, rb_intern("split")))
464
- v_proto = rb_str_split(v_proto, "");
465
-
466
- // Convert a nil or empty prototype to 'V' (void) automatically
467
- if(NIL_P(v_proto) || RARRAY_LEN(v_proto) == 0){
468
- v_proto = rb_ary_new();
469
- rb_ary_push(v_proto, rb_str_new2("V"));
470
- }
471
-
472
- // Set an arbitrary limit of 20 parameters
473
- if(20 < RARRAY_LEN(v_proto))
474
- rb_raise(rb_eArgError, "too many parameters: %li\n", RARRAY_LEN(v_proto));
475
-
476
- // Set the default return type to 'L' (DWORD)
477
- if(NIL_P(v_return))
478
- v_return = rb_str_new2("L");
479
-
480
- ptr->function = (FARPROC)NUM2SIZET(v_address);
481
-
482
- // Push the numeric prototypes onto our int array for later use.
483
-
484
- for(i = 0; i < RARRAY_LEN(v_proto); i++){
485
- SafeStringValue(RARRAY_PTR(v_proto)[i]);
486
- switch(*(char*)StringValuePtr(RARRAY_PTR(v_proto)[i])){
487
- case 'L':
488
- ptr->prototype[i] = _T_LONG;
489
- break;
490
- case 'P':
491
- ptr->prototype[i] = _T_POINTER;
492
- break;
493
- case 'I': case 'B':
494
- ptr->prototype[i] = _T_INTEGER;
495
- break;
496
- case 'V':
497
- ptr->prototype[i] = _T_VOID;
498
- break;
499
- case 'K':
500
- ptr->prototype[i] = _T_CALLBACK;
501
- break;
502
- case 'S':
503
- ptr->prototype[i] = _T_STRING;
504
- break;
505
- default:
506
- rb_raise(cAPIProtoError, "Illegal prototype '%s'",
507
- StringValuePtr(RARRAY_PTR(v_proto)[i])
508
- );
509
- }
510
- }
511
-
512
- // Store the return type for later use.
513
-
514
- // Automatically convert empty strings or nil to type void.
515
- if(NIL_P(v_return) || RSTRING_LEN(v_return) == 0){
516
- v_return = rb_str_new2("V");
517
- ptr->return_type = _T_VOID;
518
- }
519
- else{
520
- SafeStringValue(v_return);
521
- switch(*RSTRING_PTR(v_return)){
522
- case 'L':
523
- ptr->return_type = _T_LONG;
524
- break;
525
- case 'P':
526
- ptr->return_type = _T_POINTER;
527
- break;
528
- case 'I': case 'B':
529
- ptr->return_type = _T_INTEGER;
530
- break;
531
- case 'V':
532
- ptr->return_type = _T_VOID;
533
- break;
534
- case 'S':
535
- ptr->return_type = _T_STRING;
536
- break;
537
- default:
538
- rb_raise(cAPIProtoError, "Illegal return type '%s'",
539
- RSTRING_PTR(v_return)
540
- );
541
- }
542
- }
543
-
544
- rb_iv_set(self, "@address", v_address);
545
- rb_iv_set(self, "@prototype", v_proto);
546
- rb_iv_set(self, "@return_type", v_return);
547
-
548
- return self;
549
- }
550
-
551
- typedef struct {
552
- uintptr_t params[20];
553
- } CALLPARAM;
554
-
555
-
556
- DWORD CallbackFunction(CALLPARAM param, VALUE callback)
557
- {
558
- VALUE v_proto, v_return, v_proc, v_retval;
559
- VALUE argv[20];
560
- int i, argc;
561
- char *a_proto;
562
- char *a_return;
563
-
564
- if(callback && !NIL_P(callback)){
565
- v_proto = rb_iv_get(callback, "@prototype");
566
- a_proto = RSTRING_PTR(v_proto);
567
-
568
- v_return = rb_iv_get(callback, "@return_type");
569
- a_return = RSTRING_PTR(v_return);
570
-
571
- v_proc = rb_iv_get(callback, "@function");
572
- argc = RSTRING_LEN(v_proto);
573
-
574
- for(i=0; i < RSTRING_LEN(v_proto); i++){
575
- argv[i] = Qnil;
576
- switch(a_proto[i]){
577
- case 'L':
578
- argv[i] = SIZET2NUM(param.params[i]);
579
- break;
580
- case 'P':
581
- if(param.params[i])
582
- argv[i] = rb_str_new2((char *)param.params[i]);
583
- break;
584
- case 'I':
585
- argv[i] = INT2NUM(param.params[i]);
586
- break;
587
- default:
588
- rb_raise(cAPIProtoError, "Illegal prototype '%c'", a_proto[i]);
589
- }
590
- }
591
-
592
- v_retval = rb_funcall2(v_proc, rb_intern("call"), argc, argv);
593
-
594
- /* Handle true and false explicitly, as some CALLBACK functions
595
- * require TRUE or FALSE to break out of loops, etc.
596
- */
597
- if(v_retval == Qtrue)
598
- return TRUE;
599
- else if(v_retval == Qfalse)
600
- return FALSE;
601
-
602
- switch (*a_return) {
603
- case 'I':
604
- return NUM2INT(v_retval);
605
- break;
606
- case 'L':
607
- return NUM2SIZET(v_retval);
608
- break;
609
- case 'S':
610
- return (uintptr_t)RSTRING_PTR(v_retval);
611
- break;
612
- case 'P':
613
- if(NIL_P(v_retval)){
614
- return 0;
615
- }
616
- else if(FIXNUM_P(v_retval)){
617
- return NUM2SIZET(v_retval);
618
- }
619
- else{
620
- StringValue(v_retval);
621
- rb_str_modify(v_retval);
622
- return (uintptr_t)StringValuePtr(v_retval);
623
- }
624
- break;
625
- }
626
- }
627
-
628
- return 0;
629
- }
630
-
631
- #define CALLBACK0(x) DWORD CALLBACK CallbackFunction0_##x() {\
632
- CALLPARAM param = {{0}};\
633
- param.params[0] = 0;\
634
- return CallbackFunction(param,FuncTable[0][x]);\
635
- }
636
-
637
- #define CALLBACK1(x) DWORD CALLBACK CallbackFunction1_##x(DWORD p1) {\
638
- CALLPARAM param = {{p1}};\
639
- return CallbackFunction(param,FuncTable[1][x]);\
640
- }
641
-
642
- #define CALLBACK2(x) DWORD CALLBACK CallbackFunction2_##x(\
643
- DWORD p1, DWORD p2){\
644
- CALLPARAM param = {{p1,p2}};\
645
- return CallbackFunction(param,FuncTable[2][x]);\
646
- }
647
-
648
- #define CALLBACK3(x) DWORD CALLBACK CallbackFunction3_##x(\
649
- DWORD p1, DWORD p2, DWORD p3){\
650
- CALLPARAM param = {{p1,p2,p3}};\
651
- return CallbackFunction(param,FuncTable[3][x]);\
652
- }
653
-
654
- #define CALLBACK4(x) DWORD CALLBACK CallbackFunction4_##x(\
655
- DWORD p1, DWORD p2, DWORD p3, DWORD p4){\
656
- CALLPARAM param = {{p1,p2,p3,p4}};\
657
- return CallbackFunction(param,FuncTable[4][x]);\
658
- }
659
-
660
- #define CALLBACK5(x) DWORD CALLBACK CallbackFunction5_##x(\
661
- DWORD p1, DWORD p2, DWORD p3, DWORD p4, DWORD p5\
662
- ){\
663
- CALLPARAM param = {{p1,p2,p3,p4,p5}};\
664
- return CallbackFunction(param,FuncTable[5][x]);\
665
- }
666
-
667
- #define CALLBACK6(x) DWORD CALLBACK CallbackFunction6_##x(\
668
- DWORD p1, DWORD p2, DWORD p3, DWORD p4, DWORD p5, DWORD p6\
669
- ){\
670
- CALLPARAM param = {{p1,p2,p3,p4,p5,p6}};\
671
- return CallbackFunction(param,FuncTable[6][x]);\
672
- }
673
-
674
- #define CALLBACK7(x) DWORD CALLBACK CallbackFunction7_##x(\
675
- DWORD p1, DWORD p2, DWORD p3, DWORD p4, DWORD p5, DWORD p6, DWORD p7\
676
- ){\
677
- CALLPARAM param = {{p1,p2,p3,p4,p5,p6,p7}};\
678
- return CallbackFunction(param,FuncTable[7][x]);\
679
- }
680
-
681
- #define CALLBACK8(x) DWORD CALLBACK CallbackFunction8_##x(\
682
- DWORD p1, DWORD p2, DWORD p3, DWORD p4,\
683
- DWORD p5, DWORD p6, DWORD p7, DWORD p8\
684
- ){\
685
- CALLPARAM param = {{p1,p2,p3,p4,p5,p6,p7,p8}};\
686
- return CallbackFunction(param,FuncTable[8][x]);\
687
- }
688
-
689
- #define CALLBACK9(x) DWORD CALLBACK CallbackFunction9_##x(\
690
- DWORD p1, DWORD p2, DWORD p3, DWORD p4, DWORD p5,\
691
- DWORD p6, DWORD p7, DWORD p8, DWORD p9\
692
- ){\
693
- CALLPARAM param = {{p1,p2,p3,p4,p5,p6,p7,p8,p9}};\
694
- return CallbackFunction(param,FuncTable[9][x]);\
695
- }
696
-
697
- #define DEFCALLBACK(x) CALLBACK##x(0)\
698
- CALLBACK##x(1)\
699
- CALLBACK##x(2)\
700
- CALLBACK##x(3)\
701
- CALLBACK##x(4)\
702
- CALLBACK##x(5)\
703
- CALLBACK##x(6)\
704
- CALLBACK##x(7)\
705
- CALLBACK##x(8)\
706
- CALLBACK##x(9)
707
-
708
- #define CF(x,y) CallbackFunction##x##_##y
709
-
710
- static VALUE FuncTable[10][10];
711
-
712
- DEFCALLBACK(0)
713
- DEFCALLBACK(1)
714
- DEFCALLBACK(2)
715
- DEFCALLBACK(3)
716
- DEFCALLBACK(4)
717
- DEFCALLBACK(5)
718
- DEFCALLBACK(6)
719
- DEFCALLBACK(7)
720
- DEFCALLBACK(8)
721
- DEFCALLBACK(9)
722
-
723
- void *CallbackTable[10][10] = {
724
- {CF(0,0),CF(0,1),CF(0,2),CF(0,3),CF(0,4),CF(0,5),CF(0,6),CF(0,7),CF(0,8),CF(0,9)},
725
- {CF(1,0),CF(1,1),CF(1,2),CF(1,3),CF(1,4),CF(1,5),CF(1,6),CF(1,7),CF(1,8),CF(1,9)},
726
- {CF(2,0),CF(2,1),CF(2,2),CF(2,3),CF(2,4),CF(2,5),CF(2,6),CF(2,7),CF(2,8),CF(2,9)},
727
- {CF(3,0),CF(3,1),CF(3,2),CF(3,3),CF(3,4),CF(3,5),CF(3,6),CF(3,7),CF(3,8),CF(3,9)},
728
- {CF(4,0),CF(4,1),CF(4,2),CF(4,3),CF(4,4),CF(4,5),CF(4,6),CF(4,7),CF(4,8),CF(4,9)},
729
- {CF(5,0),CF(5,1),CF(5,2),CF(5,3),CF(5,4),CF(5,5),CF(5,6),CF(5,7),CF(5,8),CF(5,9)},
730
- {CF(6,0),CF(6,1),CF(6,2),CF(6,3),CF(6,4),CF(6,5),CF(6,6),CF(6,7),CF(6,8),CF(6,9)},
731
- {CF(7,0),CF(7,1),CF(7,2),CF(7,3),CF(7,4),CF(7,5),CF(7,6),CF(7,7),CF(7,8),CF(7,9)},
732
- {CF(8,0),CF(8,1),CF(8,2),CF(8,3),CF(8,4),CF(8,5),CF(8,6),CF(8,7),CF(8,8),CF(8,9)},
733
- {CF(9,0),CF(9,1),CF(9,2),CF(9,3),CF(9,4),CF(9,5),CF(9,6),CF(9,7),CF(9,8),CF(9,9)}};
734
-
735
-
736
- void *find_callback(VALUE obj,int len)
737
- {
738
- int i;
739
- for(i=0;i<10;i++)
740
- {
741
- if(FuncTable[len][i]==0)
742
- break;
743
- }
744
- if(i>=10)
745
- rb_raise(cAPIError,"too many callbacks are defined.");
746
- FuncTable[len][i] = obj;
747
- return CallbackTable[len][i];
748
- }
749
-
750
- /*
751
- * call-seq:
752
- * Win32::API#call(arg1, arg2, ...)
753
- *
754
- * Calls the function pointer with the given arguments (if any). Note that,
755
- * while this method will catch some prototype mismatches (raising a TypeError
756
- * in the process), it is not fulproof. It is ultimately your job to make
757
- * sure the arguments match the +prototype+ specified in the constructor.
758
- *
759
- * For convenience, nil is converted to NULL, true is converted to TRUE (1)
760
- * and false is converted to FALSE (0).
761
- */
762
- static VALUE api_call(int argc, VALUE* argv, VALUE self){
763
- VALUE v_proto, v_args, v_arg, v_return;
764
- Win32API* ptr;
765
- uintptr_t return_value;
766
- int i = 0;
767
- int len;
768
-
769
- struct{
770
- uintptr_t params[20];
771
- } param;
772
-
773
- Data_Get_Struct(self, Win32API, ptr);
774
-
775
- rb_scan_args(argc, argv, "0*", &v_args);
776
-
777
- v_proto = rb_iv_get(self, "@prototype");
778
-
779
- // For void prototypes, allow either no args or an explicit nil
780
- if(RARRAY_LEN(v_proto) != RARRAY_LEN(v_args)){
781
- char* c = StringValuePtr(RARRAY_PTR(v_proto)[0]);
782
- if(!strcmp(c, "V")){
783
- rb_ary_push(v_args, Qnil);
784
- }
785
- else{
786
- rb_raise(rb_eArgError,
787
- "wrong number of parameters: expected %ld, got %ld",
788
- RARRAY_LEN(v_proto), RARRAY_LEN(v_args)
789
- );
790
- }
791
- }
792
-
793
- len = RARRAY_LEN(v_proto);
794
-
795
- for(i = 0; i < len; i++){
796
- v_arg = RARRAY_PTR(v_args)[i];
797
-
798
- // Convert nil to NULL. Otherwise convert as appropriate.
799
- if(NIL_P(v_arg))
800
- param.params[i] = (uintptr_t)NULL;
801
- else if(v_arg == Qtrue)
802
- param.params[i] = TRUE;
803
- else if(v_arg == Qfalse)
804
- param.params[i] = FALSE;
805
- else
806
- switch(ptr->prototype[i]){
807
- case _T_LONG:
808
- param.params[i] = NUM2SIZET(v_arg);
809
- break;
810
- case _T_INTEGER:
811
- param.params[i] = NUM2INT(v_arg);
812
- break;
813
- case _T_POINTER:
814
- if(FIXNUM_P(v_arg)){
815
- param.params[i] = NUM2SIZET(v_arg);
816
- }
817
- else{
818
- StringValue(v_arg);
819
- rb_str_modify(v_arg);
820
- param.params[i] = (uintptr_t)StringValuePtr(v_arg);
821
- }
822
- break;
823
- case _T_CALLBACK:
824
- ActiveCallback = v_arg;
825
- param.params[i] = (LPARAM)NUM2SIZET(rb_iv_get(ActiveCallback, "@address"));;
826
- break;
827
- case _T_STRING:
828
- param.params[i] = (uintptr_t)RSTRING_PTR(v_arg);
829
- break;
830
- default:
831
- param.params[i] = NUM2SIZET(v_arg);
832
- }
833
- }
834
-
835
- /* Call the function, get the return value */
836
- if(strcmp(StringValuePtr(RARRAY_PTR(v_proto)[0]), "V") == 0 && len == 1)
837
- {
838
- return_value = ptr->function();
839
- }
840
- else
841
- {
842
- switch(len)
843
- {
844
- case 0:
845
- return_value = ptr->function();
846
- break;
847
- case 1:
848
- return_value = ptr->function(param.params[0]);
849
- break;
850
- case 2:
851
- return_value = ptr->function(param.params[0], param.params[1]);
852
- break;
853
- case 3:
854
- return_value = ptr->function(param.params[0], param.params[1],
855
- param.params[2]);
856
- break;
857
- case 4:
858
- return_value = ptr->function(param.params[0], param.params[1],
859
- param.params[2], param.params[3]);
860
- break;
861
- case 5:
862
- return_value = ptr->function(param.params[0], param.params[1],
863
- param.params[2], param.params[3], param.params[4]);
864
- break;
865
- case 6:
866
- return_value = ptr->function(param.params[0], param.params[1],
867
- param.params[2], param.params[3], param.params[4], param.params[5]);
868
- break;
869
- case 7:
870
- return_value = ptr->function(param.params[0], param.params[1],
871
- param.params[2], param.params[3], param.params[4], param.params[5],
872
- param.params[6]);
873
- break;
874
- case 8:
875
- return_value = ptr->function(param.params[0], param.params[1],
876
- param.params[2], param.params[3], param.params[4], param.params[5],
877
- param.params[6], param.params[7]);
878
- break;
879
- case 9:
880
- return_value = ptr->function(param.params[0], param.params[1],
881
- param.params[2], param.params[3], param.params[4], param.params[5],
882
- param.params[6], param.params[7], param.params[8]);
883
- break;
884
- case 10:
885
- return_value = ptr->function(param.params[0], param.params[1],
886
- param.params[2], param.params[3], param.params[4], param.params[5],
887
- param.params[6], param.params[7], param.params[8], param.params[9]);
888
- break;
889
- case 11:
890
- return_value = ptr->function(param.params[0], param.params[1],
891
- param.params[2], param.params[3], param.params[4], param.params[5],
892
- param.params[6], param.params[7], param.params[8], param.params[9],
893
- param.params[10]);
894
- break;
895
- case 12:
896
- return_value = ptr->function(param.params[0], param.params[1],
897
- param.params[2], param.params[3], param.params[4], param.params[5],
898
- param.params[6], param.params[7], param.params[8], param.params[9],
899
- param.params[10], param.params[11]);
900
- break;
901
- case 13:
902
- return_value = ptr->function(param.params[0], param.params[1],
903
- param.params[2], param.params[3], param.params[4], param.params[5],
904
- param.params[6], param.params[7], param.params[8], param.params[9],
905
- param.params[10], param.params[11], param.params[12]);
906
- break;
907
- case 14:
908
- return_value = ptr->function(param.params[0], param.params[1],
909
- param.params[2], param.params[3], param.params[4], param.params[5],
910
- param.params[6], param.params[7], param.params[8], param.params[9],
911
- param.params[10], param.params[11], param.params[12], param.params[13]);
912
- break;
913
- case 15:
914
- return_value = ptr->function(param.params[0], param.params[1],
915
- param.params[2], param.params[3], param.params[4], param.params[5],
916
- param.params[6], param.params[7], param.params[8], param.params[9],
917
- param.params[10], param.params[11], param.params[12], param.params[13],
918
- param.params[14]);
919
- break;
920
- case 16:
921
- return_value = ptr->function(param.params[0], param.params[1],
922
- param.params[2], param.params[3], param.params[4], param.params[5],
923
- param.params[6], param.params[7], param.params[8], param.params[9],
924
- param.params[10], param.params[11], param.params[12], param.params[13],
925
- param.params[14], param.params[15]);
926
- break;
927
- case 17:
928
- return_value = ptr->function(param.params[0], param.params[1],
929
- param.params[2], param.params[3], param.params[4], param.params[5],
930
- param.params[6], param.params[7], param.params[8], param.params[9],
931
- param.params[10], param.params[11], param.params[12], param.params[13],
932
- param.params[14], param.params[15], param.params[16]);
933
- break;
934
- case 18:
935
- return_value = ptr->function(param.params[0], param.params[1],
936
- param.params[2], param.params[3], param.params[4], param.params[5],
937
- param.params[6], param.params[7], param.params[8], param.params[9],
938
- param.params[10], param.params[11], param.params[12], param.params[13],
939
- param.params[14], param.params[15], param.params[16], param.params[17]);
940
- break;
941
- case 19:
942
- return_value = ptr->function(param.params[0], param.params[1],
943
- param.params[2], param.params[3], param.params[4], param.params[5],
944
- param.params[6], param.params[7], param.params[8], param.params[9],
945
- param.params[10], param.params[11], param.params[12], param.params[13],
946
- param.params[14], param.params[15], param.params[16], param.params[17],
947
- param.params[18]);
948
- break;
949
- case 20:
950
- return_value = ptr->function(param.params[0], param.params[1],
951
- param.params[2], param.params[3], param.params[4], param.params[5],
952
- param.params[6], param.params[7], param.params[8], param.params[9],
953
- param.params[10], param.params[11], param.params[12], param.params[13],
954
- param.params[14], param.params[15], param.params[16], param.params[17],
955
- param.params[18], param.params[19]);
956
- break;
957
- default:
958
- rb_raise(rb_eArgError,"number of parameters exceed 20!");
959
- }
960
- }
961
-
962
- /* Return the appropriate type based on the return type specified
963
- * in the constructor.
964
- */
965
- switch(ptr->return_type){
966
- case _T_INTEGER:
967
- v_return = INT2NUM(return_value);
968
- break;
969
- case _T_LONG:
970
- v_return = SIZET2NUM(return_value);
971
- break;
972
- case _T_VOID:
973
- v_return = Qnil;
974
- break;
975
- case _T_POINTER:
976
- if(!return_value){
977
- v_return = Qnil;
978
- }
979
- else{
980
- VALUE v_efunc = rb_iv_get(self, "@effective_function_name");
981
- char* efunc = RSTRING_PTR(v_efunc);
982
- if(efunc[strlen(efunc)-1] == 'W'){
983
- v_return = rb_str_new(
984
- (TCHAR*)return_value,
985
- wcslen((wchar_t*)return_value)*2
986
- );
987
- }
988
- else{
989
- v_return = rb_str_new2((TCHAR*)return_value);
990
- }
991
- }
992
- break;
993
- case _T_STRING:
994
- {
995
- VALUE v_efunc = rb_iv_get(self, "@effective_function_name");
996
- char* efunc = RSTRING_PTR(v_efunc);
997
-
998
- if(efunc[strlen(efunc)-1] == 'W'){
999
- v_return = rb_str_new(
1000
- (TCHAR*)return_value,
1001
- wcslen((wchar_t*)return_value)*2
1002
- );
1003
- }
1004
- else{
1005
- v_return = rb_str_new2((TCHAR*)return_value);
1006
- }
1007
- }
1008
- break;
1009
- default:
1010
- v_return = INT2NUM(0);
1011
- }
1012
-
1013
- return v_return;
1014
- }
1015
-
1016
- /*
1017
- * Wraps the Windows API functions in a Ruby interface.
1018
- */
1019
- void Init_api(){
1020
- VALUE mWin32, cAPI, cCallback, cFunction;
1021
-
1022
- /* Modules and Classes */
1023
-
1024
- /* The Win32 module serves as a namespace only */
1025
- mWin32 = rb_define_module("Win32");
1026
-
1027
- /* The API class encapsulates a function pointer to Windows API function */
1028
- cAPI = rb_define_class_under(mWin32, "API", rb_cObject);
1029
-
1030
- /* The API::Callback class encapsulates a Windows CALLBACK function */
1031
- cCallback = rb_define_class_under(cAPI, "Callback", rb_cObject);
1032
-
1033
- /* The API::Function class encapsulates a raw function pointer */
1034
- cFunction = rb_define_class_under(cAPI, "Function", cAPI);
1035
-
1036
- /* The API::Error class serves as a base class for other errors */
1037
- cAPIError = rb_define_class_under(cAPI, "Error", rb_eRuntimeError);
1038
-
1039
- /* The LoadError class is raised if a function cannot be found or loaded */
1040
- cAPILoadError = rb_define_class_under(cAPI, "LoadLibraryError", cAPIError);
1041
-
1042
- /* The PrototypeError class is raised if an invalid prototype is passed */
1043
- cAPIProtoError = rb_define_class_under(cAPI, "PrototypeError", cAPIError);
1044
-
1045
- /* Miscellaneous */
1046
- rb_define_alloc_func(cAPI, api_allocate);
1047
-
1048
- /* Win32::API Instance Methods */
1049
- rb_define_method(cAPI, "initialize", api_init, -1);
1050
- rb_define_method(cAPI, "call", api_call, -1);
1051
-
1052
- /* Win32::API::Callback Instance Methods */
1053
- rb_define_method(cCallback, "initialize", callback_init, -1);
1054
-
1055
- /* Win32::API::Function Instance Methods */
1056
- rb_define_method(cFunction, "initialize", func_init, -1);
1057
-
1058
- /* The name of the DLL that exports the API function */
1059
- rb_define_attr(cAPI, "dll_name", 1, 0);
1060
-
1061
- /* The name of the function passed to the constructor */
1062
- rb_define_attr(cAPI, "function_name", 1, 0);
1063
-
1064
- /* The name of the actual function that is returned by the constructor.
1065
- * For example, if you passed 'GetUserName' to the constructor, then the
1066
- * effective function name would be either 'GetUserNameA' or 'GetUserNameW'.
1067
- */
1068
- rb_define_attr(cAPI, "effective_function_name", 1, 0);
1069
-
1070
- /* The prototype, returned as an array of characters */
1071
- rb_define_attr(cAPI, "prototype", 1, 0);
1072
-
1073
- /* The return type, returned as a single character, S, P, L, I, V or B */
1074
- rb_define_attr(cAPI, "return_type", 1, 0);
1075
-
1076
- /* Win32::API::Callback Instance Methods */
1077
-
1078
- /* The prototype, returned as an array of characters */
1079
- rb_define_attr(cCallback, "prototype", 1, 0);
1080
-
1081
- /* The return type, returned as a single character, S, P, L, I, V or B */
1082
- rb_define_attr(cCallback, "return_type", 1, 0);
1083
-
1084
- /* The numeric address of the function pointer */
1085
- rb_define_attr(cCallback, "address", 1, 0);
1086
- rb_define_attr(cFunction, "address", 1, 0);
1087
-
1088
- /* Constants */
1089
-
1090
- /* 1.6.0: The version of the win32-api library */
1091
- rb_define_const(cAPI, "VERSION", rb_str_new2(WINDOWS_API_VERSION));
1092
- }