scoot 0.0.4 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1240) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.scoot.example +11 -0
  4. data/Gemfile +1 -2
  5. data/Gemfile.lock +62 -25
  6. data/README.md +17 -2
  7. data/bin/scoot +14 -3
  8. data/bin/scoot-files/scoot-build.rb +92 -0
  9. data/bin/scoot-files/scoot-clean.rb +17 -0
  10. data/bin/scoot-files/scoot-config.rb +22 -23
  11. data/bin/scoot-files/scoot-deploy.rb +21 -0
  12. data/bin/scoot-files/scoot-serve.rb +17 -0
  13. data/scoot.gemspec +2 -2
  14. metadata +9 -1229
  15. data/.bundle/bin/bayes.rb +0 -16
  16. data/.bundle/bin/commander +0 -16
  17. data/.bundle/bin/htmldiff +0 -16
  18. data/.bundle/bin/ldiff +0 -16
  19. data/.bundle/bin/rspec +0 -16
  20. data/.bundle/bin/scoot +0 -16
  21. data/.bundle/bin/summarize.rb +0 -16
  22. data/.bundle/config +0 -4
  23. data/.bundle/gems/ruby/2.2.0/bin/bayes.rb +0 -23
  24. data/.bundle/gems/ruby/2.2.0/bin/commander +0 -23
  25. data/.bundle/gems/ruby/2.2.0/bin/htmldiff +0 -25
  26. data/.bundle/gems/ruby/2.2.0/bin/ldiff +0 -25
  27. data/.bundle/gems/ruby/2.2.0/bin/rspec +0 -23
  28. data/.bundle/gems/ruby/2.2.0/bin/scoot +0 -23
  29. data/.bundle/gems/ruby/2.2.0/bin/summarize.rb +0 -23
  30. data/.bundle/gems/ruby/2.2.0/cache/blankslate-2.1.2.4.gem +0 -0
  31. data/.bundle/gems/ruby/2.2.0/cache/celluloid-0.16.0.gem +0 -0
  32. data/.bundle/gems/ruby/2.2.0/cache/classifier-reborn-2.0.3.gem +0 -0
  33. data/.bundle/gems/ruby/2.2.0/cache/coffee-script-2.4.1.gem +0 -0
  34. data/.bundle/gems/ruby/2.2.0/cache/coffee-script-source-1.9.1.1.gem +0 -0
  35. data/.bundle/gems/ruby/2.2.0/cache/colorator-0.1.gem +0 -0
  36. data/.bundle/gems/ruby/2.2.0/cache/commander-4.3.4.gem +0 -0
  37. data/.bundle/gems/ruby/2.2.0/cache/diff-lcs-1.2.5.gem +0 -0
  38. data/.bundle/gems/ruby/2.2.0/cache/execjs-2.5.2.gem +0 -0
  39. data/.bundle/gems/ruby/2.2.0/cache/fast-stemmer-1.0.2.gem +0 -0
  40. data/.bundle/gems/ruby/2.2.0/cache/ffi-1.9.10.gem +0 -0
  41. data/.bundle/gems/ruby/2.2.0/cache/highline-1.7.2.gem +0 -0
  42. data/.bundle/gems/ruby/2.2.0/cache/hitimes-1.2.2.gem +0 -0
  43. data/.bundle/gems/ruby/2.2.0/cache/jekyll-coffeescript-1.0.1.gem +0 -0
  44. data/.bundle/gems/ruby/2.2.0/cache/jekyll-gist-1.2.1.gem +0 -0
  45. data/.bundle/gems/ruby/2.2.0/cache/jekyll-paginate-1.1.0.gem +0 -0
  46. data/.bundle/gems/ruby/2.2.0/cache/require_all-1.3.2.gem +0 -0
  47. data/.bundle/gems/ruby/2.2.0/cache/rspec-3.3.0.gem +0 -0
  48. data/.bundle/gems/ruby/2.2.0/cache/rspec-core-3.3.2.gem +0 -0
  49. data/.bundle/gems/ruby/2.2.0/cache/rspec-expectations-3.3.1.gem +0 -0
  50. data/.bundle/gems/ruby/2.2.0/cache/rspec-mocks-3.3.2.gem +0 -0
  51. data/.bundle/gems/ruby/2.2.0/cache/rspec-support-3.3.0.gem +0 -0
  52. data/.bundle/gems/ruby/2.2.0/cache/timers-4.0.1.gem +0 -0
  53. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/fast-stemmer-1.0.2/gem.build_complete +0 -0
  54. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/fast-stemmer-1.0.2/gem_make.out +0 -554
  55. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/fast-stemmer-1.0.2/stemmer.bundle +0 -0
  56. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/ffi-1.9.10/ffi_c.bundle +0 -0
  57. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/ffi-1.9.10/gem.build_complete +0 -0
  58. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/ffi-1.9.10/gem_make.out +0 -56
  59. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/ffi-1.9.10/mkmf.log +0 -402
  60. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/hitimes-1.2.2/gem.build_complete +0 -0
  61. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/hitimes-1.2.2/gem_make.out +0 -16
  62. data/.bundle/gems/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/hitimes-1.2.2/hitimes/2.2/hitimes.bundle +0 -0
  63. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/README +0 -31
  64. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/Rakefile +0 -13
  65. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/VERSION +0 -1
  66. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/blankslate.gemspec +0 -22
  67. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/lib/blankslate.rb +0 -109
  68. data/.bundle/gems/ruby/2.2.0/gems/blankslate-2.1.2.4/spec/blankslate_spec.rb +0 -39
  69. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/LICENSE.txt +0 -20
  70. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/README.md +0 -172
  71. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid.rb +0 -516
  72. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/actor.rb +0 -362
  73. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/actor_system.rb +0 -107
  74. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/autostart.rb +0 -3
  75. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/call_chain.rb +0 -13
  76. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb +0 -151
  77. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/cell.rb +0 -89
  78. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/condition.rb +0 -89
  79. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/core_ext.rb +0 -9
  80. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/cpu_counter.rb +0 -34
  81. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/evented_mailbox.rb +0 -73
  82. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/exceptions.rb +0 -23
  83. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/fiber.rb +0 -32
  84. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/fsm.rb +0 -186
  85. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/future.rb +0 -108
  86. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/handlers.rb +0 -41
  87. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb +0 -159
  88. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/legacy.rb +0 -9
  89. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/links.rb +0 -36
  90. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logger.rb +0 -93
  91. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging.rb +0 -5
  92. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging/incident.rb +0 -21
  93. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging/incident_logger.rb +0 -129
  94. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging/incident_reporter.rb +0 -48
  95. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging/log_event.rb +0 -20
  96. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/logging/ring_buffer.rb +0 -65
  97. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/mailbox.rb +0 -156
  98. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/method.rb +0 -32
  99. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/notifications.rb +0 -83
  100. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb +0 -146
  101. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/probe.rb +0 -73
  102. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/properties.rb +0 -24
  103. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/abstract_proxy.rb +0 -20
  104. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/actor_proxy.rb +0 -38
  105. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/async_proxy.rb +0 -31
  106. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/block_proxy.rb +0 -29
  107. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb +0 -68
  108. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/future_proxy.rb +0 -35
  109. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb +0 -36
  110. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/receivers.rb +0 -63
  111. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/registry.rb +0 -57
  112. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/responses.rb +0 -44
  113. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/rspec.rb +0 -13
  114. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/rspec/actor_examples.rb +0 -1054
  115. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/rspec/example_actor_class.rb +0 -109
  116. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/rspec/mailbox_examples.rb +0 -84
  117. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/rspec/task_examples.rb +0 -49
  118. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/signals.rb +0 -23
  119. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/stack_dump.rb +0 -133
  120. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb +0 -169
  121. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/supervisor.rb +0 -22
  122. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/system_events.rb +0 -66
  123. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/task_set.rb +0 -49
  124. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/tasks.rb +0 -176
  125. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb +0 -43
  126. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/tasks/task_thread.rb +0 -53
  127. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/test.rb +0 -3
  128. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/thread.rb +0 -40
  129. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/thread_handle.rb +0 -50
  130. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/lib/celluloid/uuid.rb +0 -38
  131. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/actor_spec.rb +0 -5
  132. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/actor_system_spec.rb +0 -69
  133. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/block_spec.rb +0 -54
  134. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/calls_spec.rb +0 -42
  135. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/condition_spec.rb +0 -76
  136. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/cpu_counter_spec.rb +0 -82
  137. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/evented_mailbox_spec.rb +0 -34
  138. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/fsm_spec.rb +0 -107
  139. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/future_spec.rb +0 -32
  140. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/internal_pool_spec.rb +0 -52
  141. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/links_spec.rb +0 -45
  142. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/logging/ring_buffer_spec.rb +0 -38
  143. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/mailbox_spec.rb +0 -5
  144. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/notifications_spec.rb +0 -120
  145. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/pool_spec.rb +0 -92
  146. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/probe_spec.rb +0 -121
  147. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/properties_spec.rb +0 -42
  148. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/registry_spec.rb +0 -64
  149. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/stack_dump_spec.rb +0 -64
  150. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/supervision_group_spec.rb +0 -65
  151. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/supervisor_spec.rb +0 -103
  152. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/tasks/task_fiber_spec.rb +0 -5
  153. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/tasks/task_thread_spec.rb +0 -5
  154. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/thread_handle_spec.rb +0 -26
  155. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/timer_spec.rb +0 -48
  156. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/celluloid/uuid_spec.rb +0 -11
  157. data/.bundle/gems/ruby/2.2.0/gems/celluloid-0.16.0/spec/spec_helper.rb +0 -44
  158. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/LICENSE +0 -429
  159. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/README.markdown +0 -114
  160. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/bin/bayes.rb +0 -36
  161. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/bin/summarize.rb +0 -16
  162. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn.rb +0 -30
  163. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/bayes.rb +0 -138
  164. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/category_namer.rb +0 -15
  165. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/extensions/hasher.rb +0 -134
  166. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/extensions/vector.rb +0 -79
  167. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/extensions/vector_serialize.rb +0 -20
  168. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/lsi.rb +0 -317
  169. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/lsi/content_node.rb +0 -86
  170. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/lsi/summarizer.rb +0 -33
  171. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/lsi/word_list.rb +0 -36
  172. data/.bundle/gems/ruby/2.2.0/gems/classifier-reborn-2.0.3/lib/classifier-reborn/version.rb +0 -3
  173. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-2.4.1/LICENSE +0 -22
  174. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-2.4.1/README.md +0 -43
  175. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-2.4.1/lib/coffee-script.rb +0 -1
  176. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-2.4.1/lib/coffee_script.rb +0 -81
  177. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-source-1.9.1.1/lib/coffee_script/coffee-script.js +0 -6628
  178. data/.bundle/gems/ruby/2.2.0/gems/coffee-script-source-1.9.1.1/lib/coffee_script/source.rb +0 -7
  179. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/Gemfile +0 -2
  180. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/LICENSE +0 -21
  181. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/README.markdown +0 -36
  182. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/Rakefile +0 -146
  183. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/colorator.gemspec +0 -66
  184. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/lib/colorator.rb +0 -18
  185. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/lib/colorator/core_ext.rb +0 -10
  186. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/spec/colorator/core_ext_spec.rb +0 -18
  187. data/.bundle/gems/ruby/2.2.0/gems/colorator-0.1/spec/spec_helper.rb +0 -9
  188. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/.gitignore +0 -7
  189. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/.rspec +0 -2
  190. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/.rubocop.yml +0 -9
  191. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/.rubocop_todo.yml +0 -77
  192. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/.travis.yml +0 -8
  193. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/DEVELOPMENT +0 -15
  194. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/Gemfile +0 -3
  195. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/History.rdoc +0 -392
  196. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/LICENSE +0 -22
  197. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/Manifest +0 -38
  198. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/README.md +0 -456
  199. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/Rakefile +0 -13
  200. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/bin/commander +0 -55
  201. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/commander.gemspec +0 -26
  202. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander.rb +0 -35
  203. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/blank.rb +0 -7
  204. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/command.rb +0 -210
  205. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/configure.rb +0 -14
  206. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/core_ext.rb +0 -2
  207. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/core_ext/array.rb +0 -24
  208. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/core_ext/object.rb +0 -8
  209. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/delegates.rb +0 -25
  210. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters.rb +0 -49
  211. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/base.rb +0 -24
  212. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal.rb +0 -19
  213. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal/command_help.erb +0 -35
  214. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal/help.erb +0 -36
  215. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal_compact.rb +0 -11
  216. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal_compact/command_help.erb +0 -27
  217. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/help_formatters/terminal_compact/help.erb +0 -29
  218. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/import.rb +0 -8
  219. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/methods.rb +0 -9
  220. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/platform.rb +0 -7
  221. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/runner.rb +0 -436
  222. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/user_interaction.rb +0 -528
  223. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/lib/commander/version.rb +0 -3
  224. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/command_spec.rb +0 -157
  225. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/configure_spec.rb +0 -37
  226. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/core_ext/array_spec.rb +0 -18
  227. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/core_ext/object_spec.rb +0 -19
  228. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/help_formatters/terminal_compact_spec.rb +0 -69
  229. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/help_formatters/terminal_spec.rb +0 -67
  230. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/methods_spec.rb +0 -20
  231. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/runner_spec.rb +0 -573
  232. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/spec_helper.rb +0 -77
  233. data/.bundle/gems/ruby/2.2.0/gems/commander-4.3.4/spec/ui_spec.rb +0 -30
  234. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/.autotest +0 -3
  235. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/.gemtest +0 -0
  236. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/.hoerc +0 -2
  237. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/.rspec +0 -2
  238. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/.travis.yml +0 -22
  239. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/Contributing.rdoc +0 -64
  240. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/Gemfile +0 -20
  241. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/History.rdoc +0 -152
  242. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/License.rdoc +0 -39
  243. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/Manifest.txt +0 -38
  244. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/README.rdoc +0 -85
  245. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/Rakefile +0 -41
  246. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/autotest/discover.rb +0 -1
  247. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/bin/htmldiff +0 -32
  248. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/bin/ldiff +0 -6
  249. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/docs/COPYING.txt +0 -339
  250. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/docs/artistic.txt +0 -127
  251. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff-lcs.rb +0 -3
  252. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs.rb +0 -805
  253. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/array.rb +0 -7
  254. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/block.rb +0 -37
  255. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +0 -322
  256. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/change.rb +0 -177
  257. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +0 -149
  258. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +0 -276
  259. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +0 -301
  260. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +0 -195
  261. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/string.rb +0 -5
  262. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/change_spec.rb +0 -65
  263. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/diff_spec.rb +0 -47
  264. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/hunk_spec.rb +0 -72
  265. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/issues_spec.rb +0 -24
  266. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/lcs_spec.rb +0 -54
  267. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/patch_spec.rb +0 -414
  268. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/sdiff_spec.rb +0 -214
  269. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/spec_helper.rb +0 -290
  270. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +0 -310
  271. data/.bundle/gems/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +0 -139
  272. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/LICENSE +0 -21
  273. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/README.md +0 -80
  274. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs.rb +0 -6
  275. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/disabled_runtime.rb +0 -29
  276. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/duktape_runtime.rb +0 -68
  277. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/encoding.rb +0 -26
  278. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/external_runtime.rb +0 -241
  279. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/module.rb +0 -42
  280. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/ruby_racer_runtime.rb +0 -114
  281. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/ruby_rhino_runtime.rb +0 -97
  282. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/runtime.rb +0 -55
  283. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/runtimes.rb +0 -86
  284. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/support/jsc_runner.js +0 -18
  285. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/support/jscript_runner.js +0 -22
  286. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/support/json2.js +0 -481
  287. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/support/node_runner.js +0 -20
  288. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/support/spidermonkey_runner.js +0 -18
  289. data/.bundle/gems/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/version.rb +0 -3
  290. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/LICENSE +0 -20
  291. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/README +0 -25
  292. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/Rakefile +0 -36
  293. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/VERSION.yml +0 -5
  294. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/.RUBYARCHDIR.time +0 -0
  295. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/Makefile +0 -260
  296. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/extconf.rb +0 -3
  297. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/porter.c +0 -441
  298. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/porter.o +0 -0
  299. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/porter_wrap.c +0 -42
  300. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/porter_wrap.o +0 -0
  301. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/ext/stemmer.bundle +0 -0
  302. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/lib/fast-stemmer.rb +0 -1
  303. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/lib/fast_stemmer.rb +0 -7
  304. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/lib/stemmer.bundle +0 -0
  305. data/.bundle/gems/ruby/2.2.0/gems/fast-stemmer-1.0.2/test/fast_stemmer_test.rb +0 -19
  306. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/COPYING +0 -49
  307. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/LICENSE +0 -24
  308. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/README.md +0 -109
  309. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/Rakefile +0 -210
  310. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/.RUBYARCHDIR.time +0 -0
  311. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.c +0 -1032
  312. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.h +0 -175
  313. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.o +0 -0
  314. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.c +0 -162
  315. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.h +0 -59
  316. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.o +0 -0
  317. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Buffer.c +0 -365
  318. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Buffer.o +0 -0
  319. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.c +0 -530
  320. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.h +0 -93
  321. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.o +0 -0
  322. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.c +0 -283
  323. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.h +0 -57
  324. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.o +0 -0
  325. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DataConverter.c +0 -91
  326. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DataConverter.o +0 -0
  327. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.c +0 -337
  328. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.h +0 -98
  329. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.o +0 -0
  330. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.c +0 -1000
  331. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.h +0 -87
  332. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.o +0 -0
  333. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/FunctionInfo.c +0 -271
  334. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/FunctionInfo.o +0 -0
  335. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.c +0 -184
  336. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.h +0 -47
  337. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.o +0 -0
  338. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.c +0 -63
  339. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.h +0 -51
  340. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.o +0 -0
  341. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Makefile +0 -260
  342. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.c +0 -168
  343. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.h +0 -59
  344. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.o +0 -0
  345. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.c +0 -197
  346. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.h +0 -53
  347. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.o +0 -0
  348. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.c +0 -360
  349. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.h +0 -55
  350. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.o +0 -0
  351. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.c +0 -121
  352. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.h +0 -45
  353. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.o +0 -0
  354. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.c +0 -508
  355. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.h +0 -63
  356. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.o +0 -0
  357. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.c +0 -829
  358. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.h +0 -106
  359. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.o +0 -0
  360. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.c +0 -190
  361. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.h +0 -50
  362. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.o +0 -0
  363. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.c +0 -150
  364. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.h +0 -55
  365. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.o +0 -0
  366. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructLayout.c +0 -698
  367. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructLayout.o +0 -0
  368. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.c +0 -352
  369. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.h +0 -95
  370. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.o +0 -0
  371. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.c +0 -397
  372. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.h +0 -62
  373. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.o +0 -0
  374. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.c +0 -139
  375. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.h +0 -89
  376. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.o +0 -0
  377. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Variadic.c +0 -280
  378. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Variadic.o +0 -0
  379. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/compat.h +0 -83
  380. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/extconf.h +0 -7
  381. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/extconf.rb +0 -65
  382. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi.c +0 -98
  383. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi.o +0 -0
  384. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi_c.bundle +0 -0
  385. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.bsd.mk +0 -34
  386. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.darwin.mk +0 -95
  387. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.gnu.mk +0 -31
  388. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.mk +0 -13
  389. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.vc.mk +0 -26
  390. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.vc64.mk +0 -26
  391. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog +0 -4600
  392. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.libffi +0 -584
  393. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.libgcj +0 -40
  394. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.v1 +0 -764
  395. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/LICENSE +0 -21
  396. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.am +0 -196
  397. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.in +0 -1820
  398. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.vc +0 -141
  399. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.vc64 +0 -141
  400. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/README +0 -342
  401. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/acinclude.m4 +0 -92
  402. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/aclocal.m4 +0 -1873
  403. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/build-ios.sh +0 -67
  404. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/compile +0 -143
  405. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/config.guess +0 -1501
  406. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/config.sub +0 -1705
  407. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure +0 -17191
  408. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure.ac +0 -496
  409. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure.host +0 -11
  410. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/depcomp +0 -630
  411. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/libffi.info +0 -593
  412. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/libffi.texi +0 -600
  413. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/stamp-vti +0 -4
  414. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/version.texi +0 -4
  415. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/fficonfig.h.in +0 -199
  416. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/fficonfig.hw +0 -57
  417. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/Makefile.am +0 -9
  418. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/Makefile.in +0 -487
  419. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.in +0 -427
  420. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc +0 -427
  421. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc64 +0 -427
  422. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi_common.h +0 -126
  423. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/install-sh +0 -520
  424. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/libffi.pc.in +0 -10
  425. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/libtool-version +0 -29
  426. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ltmain.sh +0 -9636
  427. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -176
  428. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -195
  429. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_check_compiler_flags.m4 +0 -76
  430. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -63
  431. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -70
  432. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -300
  433. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -215
  434. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -79
  435. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/libtool.m4 +0 -7831
  436. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltoptions.m4 +0 -369
  437. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltsugar.m4 +0 -123
  438. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltversion.m4 +0 -23
  439. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/lt~obsolete.m4 +0 -98
  440. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/Makefile.am +0 -8
  441. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/Makefile.in +0 -466
  442. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi.3 +0 -31
  443. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  444. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -66
  445. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/mdate-sh +0 -201
  446. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/missing +0 -376
  447. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/msvcc.sh +0 -197
  448. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/ffi.c +0 -284
  449. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -48
  450. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/osf.S +0 -387
  451. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/ffi.c +0 -728
  452. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -65
  453. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/gentramp.sh +0 -118
  454. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/sysv.S +0 -497
  455. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/trampoline.S +0 -4450
  456. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  457. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -50
  458. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  459. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/closures.c +0 -615
  460. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/ffi.c +0 -383
  461. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -51
  462. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  463. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/debug.c +0 -59
  464. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/dlmalloc.c +0 -5161
  465. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  466. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  467. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -57
  468. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ffi.c +0 -582
  469. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -50
  470. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  471. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/unix.S +0 -560
  472. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/java_raw_api.c +0 -356
  473. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/ffi.c +0 -232
  474. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -48
  475. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  476. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/ffi.c +0 -288
  477. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -49
  478. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/sysv.S +0 -270
  479. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/ffi.c +0 -1036
  480. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -242
  481. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/n32.S +0 -591
  482. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/o32.S +0 -381
  483. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/moxie/eabi.S +0 -128
  484. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/moxie/ffi.c +0 -276
  485. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/ffi.c +0 -719
  486. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -78
  487. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/hpux32.S +0 -368
  488. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/linux.S +0 -357
  489. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/aix.S +0 -328
  490. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -445
  491. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  492. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -383
  493. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -575
  494. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -1448
  495. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1359
  496. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -139
  497. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -187
  498. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -236
  499. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -327
  500. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -219
  501. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/prep_cif.c +0 -177
  502. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/raw_api.c +0 -254
  503. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/ffi.c +0 -780
  504. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -62
  505. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/sysv.S +0 -434
  506. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/ffi.c +0 -716
  507. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -49
  508. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  509. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/ffi.c +0 -468
  510. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -53
  511. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  512. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/ffi.c +0 -669
  513. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -68
  514. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/v8.S +0 -313
  515. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/v9.S +0 -307
  516. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/types.c +0 -77
  517. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/darwin.S +0 -444
  518. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/darwin64.S +0 -416
  519. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffi.c +0 -644
  520. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffi64.c +0 -635
  521. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -121
  522. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/freebsd.S +0 -458
  523. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/sysv.S +0 -468
  524. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/unix64.S +0 -426
  525. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/win32.S +0 -1065
  526. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/win64.S +0 -468
  527. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/Makefile.am +0 -80
  528. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/Makefile.in +0 -500
  529. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  530. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +0 -300
  531. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -350
  532. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -263
  533. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  534. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -32
  535. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +0 -89
  536. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +0 -81
  537. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +0 -81
  538. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +0 -82
  539. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +0 -89
  540. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +0 -92
  541. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +0 -90
  542. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c +0 -95
  543. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c +0 -64
  544. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +0 -94
  545. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +0 -95
  546. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +0 -96
  547. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +0 -102
  548. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +0 -89
  549. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +0 -91
  550. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +0 -93
  551. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +0 -113
  552. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +0 -90
  553. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +0 -95
  554. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +0 -90
  555. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +0 -90
  556. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +0 -98
  557. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +0 -90
  558. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +0 -109
  559. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +0 -98
  560. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +0 -124
  561. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +0 -113
  562. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +0 -99
  563. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +0 -117
  564. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +0 -97
  565. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +0 -88
  566. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +0 -90
  567. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +0 -91
  568. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +0 -93
  569. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +0 -91
  570. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +0 -92
  571. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +0 -134
  572. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +0 -117
  573. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +0 -95
  574. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +0 -91
  575. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +0 -91
  576. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +0 -92
  577. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +0 -91
  578. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +0 -91
  579. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +0 -93
  580. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +0 -66
  581. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +0 -43
  582. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +0 -60
  583. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +0 -42
  584. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +0 -105
  585. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +0 -60
  586. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +0 -74
  587. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +0 -74
  588. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +0 -86
  589. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +0 -91
  590. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +0 -74
  591. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +0 -86
  592. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +0 -74
  593. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +0 -140
  594. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +0 -44
  595. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +0 -42
  596. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +0 -42
  597. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +0 -42
  598. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +0 -43
  599. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +0 -47
  600. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +0 -43
  601. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +0 -36
  602. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  603. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -153
  604. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  605. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -58
  606. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -58
  607. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -72
  608. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  609. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +0 -342
  610. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -69
  611. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +0 -63
  612. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -53
  613. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +0 -152
  614. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +0 -161
  615. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +0 -133
  616. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +0 -110
  617. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +0 -111
  618. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +0 -111
  619. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +0 -112
  620. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +0 -131
  621. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +0 -111
  622. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +0 -131
  623. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +0 -131
  624. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +0 -90
  625. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  626. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +0 -114
  627. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -35
  628. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  629. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  630. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  631. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  632. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  633. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  634. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  635. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  636. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -43
  637. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  638. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -38
  639. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  640. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -38
  641. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +0 -145
  642. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +0 -148
  643. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +0 -124
  644. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +0 -125
  645. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -44
  646. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +0 -44
  647. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -65
  648. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  649. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -59
  650. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -63
  651. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -65
  652. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  653. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  654. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -80
  655. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -67
  656. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +0 -70
  657. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +0 -96
  658. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +0 -35
  659. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc +0 -124
  660. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc +0 -53
  661. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/texinfo.tex +0 -7210
  662. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/rbffi.h +0 -57
  663. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/rbffi_endian.h +0 -59
  664. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/win32/stdbool.h +0 -8
  665. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/win32/stdint.h +0 -201
  666. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/ffi.gemspec +0 -23
  667. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/gen/Rakefile +0 -30
  668. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi.rb +0 -20
  669. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/autopointer.rb +0 -194
  670. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/buffer.rb +0 -4
  671. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/callback.rb +0 -4
  672. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/enum.rb +0 -174
  673. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/errno.rb +0 -43
  674. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/ffi.rb +0 -44
  675. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/io.rb +0 -62
  676. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/library.rb +0 -524
  677. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/managedstruct.rb +0 -84
  678. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/memorypointer.rb +0 -1
  679. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform.rb +0 -159
  680. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/aarch64-linux/types.conf +0 -104
  681. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/arm-linux/types.conf +0 -104
  682. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  683. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-darwin/types.conf +0 -100
  684. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  685. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-gnu/types.conf +0 -107
  686. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-linux/types.conf +0 -103
  687. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  688. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  689. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-solaris/types.conf +0 -122
  690. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-windows/types.conf +0 -105
  691. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/ia64-linux/types.conf +0 -104
  692. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mips-linux/types.conf +0 -102
  693. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  694. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  695. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  696. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  697. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-linux/types.conf +0 -100
  698. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  699. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/s390-linux/types.conf +0 -102
  700. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/s390x-linux/types.conf +0 -102
  701. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparc-linux/types.conf +0 -102
  702. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  703. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  704. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  705. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-darwin/types.conf +0 -126
  706. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  707. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-linux/types.conf +0 -102
  708. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  709. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-openbsd/types.conf +0 -128
  710. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  711. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-windows/types.conf +0 -27
  712. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/pointer.rb +0 -134
  713. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/struct.rb +0 -373
  714. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/struct_layout_builder.rb +0 -227
  715. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/const_generator.rb +0 -229
  716. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/generator.rb +0 -60
  717. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/generator_task.rb +0 -36
  718. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/struct_generator.rb +0 -194
  719. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/types_generator.rb +0 -135
  720. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/types.rb +0 -190
  721. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/union.rb +0 -43
  722. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/variadic.rb +0 -78
  723. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/version.rb +0 -4
  724. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi_c.bundle +0 -0
  725. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/Benchmark.c +0 -52
  726. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/BoolTest.c +0 -34
  727. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/BufferTest.c +0 -31
  728. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/ClosureTest.c +0 -205
  729. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/EnumTest.c +0 -51
  730. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/FunctionTest.c +0 -70
  731. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/GNUmakefile +0 -149
  732. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/GlobalVariable.c +0 -62
  733. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/LastErrorTest.c +0 -21
  734. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/NumberTest.c +0 -132
  735. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/PointerTest.c +0 -63
  736. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/ReferenceTest.c +0 -23
  737. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/StringTest.c +0 -34
  738. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/StructTest.c +0 -243
  739. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/UnionTest.c +0 -43
  740. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/libtest/VariadicTest.c +0 -62
  741. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/LICENSE.SPECS +0 -22
  742. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/async_callback_spec.rb +0 -35
  743. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/bool_spec.rb +0 -32
  744. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/buffer_spec.rb +0 -279
  745. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/callback_spec.rb +0 -773
  746. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/custom_param_type.rb +0 -37
  747. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/custom_type_spec.rb +0 -74
  748. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/dup_spec.rb +0 -52
  749. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/enum_spec.rb +0 -423
  750. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/errno_spec.rb +0 -20
  751. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/ffi_spec.rb +0 -28
  752. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/Benchmark.c +0 -52
  753. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/BoolTest.c +0 -34
  754. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/BufferTest.c +0 -31
  755. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/ClosureTest.c +0 -190
  756. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/EnumTest.c +0 -51
  757. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/FunctionTest.c +0 -58
  758. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/GNUmakefile +0 -149
  759. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/GlobalVariable.c +0 -62
  760. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/LastErrorTest.c +0 -21
  761. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/NumberTest.c +0 -132
  762. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/PointerTest.c +0 -63
  763. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/ReferenceTest.c +0 -23
  764. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/StringTest.c +0 -34
  765. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/StructTest.c +0 -243
  766. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/UnionTest.c +0 -43
  767. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/VariadicTest.c +0 -99
  768. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/classes.rb +0 -438
  769. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/function_spec.rb +0 -92
  770. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/io_spec.rb +0 -16
  771. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/library_spec.rb +0 -276
  772. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/long_double.rb +0 -30
  773. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/managed_struct_spec.rb +0 -68
  774. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/memorypointer_spec.rb +0 -78
  775. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/number_spec.rb +0 -247
  776. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/platform_spec.rb +0 -114
  777. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/pointer_spec.rb +0 -278
  778. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/attach_function_spec.rb +0 -33
  779. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/memory_pointer_spec.rb +0 -130
  780. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/spec_helper.rb +0 -6
  781. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/struct_spec.rb +0 -18
  782. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/spec_helper.rb +0 -93
  783. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/string_spec.rb +0 -118
  784. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/strptr_spec.rb +0 -50
  785. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_by_ref_spec.rb +0 -43
  786. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_callback_spec.rb +0 -69
  787. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_initialize_spec.rb +0 -35
  788. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_packed_spec.rb +0 -50
  789. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_spec.rb +0 -886
  790. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/typedef_spec.rb +0 -91
  791. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/union_spec.rb +0 -67
  792. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/variadic_spec.rb +0 -113
  793. data/.bundle/gems/ruby/2.2.0/gems/ffi-1.9.10/spec/spec.opts +0 -4
  794. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/.gitignore +0 -2
  795. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/.travis.yml +0 -15
  796. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/AUTHORS +0 -3
  797. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/COPYING +0 -339
  798. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/Changelog.md +0 -397
  799. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/Gemfile +0 -9
  800. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/INSTALL +0 -59
  801. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/LICENSE +0 -7
  802. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/README.rdoc +0 -74
  803. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/Rakefile +0 -30
  804. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/TODO +0 -6
  805. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/ansi_colors.rb +0 -38
  806. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/asking_for_arrays.rb +0 -18
  807. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/basic_usage.rb +0 -75
  808. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/color_scheme.rb +0 -32
  809. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/get_character.rb +0 -12
  810. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/limit.rb +0 -12
  811. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/menus.rb +0 -65
  812. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/overwrite.rb +0 -19
  813. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/page_and_wrap.rb +0 -322
  814. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/password.rb +0 -7
  815. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/repeat_entry.rb +0 -21
  816. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/trapping_eof.rb +0 -22
  817. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/examples/using_readline.rb +0 -17
  818. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/highline.gemspec +0 -37
  819. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline.rb +0 -1048
  820. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/color_scheme.rb +0 -134
  821. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/compatibility.rb +0 -16
  822. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/import.rb +0 -41
  823. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/menu.rb +0 -381
  824. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/question.rb +0 -480
  825. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/simulate.rb +0 -48
  826. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/string_extensions.rb +0 -111
  827. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/style.rb +0 -192
  828. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/system_extensions.rb +0 -251
  829. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/lib/highline/version.rb +0 -4
  830. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/setup.rb +0 -1360
  831. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/site/.cvsignore +0 -1
  832. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/site/highline.css +0 -65
  833. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/site/images/logo.png +0 -0
  834. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/site/index.html +0 -58
  835. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/string_methods.rb +0 -32
  836. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_color_scheme.rb +0 -96
  837. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_highline.rb +0 -1360
  838. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_import.rb +0 -52
  839. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_menu.rb +0 -439
  840. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_string_extension.rb +0 -33
  841. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_string_highline.rb +0 -38
  842. data/.bundle/gems/ruby/2.2.0/gems/highline-1.7.2/test/tc_style.rb +0 -578
  843. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/.travis.yml +0 -11
  844. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/CONTRIBUTING.md +0 -45
  845. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/HISTORY.md +0 -97
  846. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/LICENSE +0 -16
  847. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/Manifest.txt +0 -45
  848. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/README.md +0 -163
  849. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/Rakefile +0 -25
  850. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/examples/benchmarks.rb +0 -113
  851. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/examples/stats.rb +0 -31
  852. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/.RUBYARCHDIR.-.hitimes.-.2.2.time +0 -0
  853. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/Makefile +0 -260
  854. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/extconf.rb +0 -24
  855. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes.bundle +0 -0
  856. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes.c +0 -21
  857. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes.o +0 -0
  858. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_clock_gettime.c +0 -28
  859. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_clock_gettime.o +0 -0
  860. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_osx.c +0 -45
  861. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_osx.o +0 -0
  862. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_windows.c +0 -27
  863. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_instant_windows.o +0 -0
  864. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_interval.c +0 -370
  865. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_interval.h +0 -73
  866. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_interval.o +0 -0
  867. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_stats.c +0 -269
  868. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_stats.h +0 -30
  869. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/c/hitimes_stats.o +0 -0
  870. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/java/src/hitimes/Hitimes.java +0 -54
  871. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/java/src/hitimes/HitimesInterval.java +0 -181
  872. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/java/src/hitimes/HitimesService.java +0 -16
  873. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/ext/hitimes/java/src/hitimes/HitimesStats.java +0 -112
  874. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes.rb +0 -47
  875. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/2.2/hitimes.bundle +0 -0
  876. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/metric.rb +0 -118
  877. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/mutexed_stats.rb +0 -32
  878. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/paths.rb +0 -53
  879. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/stats.rb +0 -58
  880. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/timed_metric.rb +0 -176
  881. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/timed_value_metric.rb +0 -233
  882. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/value_metric.rb +0 -71
  883. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/lib/hitimes/version.rb +0 -8
  884. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/hitimes_spec.rb +0 -14
  885. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/interval_spec.rb +0 -136
  886. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/metric_spec.rb +0 -28
  887. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/mutex_stats_spec.rb +0 -36
  888. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/paths_spec.rb +0 -11
  889. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/spec_helper.rb +0 -11
  890. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/stats_spec.rb +0 -98
  891. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/timed_metric_spec.rb +0 -155
  892. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/timed_value_metric_spec.rb +0 -171
  893. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/value_metric_spec.rb +0 -108
  894. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/spec/version_spec.rb +0 -7
  895. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/tasks/default.rake +0 -276
  896. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/tasks/extension.rake +0 -38
  897. data/.bundle/gems/ruby/2.2.0/gems/hitimes-1.2.2/tasks/this.rb +0 -214
  898. data/.bundle/gems/ruby/2.2.0/gems/jekyll-coffeescript-1.0.1/lib/jekyll-coffeescript.rb +0 -9
  899. data/.bundle/gems/ruby/2.2.0/gems/jekyll-coffeescript-1.0.1/lib/jekyll-coffeescript/version.rb +0 -5
  900. data/.bundle/gems/ruby/2.2.0/gems/jekyll-coffeescript-1.0.1/lib/jekyll/converters/coffeescript.rb +0 -20
  901. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/.gitignore +0 -22
  902. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/.rspec +0 -2
  903. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/.travis.yml +0 -8
  904. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/Gemfile +0 -4
  905. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/History.markdown +0 -23
  906. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/LICENSE.txt +0 -22
  907. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/README.md +0 -49
  908. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/Rakefile +0 -2
  909. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/jekyll-gist.gemspec +0 -24
  910. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/lib/jekyll-gist.rb +0 -7
  911. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/lib/jekyll-gist/gist_tag.rb +0 -49
  912. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/lib/jekyll-gist/version.rb +0 -5
  913. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/script/bootstrap +0 -3
  914. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/script/cibuild +0 -3
  915. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/spec/gist_tag_spec.rb +0 -90
  916. data/.bundle/gems/ruby/2.2.0/gems/jekyll-gist-1.2.1/spec/spec_helper.rb +0 -43
  917. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/.gitignore +0 -16
  918. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/.rspec +0 -2
  919. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/.travis.yml +0 -21
  920. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/Gemfile +0 -4
  921. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/History.markdown +0 -9
  922. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/LICENSE.txt +0 -22
  923. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/README.md +0 -31
  924. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/Rakefile +0 -1
  925. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/jekyll-paginate.gemspec +0 -24
  926. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/lib/jekyll-paginate.rb +0 -8
  927. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/lib/jekyll-paginate/pager.rb +0 -137
  928. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/lib/jekyll-paginate/pagination.rb +0 -86
  929. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/lib/jekyll-paginate/version.rb +0 -5
  930. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/script/bootstrap +0 -3
  931. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/script/cibuild +0 -3
  932. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/script/unbundle +0 -8
  933. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/pager_spec.rb +0 -134
  934. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/pagination_spec.rb +0 -0
  935. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-20-blah.html +0 -0
  936. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-21-bleh.html +0 -0
  937. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-22-humor.html +0 -0
  938. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-23-hey-there.html +0 -0
  939. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-24-whateva.html +0 -0
  940. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/_posts/2014-05-25-oh-yes.html +0 -0
  941. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/contacts/index.html +0 -2
  942. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/source/index.html +0 -2
  943. data/.bundle/gems/ruby/2.2.0/gems/jekyll-paginate-1.1.0/spec/spec_helper.rb +0 -97
  944. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/.gitignore +0 -6
  945. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/.travis.yml +0 -13
  946. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/CHANGES +0 -32
  947. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/Gemfile +0 -4
  948. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/LICENSE +0 -58
  949. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/README.md +0 -128
  950. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/Rakefile +0 -7
  951. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/lib/require_all.rb +0 -277
  952. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/require_all.gemspec +0 -22
  953. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/autoload_shared.rb +0 -74
  954. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/autoload_spec.rb +0 -65
  955. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded/module1/a.rb +0 -6
  956. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded/module2/longer_name.rb +0 -6
  957. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded/module2/module3/b.rb +0 -8
  958. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded/with_wrong_module.rb +0 -4
  959. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded_rel/modules/module1/first.rb +0 -6
  960. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded_rel/modules/module2/second.rb +0 -6
  961. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/autoloaded_rel/modules/zero.rb +0 -6
  962. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/relative/a.rb +0 -2
  963. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/relative/b/b.rb +0 -5
  964. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/relative/c/c.rb +0 -2
  965. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/relative/d/d.rb +0 -8
  966. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/resolvable/a.rb +0 -1
  967. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/resolvable/b.rb +0 -1
  968. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/resolvable/c.rb +0 -5
  969. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/resolvable/d.rb +0 -1
  970. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/unresolvable/a.rb +0 -1
  971. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/unresolvable/b.rb +0 -1
  972. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/unresolvable/c.rb +0 -1
  973. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/fixtures/unresolvable/d.rb +0 -1
  974. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/load_spec.rb +0 -56
  975. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/require_shared.rb +0 -68
  976. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/require_spec.rb +0 -45
  977. data/.bundle/gems/ruby/2.2.0/gems/require_all-1.3.2/spec/spec_helper.rb +0 -30
  978. data/.bundle/gems/ruby/2.2.0/gems/rspec-3.3.0/License.txt +0 -24
  979. data/.bundle/gems/ruby/2.2.0/gems/rspec-3.3.0/README.md +0 -34
  980. data/.bundle/gems/ruby/2.2.0/gems/rspec-3.3.0/lib/rspec.rb +0 -3
  981. data/.bundle/gems/ruby/2.2.0/gems/rspec-3.3.0/lib/rspec/version.rb +0 -5
  982. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/.document +0 -5
  983. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/.yardopts +0 -8
  984. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/Changelog.md +0 -1856
  985. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/License.txt +0 -25
  986. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/README.md +0 -369
  987. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/exe/rspec +0 -4
  988. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/autorun.rb +0 -3
  989. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core.rb +0 -181
  990. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/backtrace_formatter.rb +0 -64
  991. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/bisect/coordinator.rb +0 -66
  992. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/bisect/example_minimizer.rb +0 -130
  993. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/bisect/runner.rb +0 -139
  994. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/bisect/server.rb +0 -61
  995. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/bisect/subset_enumerator.rb +0 -39
  996. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb +0 -1807
  997. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/configuration_options.rb +0 -191
  998. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/drb.rb +0 -111
  999. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/dsl.rb +0 -96
  1000. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example.rb +0 -573
  1001. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_group.rb +0 -796
  1002. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb +0 -235
  1003. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/filter_manager.rb +0 -231
  1004. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/flat_map.rb +0 -20
  1005. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters.rb +0 -254
  1006. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/base_formatter.rb +0 -70
  1007. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/base_text_formatter.rb +0 -77
  1008. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/bisect_formatter.rb +0 -68
  1009. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -115
  1010. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/console_codes.rb +0 -65
  1011. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/deprecation_formatter.rb +0 -223
  1012. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/documentation_formatter.rb +0 -70
  1013. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/exception_presenter.rb +0 -393
  1014. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -28
  1015. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/helpers.rb +0 -109
  1016. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/html_formatter.rb +0 -151
  1017. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/html_printer.rb +0 -415
  1018. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/json_formatter.rb +0 -96
  1019. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/profile_formatter.rb +0 -68
  1020. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/progress_formatter.rb +0 -28
  1021. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/protocol.rb +0 -172
  1022. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/formatters/snippet_extractor.rb +0 -116
  1023. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/hooks.rb +0 -638
  1024. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/memoized_helpers.rb +0 -532
  1025. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/metadata.rb +0 -490
  1026. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/metadata_filter.rb +0 -235
  1027. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/minitest_assertions_adapter.rb +0 -31
  1028. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/flexmock.rb +0 -31
  1029. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/mocha.rb +0 -57
  1030. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/null.rb +0 -14
  1031. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/rr.rb +0 -31
  1032. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/rspec.rb +0 -32
  1033. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/mutex.rb +0 -63
  1034. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/notifications.rb +0 -498
  1035. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/option_parser.rb +0 -301
  1036. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/ordering.rb +0 -158
  1037. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/pending.rb +0 -165
  1038. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/profiler.rb +0 -32
  1039. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer.rb +0 -48
  1040. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer/.rspec +0 -2
  1041. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -96
  1042. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/rake_task.rb +0 -158
  1043. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/reentrant_mutex.rb +0 -52
  1044. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/reporter.rb +0 -220
  1045. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/ruby_project.rb +0 -53
  1046. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb +0 -179
  1047. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/sandbox.rb +0 -37
  1048. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/set.rb +0 -49
  1049. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/shared_context.rb +0 -55
  1050. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/shared_example_group.rb +0 -210
  1051. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/shell_escape.rb +0 -49
  1052. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/test_unit_assertions_adapter.rb +0 -30
  1053. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/version.rb +0 -9
  1054. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/warnings.rb +0 -40
  1055. data/.bundle/gems/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/world.rb +0 -178
  1056. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/.document +0 -5
  1057. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/.yardopts +0 -6
  1058. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/Changelog.md +0 -953
  1059. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/License.txt +0 -24
  1060. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/README.md +0 -289
  1061. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations.rb +0 -81
  1062. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/configuration.rb +0 -164
  1063. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/expectation_target.rb +0 -113
  1064. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/fail_with.rb +0 -31
  1065. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/failure_aggregator.rb +0 -194
  1066. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/handler.rb +0 -170
  1067. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/minitest_integration.rb +0 -31
  1068. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/syntax.rb +0 -132
  1069. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/expectations/version.rb +0 -8
  1070. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers.rb +0 -1009
  1071. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/aliased_matcher.rb +0 -116
  1072. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in.rb +0 -52
  1073. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/all.rb +0 -85
  1074. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/base_matcher.rb +0 -181
  1075. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be.rb +0 -285
  1076. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_between.rb +0 -77
  1077. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_instance_of.rb +0 -22
  1078. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_kind_of.rb +0 -16
  1079. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_within.rb +0 -72
  1080. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/change.rb +0 -337
  1081. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/compound.rb +0 -293
  1082. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/contain_exactly.rb +0 -253
  1083. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/cover.rb +0 -24
  1084. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/eq.rb +0 -40
  1085. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/eql.rb +0 -34
  1086. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/equal.rb +0 -81
  1087. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/exist.rb +0 -86
  1088. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/has.rb +0 -103
  1089. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/have_attributes.rb +0 -114
  1090. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/include.rb +0 -130
  1091. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/match.rb +0 -37
  1092. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/operators.rb +0 -128
  1093. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/output.rb +0 -200
  1094. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/raise_error.rb +0 -216
  1095. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/respond_to.rb +0 -90
  1096. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/satisfy.rb +0 -37
  1097. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -94
  1098. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/throw_symbol.rb +0 -132
  1099. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/yield.rb +0 -418
  1100. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/composable.rb +0 -184
  1101. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/dsl.rb +0 -453
  1102. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/english_phrasing.rb +0 -42
  1103. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +0 -73
  1104. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/fail_matchers.rb +0 -42
  1105. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/generated_descriptions.rb +0 -42
  1106. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/matcher_delegator.rb +0 -35
  1107. data/.bundle/gems/ruby/2.2.0/gems/rspec-expectations-3.3.1/lib/rspec/matchers/matcher_protocol.rb +0 -99
  1108. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/.document +0 -5
  1109. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/.yardopts +0 -6
  1110. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/Changelog.md +0 -965
  1111. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/License.txt +0 -24
  1112. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/README.md +0 -430
  1113. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks.rb +0 -126
  1114. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance.rb +0 -11
  1115. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/chain.rb +0 -110
  1116. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/error_generator.rb +0 -31
  1117. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -35
  1118. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -48
  1119. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/message_chains.rb +0 -83
  1120. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/proxy.rb +0 -116
  1121. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/recorder.rb +0 -264
  1122. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/stub_chain.rb +0 -46
  1123. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -27
  1124. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/argument_list_matcher.rb +0 -100
  1125. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/argument_matchers.rb +0 -320
  1126. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/configuration.rb +0 -188
  1127. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/error_generator.rb +0 -362
  1128. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/example_methods.rb +0 -421
  1129. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/instance_method_stasher.rb +0 -135
  1130. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/marshal_extension.rb +0 -41
  1131. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/expectation_customization.rb +0 -20
  1132. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/have_received.rb +0 -116
  1133. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive.rb +0 -130
  1134. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -80
  1135. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive_messages.rb +0 -75
  1136. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/message_chain.rb +0 -87
  1137. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/message_expectation.rb +0 -717
  1138. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/method_double.rb +0 -287
  1139. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/method_reference.rb +0 -192
  1140. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/mutate_const.rb +0 -335
  1141. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/mutex.rb +0 -73
  1142. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/object_reference.rb +0 -149
  1143. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/order_group.rb +0 -81
  1144. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/proxy.rb +0 -439
  1145. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/reentrant_mutex.rb +0 -53
  1146. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/space.rb +0 -238
  1147. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/standalone.rb +0 -3
  1148. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/syntax.rb +0 -325
  1149. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/targets.rb +0 -97
  1150. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/test_double.rb +0 -170
  1151. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_double.rb +0 -129
  1152. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_message_expecation.rb +0 -54
  1153. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_proxy.rb +0 -213
  1154. data/.bundle/gems/ruby/2.2.0/gems/rspec-mocks-3.3.2/lib/rspec/mocks/version.rb +0 -9
  1155. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/Changelog.md +0 -125
  1156. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/LICENSE.txt +0 -22
  1157. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/README.md +0 -26
  1158. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support.rb +0 -111
  1159. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/caller_filter.rb +0 -83
  1160. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/differ.rb +0 -215
  1161. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/directory_maker.rb +0 -63
  1162. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/encoded_string.rb +0 -155
  1163. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/fuzzy_matcher.rb +0 -48
  1164. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/hunk_generator.rb +0 -47
  1165. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/matcher_definition.rb +0 -42
  1166. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/method_signature_verifier.rb +0 -273
  1167. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/object_formatter.rb +0 -93
  1168. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/recursive_const_methods.rb +0 -76
  1169. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/ruby_features.rb +0 -118
  1170. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec.rb +0 -81
  1171. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/deprecation_helpers.rb +0 -64
  1172. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/formatting_support.rb +0 -9
  1173. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/in_sub_process.rb +0 -52
  1174. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/library_wide_checks.rb +0 -145
  1175. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/shell_out.rb +0 -71
  1176. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/stderr_splitter.rb +0 -63
  1177. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/string_matcher.rb +0 -46
  1178. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/with_isolated_directory.rb +0 -9
  1179. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/spec/with_isolated_stderr.rb +0 -13
  1180. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/version.rb +0 -7
  1181. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/version_checker.rb +0 -53
  1182. data/.bundle/gems/ruby/2.2.0/gems/rspec-support-3.3.0/lib/rspec/support/warnings.rb +0 -39
  1183. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/.coveralls.yml +0 -1
  1184. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/.gitignore +0 -17
  1185. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/.rspec +0 -5
  1186. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/.travis.yml +0 -17
  1187. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/AUTHORS.md +0 -15
  1188. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/CHANGES.md +0 -45
  1189. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/Gemfile +0 -10
  1190. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/LICENSE +0 -23
  1191. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/README.md +0 -96
  1192. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/Rakefile +0 -7
  1193. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers.rb +0 -5
  1194. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers/events.rb +0 -115
  1195. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers/group.rb +0 -118
  1196. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers/timer.rb +0 -128
  1197. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers/version.rb +0 -3
  1198. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/lib/timers/wait.rb +0 -48
  1199. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/cancel_spec.rb +0 -46
  1200. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/events_spec.rb +0 -57
  1201. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/every_spec.rb +0 -19
  1202. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/group_spec.rb +0 -254
  1203. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/performance_spec.rb +0 -83
  1204. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/spec_helper.rb +0 -19
  1205. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/strict_spec.rb +0 -37
  1206. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/spec/timeout_spec.rb +0 -29
  1207. data/.bundle/gems/ruby/2.2.0/gems/timers-4.0.1/timers.gemspec +0 -23
  1208. data/.bundle/gems/ruby/2.2.0/specifications/blankslate-2.1.2.4.gemspec +0 -33
  1209. data/.bundle/gems/ruby/2.2.0/specifications/celluloid-0.16.0.gemspec +0 -48
  1210. data/.bundle/gems/ruby/2.2.0/specifications/classifier-reborn-2.0.3.gemspec +0 -42
  1211. data/.bundle/gems/ruby/2.2.0/specifications/coffee-script-2.4.1.gemspec +0 -41
  1212. data/.bundle/gems/ruby/2.2.0/specifications/coffee-script-source-1.9.1.1.gemspec +0 -21
  1213. data/.bundle/gems/ruby/2.2.0/specifications/colorator-0.1.gemspec +0 -38
  1214. data/.bundle/gems/ruby/2.2.0/specifications/commander-4.3.4.gemspec +0 -46
  1215. data/.bundle/gems/ruby/2.2.0/specifications/diff-lcs-1.2.5.gemspec +0 -68
  1216. data/.bundle/gems/ruby/2.2.0/specifications/execjs-2.5.2.gemspec +0 -33
  1217. data/.bundle/gems/ruby/2.2.0/specifications/fast-stemmer-1.0.2.gemspec +0 -23
  1218. data/.bundle/gems/ruby/2.2.0/specifications/ffi-1.9.10.gemspec +0 -49
  1219. data/.bundle/gems/ruby/2.2.0/specifications/highline-1.7.2.gemspec +0 -37
  1220. data/.bundle/gems/ruby/2.2.0/specifications/hitimes-1.2.2.gemspec +0 -49
  1221. data/.bundle/gems/ruby/2.2.0/specifications/jekyll-coffeescript-1.0.1.gemspec +0 -43
  1222. data/.bundle/gems/ruby/2.2.0/specifications/jekyll-gist-1.2.1.gemspec +0 -40
  1223. data/.bundle/gems/ruby/2.2.0/specifications/jekyll-paginate-1.1.0.gemspec +0 -40
  1224. data/.bundle/gems/ruby/2.2.0/specifications/require_all-1.3.2.gemspec +0 -40
  1225. data/.bundle/gems/ruby/2.2.0/specifications/rspec-3.3.0.gemspec +0 -42
  1226. data/.bundle/gems/ruby/2.2.0/specifications/rspec-core-3.3.2.gemspec +0 -68
  1227. data/.bundle/gems/ruby/2.2.0/specifications/rspec-expectations-3.3.1.gemspec +0 -50
  1228. data/.bundle/gems/ruby/2.2.0/specifications/rspec-mocks-3.3.2.gemspec +0 -53
  1229. data/.bundle/gems/ruby/2.2.0/specifications/rspec-support-3.3.0.gemspec +0 -38
  1230. data/.bundle/gems/ruby/2.2.0/specifications/timers-4.0.1.gemspec +0 -38
  1231. data/.scoot +0 -21
  1232. data/Rakefile +0 -55
  1233. data/TODO.md +0 -11
  1234. data/bin/scoot-files/scoot-build-bower.rb +0 -14
  1235. data/bin/scoot-files/scoot-build-bowerrc.rb +0 -16
  1236. data/bin/scoot-files/scoot-build-gemfile.rb +0 -16
  1237. data/bin/scoot-files/scoot-build-jekyll.rb +0 -16
  1238. data/bin/scoot-files/scoot-build-templates.rb +0 -21
  1239. data/spec/bin/scoot-bower-config_spec.rb +0 -15
  1240. data/spec/spec_helper.rb +0 -1
@@ -1,337 +0,0 @@
1
- /*
2
- * Copyright (c) 2008-2010 Wayne Meissner
3
- *
4
- * Copyright (c) 2008-2013, Ruby FFI project contributors
5
- * All rights reserved.
6
- *
7
- * Redistribution and use in source and binary forms, with or without
8
- * modification, are permitted provided that the following conditions are met:
9
- * * Redistributions of source code must retain the above copyright
10
- * notice, this list of conditions and the following disclaimer.
11
- * * Redistributions in binary form must reproduce the above copyright
12
- * notice, this list of conditions and the following disclaimer in the
13
- * documentation and/or other materials provided with the distribution.
14
- * * Neither the name of the Ruby FFI project nor the
15
- * names of its contributors may be used to endorse or promote products
16
- * derived from this software without specific prior written permission.
17
- *
18
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
22
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
- */
29
-
30
- #include <sys/types.h>
31
- #include <stdio.h>
32
- #ifndef _MSC_VER
33
- # include <stdint.h>
34
- #endif
35
- #if (defined(_WIN32) || defined(__WIN32__)) && !defined(__CYGWIN__)
36
- # include <winsock2.h>
37
- # define _WINSOCKAPI_
38
- # include <windows.h>
39
- #else
40
- # include <dlfcn.h>
41
- #endif
42
- #include <ruby.h>
43
- #if defined(_MSC_VER) && !defined(INT8_MIN)
44
- # include "win32/stdint.h"
45
- #endif
46
-
47
- #include <ffi.h>
48
-
49
- #include "rbffi.h"
50
- #include "compat.h"
51
- #include "AbstractMemory.h"
52
- #include "Pointer.h"
53
- #include "DynamicLibrary.h"
54
-
55
- typedef struct LibrarySymbol_ {
56
- Pointer base;
57
- VALUE library;
58
- VALUE name;
59
- } LibrarySymbol;
60
-
61
- static VALUE library_initialize(VALUE self, VALUE libname, VALUE libflags);
62
- static void library_free(Library* lib);
63
-
64
-
65
- static VALUE symbol_allocate(VALUE klass);
66
- static VALUE symbol_new(VALUE library, void* address, VALUE name);
67
- static void symbol_mark(LibrarySymbol* sym);
68
-
69
- static VALUE LibraryClass = Qnil, SymbolClass = Qnil;
70
-
71
- #if (defined(_WIN32) || defined(__WIN32__)) && !defined(__CYGWIN__)
72
- static void* dl_open(const char* name, int flags);
73
- static void dl_error(char* buf, int size);
74
- #define dl_sym(handle, name) GetProcAddress(handle, name)
75
- #define dl_close(handle) FreeLibrary(handle)
76
- #else
77
- # define dl_open(name, flags) dlopen(name, flags != 0 ? flags : RTLD_LAZY)
78
- # define dl_error(buf, size) do { snprintf(buf, size, "%s", dlerror()); } while(0)
79
- # define dl_sym(handle, name) dlsym(handle, name)
80
- # define dl_close(handle) dlclose(handle)
81
- #endif
82
-
83
- static VALUE
84
- library_allocate(VALUE klass)
85
- {
86
- Library* library;
87
- return Data_Make_Struct(klass, Library, NULL, library_free, library);
88
- }
89
-
90
- /*
91
- * call-seq: DynamicLibrary.open(libname, libflags)
92
- * @param libname (see #initialize)
93
- * @param libflags (see #initialize)
94
- * @return [FFI::DynamicLibrary]
95
- * @raise {LoadError} if +libname+ cannot be opened
96
- * Open a library.
97
- */
98
- static VALUE
99
- library_open(VALUE klass, VALUE libname, VALUE libflags)
100
- {
101
- return library_initialize(library_allocate(klass), libname, libflags);
102
- }
103
-
104
- /*
105
- * call-seq: initialize(libname, libflags)
106
- * @param [String] libname name of library to open
107
- * @param [Fixnum] libflags flags for library to open
108
- * @return [FFI::DynamicLibrary]
109
- * @raise {LoadError} if +libname+ cannot be opened
110
- * A new DynamicLibrary instance.
111
- */
112
- static VALUE
113
- library_initialize(VALUE self, VALUE libname, VALUE libflags)
114
- {
115
- Library* library;
116
- int flags;
117
-
118
- Check_Type(libflags, T_FIXNUM);
119
-
120
- Data_Get_Struct(self, Library, library);
121
- flags = libflags != Qnil ? NUM2UINT(libflags) : 0;
122
-
123
- library->handle = dl_open(libname != Qnil ? StringValueCStr(libname) : NULL, flags);
124
- if (library->handle == NULL) {
125
- char errmsg[1024];
126
- dl_error(errmsg, sizeof(errmsg));
127
- rb_raise(rb_eLoadError, "Could not open library '%s': %s",
128
- libname != Qnil ? StringValueCStr(libname) : "[current process]",
129
- errmsg);
130
- }
131
- #ifdef __CYGWIN__
132
- // On Cygwin 1.7.17 "dlsym(dlopen(0,0), 'getpid')" fails. (dlerror: "No such process")
133
- // As a workaround we can use "dlsym(RTLD_DEFAULT, 'getpid')" instead.
134
- // Since 0 == RTLD_DEFAULT we won't call dl_close later.
135
- if (libname == Qnil) {
136
- dl_close(library->handle);
137
- library->handle = RTLD_DEFAULT;
138
- }
139
- #endif
140
- rb_iv_set(self, "@name", libname != Qnil ? libname : rb_str_new2("[current process]"));
141
- return self;
142
- }
143
-
144
- static VALUE
145
- library_dlsym(VALUE self, VALUE name)
146
- {
147
- Library* library;
148
- void* address = NULL;
149
- Check_Type(name, T_STRING);
150
-
151
- Data_Get_Struct(self, Library, library);
152
- address = dl_sym(library->handle, StringValueCStr(name));
153
-
154
- return address != NULL ? symbol_new(self, address, name) : Qnil;
155
- }
156
-
157
- /*
158
- * call-seq: last_error
159
- * @return [String] library's last error string
160
- */
161
- static VALUE
162
- library_dlerror(VALUE self)
163
- {
164
- char errmsg[1024];
165
- dl_error(errmsg, sizeof(errmsg));
166
- return rb_tainted_str_new2(errmsg);
167
- }
168
-
169
- static void
170
- library_free(Library* library)
171
- {
172
- /* dlclose() on MacOS tends to segfault - avoid it */
173
- #ifndef __APPLE__
174
- if (library->handle != NULL) {
175
- dl_close(library->handle);
176
- }
177
- #endif
178
- xfree(library);
179
- }
180
-
181
- #if (defined(_WIN32) || defined(__WIN32__)) && !defined(__CYGWIN__)
182
- static void*
183
- dl_open(const char* name, int flags)
184
- {
185
- if (name == NULL) {
186
- return GetModuleHandle(NULL);
187
- } else {
188
- return LoadLibraryExA(name, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
189
- }
190
- }
191
-
192
- static void
193
- dl_error(char* buf, int size)
194
- {
195
- FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(),
196
- 0, buf, size, NULL);
197
- }
198
- #endif
199
-
200
- static VALUE
201
- symbol_allocate(VALUE klass)
202
- {
203
- LibrarySymbol* sym;
204
- VALUE obj = Data_Make_Struct(klass, LibrarySymbol, NULL, -1, sym);
205
- sym->name = Qnil;
206
- sym->library = Qnil;
207
- sym->base.rbParent = Qnil;
208
-
209
- return obj;
210
- }
211
-
212
-
213
- /*
214
- * call-seq: initialize_copy(other)
215
- * @param [Object] other
216
- * @return [nil]
217
- * DO NOT CALL THIS METHOD
218
- */
219
- static VALUE
220
- symbol_initialize_copy(VALUE self, VALUE other)
221
- {
222
- rb_raise(rb_eRuntimeError, "cannot duplicate symbol");
223
- return Qnil;
224
- }
225
-
226
- static VALUE
227
- symbol_new(VALUE library, void* address, VALUE name)
228
- {
229
- LibrarySymbol* sym;
230
- VALUE obj = Data_Make_Struct(SymbolClass, LibrarySymbol, symbol_mark, -1, sym);
231
-
232
- sym->base.memory.address = address;
233
- sym->base.memory.size = LONG_MAX;
234
- sym->base.memory.typeSize = 1;
235
- sym->base.memory.flags = MEM_RD | MEM_WR;
236
- sym->library = library;
237
- sym->name = name;
238
-
239
- return obj;
240
- }
241
-
242
- static void
243
- symbol_mark(LibrarySymbol* sym)
244
- {
245
- rb_gc_mark(sym->library);
246
- rb_gc_mark(sym->name);
247
- }
248
-
249
- /*
250
- * call-seq: inspect
251
- * @return [String]
252
- * Inspect.
253
- */
254
- static VALUE
255
- symbol_inspect(VALUE self)
256
- {
257
- LibrarySymbol* sym;
258
- char buf[256];
259
-
260
- Data_Get_Struct(self, LibrarySymbol, sym);
261
- snprintf(buf, sizeof(buf), "#<FFI::Library::Symbol name=%s address=%p>",
262
- StringValueCStr(sym->name), sym->base.memory.address);
263
- return rb_str_new2(buf);
264
- }
265
-
266
- void
267
- rbffi_DynamicLibrary_Init(VALUE moduleFFI)
268
- {
269
- /*
270
- * Document-class: FFI::DynamicLibrary
271
- */
272
- LibraryClass = rb_define_class_under(moduleFFI, "DynamicLibrary", rb_cObject);
273
- rb_global_variable(&LibraryClass);
274
- /*
275
- * Document-class: FFI::DynamicLibrary::Symbol < FFI::Pointer
276
- *
277
- * An instance of this class represents a library symbol. It may be a {Pointer pointer} to
278
- * a function or to a variable.
279
- */
280
- SymbolClass = rb_define_class_under(LibraryClass, "Symbol", rbffi_PointerClass);
281
- rb_global_variable(&SymbolClass);
282
-
283
- /*
284
- * Document-const: FFI::NativeLibrary
285
- * Backward compatibility for FFI::DynamicLibrary
286
- */
287
- rb_define_const(moduleFFI, "NativeLibrary", LibraryClass); /* backwards compat library */
288
- rb_define_alloc_func(LibraryClass, library_allocate);
289
- rb_define_singleton_method(LibraryClass, "open", library_open, 2);
290
- rb_define_singleton_method(LibraryClass, "last_error", library_dlerror, 0);
291
- rb_define_method(LibraryClass, "initialize", library_initialize, 2);
292
- /*
293
- * Document-method: find_symbol
294
- * call-seq: find_symbol(name)
295
- * @param [String] name library symbol's name
296
- * @return [FFI::DynamicLibrary::Symbol] library symbol
297
- */
298
- rb_define_method(LibraryClass, "find_symbol", library_dlsym, 1);
299
- /*
300
- * Document-method: find_function
301
- * call-seq: find_function(name)
302
- * @param [String] name library function's name
303
- * @return [FFI::DynamicLibrary::Symbol] library function symbol
304
- */
305
- rb_define_method(LibraryClass, "find_function", library_dlsym, 1);
306
- /*
307
- * Document-method: find_variable
308
- * call-seq: find_variable(name)
309
- * @param [String] name library variable's name
310
- * @return [FFI::DynamicLibrary::Symbol] library variable symbol
311
- */
312
- rb_define_method(LibraryClass, "find_variable", library_dlsym, 1);
313
- rb_define_method(LibraryClass, "last_error", library_dlerror, 0);
314
- rb_define_attr(LibraryClass, "name", 1, 0);
315
-
316
- rb_define_alloc_func(SymbolClass, symbol_allocate);
317
- rb_undef_method(SymbolClass, "new");
318
- rb_define_method(SymbolClass, "inspect", symbol_inspect, 0);
319
- rb_define_method(SymbolClass, "initialize_copy", symbol_initialize_copy, 1);
320
-
321
- #define DEF(x) rb_define_const(LibraryClass, "RTLD_" #x, UINT2NUM(RTLD_##x))
322
- DEF(LAZY);
323
- DEF(NOW);
324
- DEF(GLOBAL);
325
- DEF(LOCAL);
326
- DEF(NOLOAD);
327
- DEF(NODELETE);
328
- DEF(FIRST);
329
- DEF(DEEPBIND);
330
- DEF(MEMBER);
331
- DEF(BINDING_MASK);
332
- DEF(LOCATION_MASK);
333
- DEF(ALL_MASK);
334
- #undef DEF
335
-
336
- }
337
-
@@ -1,98 +0,0 @@
1
- /*
2
- * Copyright (c) 2008-2010 Wayne Meissner
3
- * Copyright (c) 2008-2013, Ruby FFI project contributors
4
- * All rights reserved.
5
- *
6
- * Redistribution and use in source and binary forms, with or without
7
- * modification, are permitted provided that the following conditions are met:
8
- * * Redistributions of source code must retain the above copyright
9
- * notice, this list of conditions and the following disclaimer.
10
- * * Redistributions in binary form must reproduce the above copyright
11
- * notice, this list of conditions and the following disclaimer in the
12
- * documentation and/or other materials provided with the distribution.
13
- * * Neither the name of the Ruby FFI project nor the
14
- * names of its contributors may be used to endorse or promote products
15
- * derived from this software without specific prior written permission.
16
- *
17
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
18
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
21
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
- */
28
-
29
- #ifndef _LIBRARY_H
30
- #define _LIBRARY_H
31
-
32
- #ifdef __cplusplus
33
- extern "C" {
34
- #endif
35
-
36
- /* if these aren't defined (eg. windows), we need sensible defaults */
37
- #ifndef RTLD_LAZY
38
- #define RTLD_LAZY 1
39
- #endif
40
-
41
- #ifndef RTLD_NOW
42
- #define RTLD_NOW 2
43
- #endif
44
-
45
- #ifndef RTLD_LOCAL
46
- #define RTLD_LOCAL 4
47
- #endif
48
-
49
- #ifndef RTLD_GLOBAL
50
- #define RTLD_GLOBAL 8
51
- #endif
52
-
53
- /* If these aren't defined, they're not supported so define as 0 */
54
- #ifndef RTLD_NOLOAD
55
- #define RTLD_NOLOAD 0
56
- #endif
57
-
58
- #ifndef RTLD_NODELETE
59
- #define RTLD_NODELETE 0
60
- #endif
61
-
62
- #ifndef RTLD_FIRST
63
- #define RTLD_FIRST 0
64
- #endif
65
-
66
- #ifndef RTLD_DEEPBIND
67
- #define RTLD_DEEPBIND 0
68
- #endif
69
-
70
- #ifndef RTLD_MEMBER
71
- #define RTLD_MEMBER 0
72
- #endif
73
-
74
- /* convenience */
75
- #ifndef RTLD_BINDING_MASK
76
- #define RTLD_BINDING_MASK (RTLD_LAZY | RTLD_NOW)
77
- #endif
78
-
79
- #ifndef RTLD_LOCATION_MASK
80
- #define RTLD_LOCATION_MASK (RTLD_LOCAL | RTLD_GLOBAL)
81
- #endif
82
-
83
- #ifndef RTLD_ALL_MASK
84
- #define RTLD_ALL_MASK (RTLD_BINDING_MASK | RTLD_LOCATION_MASK | RTLD_NOLOAD | RTLD_NODELETE | RTLD_FIRST | RTLD_DEEPBIND | RTLD_MEMBER)
85
- #endif
86
-
87
- typedef struct Library {
88
- void* handle;
89
- } Library;
90
-
91
- extern void rbffi_DynamicLibrary_Init(VALUE ffiModule);
92
-
93
- #ifdef __cplusplus
94
- }
95
- #endif
96
-
97
- #endif /* _LIBRARY_H */
98
-
@@ -1,1000 +0,0 @@
1
- /*
2
- * Copyright (c) 2009-2011 Wayne Meissner
3
- *
4
- * Copyright (c) 2008-2013, Ruby FFI project contributors
5
- * All rights reserved.
6
- *
7
- * Redistribution and use in source and binary forms, with or without
8
- * modification, are permitted provided that the following conditions are met:
9
- * * Redistributions of source code must retain the above copyright
10
- * notice, this list of conditions and the following disclaimer.
11
- * * Redistributions in binary form must reproduce the above copyright
12
- * notice, this list of conditions and the following disclaimer in the
13
- * documentation and/or other materials provided with the distribution.
14
- * * Neither the name of the Ruby FFI project nor the
15
- * names of its contributors may be used to endorse or promote products
16
- * derived from this software without specific prior written permission.
17
- *
18
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
22
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
- */
29
-
30
- #ifndef _MSC_VER
31
- #include <sys/param.h>
32
- #endif
33
- #include <sys/types.h>
34
- #ifndef _WIN32
35
- # include <sys/mman.h>
36
- # include <unistd.h>
37
- #endif
38
-
39
- #include <stdio.h>
40
- #ifndef _MSC_VER
41
- # include <stdint.h>
42
- # include <stdbool.h>
43
- #else
44
- # include "win32/stdbool.h"
45
- # if !defined(INT8_MIN)
46
- # include "win32/stdint.h"
47
- # endif
48
- #endif
49
- #include <ruby.h>
50
-
51
- #include <ffi.h>
52
- #if defined(HAVE_NATIVETHREAD) && !defined(_WIN32)
53
- #include <pthread.h>
54
- #endif
55
- #include <fcntl.h>
56
-
57
- #include "rbffi.h"
58
- #include "compat.h"
59
-
60
- #include "AbstractMemory.h"
61
- #include "Pointer.h"
62
- #include "Struct.h"
63
- #include "Platform.h"
64
- #include "Type.h"
65
- #include "LastError.h"
66
- #include "Call.h"
67
- #include "ClosurePool.h"
68
- #include "MappedType.h"
69
- #include "Thread.h"
70
- #include "LongDouble.h"
71
- #include "MethodHandle.h"
72
- #include "Function.h"
73
-
74
- typedef struct Function_ {
75
- Pointer base;
76
- FunctionType* info;
77
- MethodHandle* methodHandle;
78
- bool autorelease;
79
- Closure* closure;
80
- VALUE rbProc;
81
- VALUE rbFunctionInfo;
82
- } Function;
83
-
84
- static void function_mark(Function *);
85
- static void function_free(Function *);
86
- static VALUE function_init(VALUE self, VALUE rbFunctionInfo, VALUE rbProc);
87
- static void callback_invoke(ffi_cif* cif, void* retval, void** parameters, void* user_data);
88
- static bool callback_prep(void* ctx, void* code, Closure* closure, char* errmsg, size_t errmsgsize);
89
- static void* callback_with_gvl(void* data);
90
- static VALUE invoke_callback(void* data);
91
- static VALUE save_callback_exception(void* data, VALUE exc);
92
-
93
- #define DEFER_ASYNC_CALLBACK 1
94
-
95
-
96
- #if defined(DEFER_ASYNC_CALLBACK)
97
- static VALUE async_cb_event(void *);
98
- static VALUE async_cb_call(void *);
99
- #endif
100
-
101
- #ifdef HAVE_RB_THREAD_CALL_WITH_GVL
102
- extern void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1);
103
- #endif
104
-
105
- VALUE rbffi_FunctionClass = Qnil;
106
-
107
- #if defined(DEFER_ASYNC_CALLBACK)
108
- static VALUE async_cb_thread = Qnil;
109
- #endif
110
-
111
- static ID id_call = 0, id_to_native = 0, id_from_native = 0, id_cbtable = 0, id_cb_ref = 0;
112
-
113
- struct gvl_callback {
114
- Closure* closure;
115
- void* retval;
116
- void** parameters;
117
- bool done;
118
- rbffi_frame_t *frame;
119
- #if defined(DEFER_ASYNC_CALLBACK)
120
- struct gvl_callback* next;
121
- # ifndef _WIN32
122
- pthread_cond_t async_cond;
123
- pthread_mutex_t async_mutex;
124
- # else
125
- HANDLE async_event;
126
- # endif
127
- #endif
128
- };
129
-
130
-
131
- #if defined(DEFER_ASYNC_CALLBACK)
132
- static struct gvl_callback* async_cb_list = NULL;
133
- # ifndef _WIN32
134
- static pthread_mutex_t async_cb_mutex = PTHREAD_MUTEX_INITIALIZER;
135
- static pthread_cond_t async_cb_cond = PTHREAD_COND_INITIALIZER;
136
- # if !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL))
137
- static int async_cb_pipe[2];
138
- # endif
139
- # else
140
- static HANDLE async_cb_cond;
141
- static CRITICAL_SECTION async_cb_lock;
142
- # if !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL))
143
- static int async_cb_pipe[2];
144
- # endif
145
- # endif
146
- #endif
147
-
148
-
149
- static VALUE
150
- function_allocate(VALUE klass)
151
- {
152
- Function *fn;
153
- VALUE obj;
154
-
155
- obj = Data_Make_Struct(klass, Function, function_mark, function_free, fn);
156
-
157
- fn->base.memory.flags = MEM_RD;
158
- fn->base.rbParent = Qnil;
159
- fn->rbProc = Qnil;
160
- fn->rbFunctionInfo = Qnil;
161
- fn->autorelease = true;
162
-
163
- return obj;
164
- }
165
-
166
- static void
167
- function_mark(Function *fn)
168
- {
169
- rb_gc_mark(fn->base.rbParent);
170
- rb_gc_mark(fn->rbProc);
171
- rb_gc_mark(fn->rbFunctionInfo);
172
- }
173
-
174
- static void
175
- function_free(Function *fn)
176
- {
177
- if (fn->methodHandle != NULL) {
178
- rbffi_MethodHandle_Free(fn->methodHandle);
179
- }
180
-
181
- if (fn->closure != NULL && fn->autorelease) {
182
- rbffi_Closure_Free(fn->closure);
183
- }
184
-
185
- xfree(fn);
186
- }
187
-
188
- /*
189
- * @param [Type, Symbol] return_type return type for the function
190
- * @param [Array<Type, Symbol>] param_types array of parameters types
191
- * @param [Hash] options see {FFI::FunctionType} for available options
192
- * @return [self]
193
- * A new Function instance.
194
- *
195
- * Define a function from a Proc or a block.
196
- *
197
- * @overload initialize(return_type, param_types, options = {}) { |i| ... }
198
- * @yieldparam i parameters for the function
199
- * @overload initialize(return_type, param_types, proc, options = {})
200
- * @param [Proc] proc
201
- */
202
- static VALUE
203
- function_initialize(int argc, VALUE* argv, VALUE self)
204
- {
205
-
206
- VALUE rbReturnType = Qnil, rbParamTypes = Qnil, rbProc = Qnil, rbOptions = Qnil;
207
- VALUE rbFunctionInfo = Qnil;
208
- VALUE infoArgv[3];
209
- int nargs;
210
-
211
- nargs = rb_scan_args(argc, argv, "22", &rbReturnType, &rbParamTypes, &rbProc, &rbOptions);
212
-
213
- /*
214
- * Callback with block,
215
- * e.g. Function.new(:int, [ :int ]) { |i| blah }
216
- * or Function.new(:int, [ :int ], { :convention => :stdcall }) { |i| blah }
217
- */
218
- if (rb_block_given_p()) {
219
- if (nargs > 3) {
220
- rb_raise(rb_eArgError, "cannot create function with both proc/address and block");
221
- }
222
- rbOptions = rbProc;
223
- rbProc = rb_block_proc();
224
- } else {
225
- /* Callback with proc, or Function with address
226
- * e.g. Function.new(:int, [ :int ], Proc.new { |i| })
227
- * Function.new(:int, [ :int ], Proc.new { |i| }, { :convention => :stdcall })
228
- * Function.new(:int, [ :int ], addr)
229
- * Function.new(:int, [ :int ], addr, { :convention => :stdcall })
230
- */
231
- }
232
-
233
- infoArgv[0] = rbReturnType;
234
- infoArgv[1] = rbParamTypes;
235
- infoArgv[2] = rbOptions;
236
- rbFunctionInfo = rb_class_new_instance(rbOptions != Qnil ? 3 : 2, infoArgv, rbffi_FunctionTypeClass);
237
-
238
- function_init(self, rbFunctionInfo, rbProc);
239
-
240
- return self;
241
- }
242
-
243
- /*
244
- * call-seq: initialize_copy(other)
245
- * @return [nil]
246
- * DO NOT CALL THIS METHOD
247
- */
248
- static VALUE
249
- function_initialize_copy(VALUE self, VALUE other)
250
- {
251
- rb_raise(rb_eRuntimeError, "cannot duplicate function instances");
252
- return Qnil;
253
- }
254
-
255
- VALUE
256
- rbffi_Function_NewInstance(VALUE rbFunctionInfo, VALUE rbProc)
257
- {
258
- return function_init(function_allocate(rbffi_FunctionClass), rbFunctionInfo, rbProc);
259
- }
260
-
261
- VALUE
262
- rbffi_Function_ForProc(VALUE rbFunctionInfo, VALUE proc)
263
- {
264
- VALUE callback, cbref, cbTable;
265
- Function* fp;
266
-
267
- cbref = RTEST(rb_ivar_defined(proc, id_cb_ref)) ? rb_ivar_get(proc, id_cb_ref) : Qnil;
268
- /* If the first callback reference has the same function function signature, use it */
269
- if (cbref != Qnil && CLASS_OF(cbref) == rbffi_FunctionClass) {
270
- Data_Get_Struct(cbref, Function, fp);
271
- if (fp->rbFunctionInfo == rbFunctionInfo) {
272
- return cbref;
273
- }
274
- }
275
-
276
- cbTable = RTEST(rb_ivar_defined(proc, id_cbtable)) ? rb_ivar_get(proc, id_cbtable) : Qnil;
277
- if (cbTable != Qnil && (callback = rb_hash_aref(cbTable, rbFunctionInfo)) != Qnil) {
278
- return callback;
279
- }
280
-
281
- /* No existing function for the proc with that signature, create a new one and cache it */
282
- callback = rbffi_Function_NewInstance(rbFunctionInfo, proc);
283
- if (cbref == Qnil) {
284
- /* If there is no other cb already cached for this proc, we can use the ivar slot */
285
- rb_ivar_set(proc, id_cb_ref, callback);
286
- } else {
287
- /* The proc instance has been used as more than one type of callback, store extras in a hash */
288
- cbTable = rb_hash_new();
289
- rb_ivar_set(proc, id_cbtable, cbTable);
290
- rb_hash_aset(cbTable, rbFunctionInfo, callback);
291
- }
292
-
293
- return callback;
294
- }
295
-
296
- static VALUE
297
- function_init(VALUE self, VALUE rbFunctionInfo, VALUE rbProc)
298
- {
299
- Function* fn = NULL;
300
-
301
- Data_Get_Struct(self, Function, fn);
302
-
303
- fn->rbFunctionInfo = rbFunctionInfo;
304
-
305
- Data_Get_Struct(fn->rbFunctionInfo, FunctionType, fn->info);
306
-
307
- if (rb_obj_is_kind_of(rbProc, rbffi_PointerClass)) {
308
- Pointer* orig;
309
- Data_Get_Struct(rbProc, Pointer, orig);
310
- fn->base.memory = orig->memory;
311
- fn->base.rbParent = rbProc;
312
-
313
- } else if (rb_obj_is_kind_of(rbProc, rb_cProc) || rb_respond_to(rbProc, id_call)) {
314
- if (fn->info->closurePool == NULL) {
315
- fn->info->closurePool = rbffi_ClosurePool_New(sizeof(ffi_closure), callback_prep, fn->info);
316
- if (fn->info->closurePool == NULL) {
317
- rb_raise(rb_eNoMemError, "failed to create closure pool");
318
- }
319
- }
320
-
321
- #if defined(DEFER_ASYNC_CALLBACK)
322
- if (async_cb_thread == Qnil) {
323
- #if !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)) && defined(_WIN32)
324
- _pipe(async_cb_pipe, 1024, O_BINARY);
325
- #elif !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL))
326
- pipe(async_cb_pipe);
327
- fcntl(async_cb_pipe[0], F_SETFL, fcntl(async_cb_pipe[0], F_GETFL) | O_NONBLOCK);
328
- fcntl(async_cb_pipe[1], F_SETFL, fcntl(async_cb_pipe[1], F_GETFL) | O_NONBLOCK);
329
- #endif
330
- async_cb_thread = rb_thread_create(async_cb_event, NULL);
331
- }
332
-
333
- #endif
334
-
335
- fn->closure = rbffi_Closure_Alloc(fn->info->closurePool);
336
- fn->closure->info = fn;
337
- fn->base.memory.address = fn->closure->code;
338
- fn->base.memory.size = sizeof(*fn->closure);
339
- fn->autorelease = true;
340
-
341
- } else {
342
- rb_raise(rb_eTypeError, "wrong argument type %s, expected pointer or proc",
343
- rb_obj_classname(rbProc));
344
- }
345
-
346
- fn->rbProc = rbProc;
347
-
348
- return self;
349
- }
350
-
351
- /*
352
- * call-seq: call(*args)
353
- * @param [Array] args function arguments
354
- * @return [FFI::Type]
355
- * Call the function
356
- */
357
- static VALUE
358
- function_call(int argc, VALUE* argv, VALUE self)
359
- {
360
- Function* fn;
361
-
362
- Data_Get_Struct(self, Function, fn);
363
-
364
- return (*fn->info->invoke)(argc, argv, fn->base.memory.address, fn->info);
365
- }
366
-
367
- /*
368
- * call-seq: attach(m, name)
369
- * @param [Module] m
370
- * @param [String] name
371
- * @return [self]
372
- * Attach a Function to the Module +m+ as +name+.
373
- */
374
- static VALUE
375
- function_attach(VALUE self, VALUE module, VALUE name)
376
- {
377
- Function* fn;
378
- char var[1024];
379
-
380
- Data_Get_Struct(self, Function, fn);
381
-
382
- if (fn->info->parameterCount == -1) {
383
- rb_raise(rb_eRuntimeError, "cannot attach variadic functions");
384
- return Qnil;
385
- }
386
-
387
- if (!rb_obj_is_kind_of(module, rb_cModule)) {
388
- rb_raise(rb_eRuntimeError, "trying to attach function to non-module");
389
- return Qnil;
390
- }
391
-
392
- if (fn->methodHandle == NULL) {
393
- fn->methodHandle = rbffi_MethodHandle_Alloc(fn->info, fn->base.memory.address);
394
- }
395
-
396
- /*
397
- * Stash the Function in a module variable so it does not get garbage collected
398
- */
399
- snprintf(var, sizeof(var), "@@%s", StringValueCStr(name));
400
- rb_cv_set(module, var, self);
401
-
402
- rb_define_singleton_method(module, StringValueCStr(name),
403
- rbffi_MethodHandle_CodeAddress(fn->methodHandle), -1);
404
-
405
-
406
- rb_define_method(module, StringValueCStr(name),
407
- rbffi_MethodHandle_CodeAddress(fn->methodHandle), -1);
408
-
409
- return self;
410
- }
411
-
412
- /*
413
- * call-seq: autorelease = autorelease
414
- * @param [Boolean] autorelease
415
- * @return [self]
416
- * Set +autorelease+ attribute (See {Pointer}).
417
- */
418
- static VALUE
419
- function_set_autorelease(VALUE self, VALUE autorelease)
420
- {
421
- Function* fn;
422
-
423
- Data_Get_Struct(self, Function, fn);
424
-
425
- fn->autorelease = RTEST(autorelease);
426
-
427
- return self;
428
- }
429
-
430
- static VALUE
431
- function_autorelease_p(VALUE self)
432
- {
433
- Function* fn;
434
-
435
- Data_Get_Struct(self, Function, fn);
436
-
437
- return fn->autorelease ? Qtrue : Qfalse;
438
- }
439
-
440
- /*
441
- * call-seq: free
442
- * @return [self]
443
- * Free memory allocated by Function.
444
- */
445
- static VALUE
446
- function_release(VALUE self)
447
- {
448
- Function* fn;
449
-
450
- Data_Get_Struct(self, Function, fn);
451
-
452
- if (fn->closure == NULL) {
453
- rb_raise(rb_eRuntimeError, "cannot free function which was not allocated");
454
- }
455
-
456
- rbffi_Closure_Free(fn->closure);
457
- fn->closure = NULL;
458
-
459
- return self;
460
- }
461
-
462
- static void
463
- callback_invoke(ffi_cif* cif, void* retval, void** parameters, void* user_data)
464
- {
465
- struct gvl_callback cb = { 0 };
466
-
467
- cb.closure = (Closure *) user_data;
468
- cb.retval = retval;
469
- cb.parameters = parameters;
470
- cb.done = false;
471
- cb.frame = rbffi_frame_current();
472
-
473
- if (cb.frame != NULL) cb.frame->exc = Qnil;
474
- if (cb.frame != NULL && cb.frame->has_gvl) {
475
- callback_with_gvl(&cb);
476
-
477
- #if defined(HAVE_RB_THREAD_CALL_WITH_GVL)
478
- } else if (cb.frame != NULL) {
479
- rb_thread_call_with_gvl(callback_with_gvl, &cb);
480
- #endif
481
- #if defined(DEFER_ASYNC_CALLBACK) && !defined(_WIN32)
482
- } else {
483
- bool empty = false;
484
-
485
- pthread_mutex_init(&cb.async_mutex, NULL);
486
- pthread_cond_init(&cb.async_cond, NULL);
487
-
488
- /* Now signal the async callback thread */
489
- pthread_mutex_lock(&async_cb_mutex);
490
- empty = async_cb_list == NULL;
491
- cb.next = async_cb_list;
492
- async_cb_list = &cb;
493
-
494
- #if !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL))
495
- pthread_mutex_unlock(&async_cb_mutex);
496
- /* Only signal if the list was empty */
497
- if (empty) {
498
- char c;
499
- write(async_cb_pipe[1], &c, 1);
500
- }
501
- #else
502
- pthread_cond_signal(&async_cb_cond);
503
- pthread_mutex_unlock(&async_cb_mutex);
504
- #endif
505
-
506
- /* Wait for the thread executing the ruby callback to signal it is done */
507
- pthread_mutex_lock(&cb.async_mutex);
508
- while (!cb.done) {
509
- pthread_cond_wait(&cb.async_cond, &cb.async_mutex);
510
- }
511
- pthread_mutex_unlock(&cb.async_mutex);
512
- pthread_cond_destroy(&cb.async_cond);
513
- pthread_mutex_destroy(&cb.async_mutex);
514
-
515
- #elif defined(DEFER_ASYNC_CALLBACK) && defined(_WIN32)
516
- } else {
517
- bool empty = false;
518
-
519
- cb.async_event = CreateEvent(NULL, FALSE, FALSE, NULL);
520
-
521
- /* Now signal the async callback thread */
522
- EnterCriticalSection(&async_cb_lock);
523
- empty = async_cb_list == NULL;
524
- cb.next = async_cb_list;
525
- async_cb_list = &cb;
526
- LeaveCriticalSection(&async_cb_lock);
527
-
528
- #if !(defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL))
529
- /* Only signal if the list was empty */
530
- if (empty) {
531
- char c;
532
- write(async_cb_pipe[1], &c, 1);
533
- }
534
- #else
535
- SetEvent(async_cb_cond);
536
- #endif
537
-
538
- /* Wait for the thread executing the ruby callback to signal it is done */
539
- WaitForSingleObject(cb.async_event, INFINITE);
540
- CloseHandle(cb.async_event);
541
- #endif
542
- }
543
- }
544
-
545
- #if defined(DEFER_ASYNC_CALLBACK)
546
- struct async_wait {
547
- void* cb;
548
- bool stop;
549
- };
550
-
551
- static VALUE async_cb_wait(void *);
552
- static void async_cb_stop(void *);
553
-
554
- #if defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)
555
- static VALUE
556
- async_cb_event(void* unused)
557
- {
558
- struct async_wait w = { 0 };
559
-
560
- w.stop = false;
561
- while (!w.stop) {
562
- #if defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)
563
- rb_thread_call_without_gvl(async_cb_wait, &w, async_cb_stop, &w);
564
- #else
565
- rb_thread_blocking_region(async_cb_wait, &w, async_cb_stop, &w);
566
- #endif
567
- if (w.cb != NULL) {
568
- /* Start up a new ruby thread to run the ruby callback */
569
- rb_thread_create(async_cb_call, w.cb);
570
- }
571
- }
572
-
573
- return Qnil;
574
- }
575
-
576
- #elif defined(_WIN32)
577
- static VALUE
578
- async_cb_event(void* unused)
579
- {
580
- while (true) {
581
- struct gvl_callback* cb;
582
- char buf[64];
583
- fd_set rfds;
584
-
585
- FD_ZERO(&rfds);
586
- FD_SET(async_cb_pipe[0], &rfds);
587
- rb_thread_select(async_cb_pipe[0] + 1, &rfds, NULL, NULL, NULL);
588
- read(async_cb_pipe[0], buf, sizeof(buf));
589
-
590
- EnterCriticalSection(&async_cb_lock);
591
- cb = async_cb_list;
592
- async_cb_list = NULL;
593
- LeaveCriticalSection(&async_cb_lock);
594
-
595
- while (cb != NULL) {
596
- struct gvl_callback* next = cb->next;
597
- /* Start up a new ruby thread to run the ruby callback */
598
- rb_thread_create(async_cb_call, cb);
599
- cb = next;
600
- }
601
- }
602
-
603
- return Qnil;
604
- }
605
- #else
606
- static VALUE
607
- async_cb_event(void* unused)
608
- {
609
- while (true) {
610
- struct gvl_callback* cb;
611
- char buf[64];
612
-
613
- if (read(async_cb_pipe[0], buf, sizeof(buf)) < 0) {
614
- rb_thread_wait_fd(async_cb_pipe[0]);
615
- while (read(async_cb_pipe[0], buf, sizeof (buf)) < 0) {
616
- if (rb_io_wait_readable(async_cb_pipe[0]) != Qtrue) {
617
- return Qfalse;
618
- }
619
- }
620
- }
621
-
622
- pthread_mutex_lock(&async_cb_mutex);
623
- cb = async_cb_list;
624
- async_cb_list = NULL;
625
- pthread_mutex_unlock(&async_cb_mutex);
626
-
627
- while (cb != NULL) {
628
- struct gvl_callback* next = cb->next;
629
- /* Start up a new ruby thread to run the ruby callback */
630
- rb_thread_create(async_cb_call, cb);
631
- cb = next;
632
- }
633
- }
634
-
635
- return Qnil;
636
- }
637
- #endif
638
-
639
- #ifdef _WIN32
640
- static VALUE
641
- async_cb_wait(void *data)
642
- {
643
- struct async_wait* w = (struct async_wait *) data;
644
-
645
- w->cb = NULL;
646
-
647
- EnterCriticalSection(&async_cb_lock);
648
-
649
- while (!w->stop && async_cb_list == NULL) {
650
- LeaveCriticalSection(&async_cb_lock);
651
- WaitForSingleObject(async_cb_cond, INFINITE);
652
- EnterCriticalSection(&async_cb_lock);
653
- }
654
-
655
- if (async_cb_list != NULL) {
656
- w->cb = async_cb_list;
657
- async_cb_list = async_cb_list->next;
658
- }
659
-
660
- LeaveCriticalSection(&async_cb_lock);
661
-
662
- return Qnil;
663
- }
664
-
665
- static void
666
- async_cb_stop(void *data)
667
- {
668
- struct async_wait* w = (struct async_wait *) data;
669
-
670
- EnterCriticalSection(&async_cb_lock);
671
- w->stop = true;
672
- LeaveCriticalSection(&async_cb_lock);
673
- SetEvent(async_cb_cond);
674
- }
675
-
676
- #else
677
- static VALUE
678
- async_cb_wait(void *data)
679
- {
680
- struct async_wait* w = (struct async_wait *) data;
681
-
682
- w->cb = NULL;
683
-
684
- pthread_mutex_lock(&async_cb_mutex);
685
-
686
- while (!w->stop && async_cb_list == NULL) {
687
- pthread_cond_wait(&async_cb_cond, &async_cb_mutex);
688
- }
689
-
690
- if (async_cb_list != NULL) {
691
- w->cb = async_cb_list;
692
- async_cb_list = async_cb_list->next;
693
- }
694
-
695
- pthread_mutex_unlock(&async_cb_mutex);
696
-
697
- return Qnil;
698
- }
699
-
700
- static void
701
- async_cb_stop(void *data)
702
- {
703
- struct async_wait* w = (struct async_wait *) data;
704
-
705
- pthread_mutex_lock(&async_cb_mutex);
706
- w->stop = true;
707
- pthread_cond_signal(&async_cb_cond);
708
- pthread_mutex_unlock(&async_cb_mutex);
709
- }
710
- #endif
711
-
712
- static VALUE
713
- async_cb_call(void *data)
714
- {
715
- struct gvl_callback* cb = (struct gvl_callback *) data;
716
-
717
- callback_with_gvl(data);
718
-
719
- /* Signal the original native thread that the ruby code has completed */
720
- #ifdef _WIN32
721
- SetEvent(cb->async_event);
722
- #else
723
- pthread_mutex_lock(&cb->async_mutex);
724
- cb->done = true;
725
- pthread_cond_signal(&cb->async_cond);
726
- pthread_mutex_unlock(&cb->async_mutex);
727
- #endif
728
-
729
- return Qnil;
730
- }
731
-
732
- #endif
733
-
734
- static void *
735
- callback_with_gvl(void* data)
736
- {
737
- rb_rescue2(invoke_callback, (VALUE) data, save_callback_exception, (VALUE) data, rb_eException, (VALUE) 0);
738
- return NULL;
739
- }
740
-
741
- static VALUE
742
- invoke_callback(void* data)
743
- {
744
- struct gvl_callback* cb = (struct gvl_callback *) data;
745
-
746
- Function* fn = (Function *) cb->closure->info;
747
- FunctionType *cbInfo = fn->info;
748
- Type* returnType = cbInfo->returnType;
749
- void* retval = cb->retval;
750
- void** parameters = cb->parameters;
751
- VALUE* rbParams;
752
- VALUE rbReturnType = cbInfo->rbReturnType;
753
- VALUE rbReturnValue;
754
- int i;
755
-
756
- rbParams = ALLOCA_N(VALUE, cbInfo->parameterCount);
757
- for (i = 0; i < cbInfo->parameterCount; ++i) {
758
- VALUE param;
759
- Type* paramType = cbInfo->parameterTypes[i];
760
- VALUE rbParamType = rb_ary_entry(cbInfo->rbParameterTypes, i);
761
-
762
- if (unlikely(paramType->nativeType == NATIVE_MAPPED)) {
763
- rbParamType = ((MappedType *) paramType)->rbType;
764
- paramType = ((MappedType *) paramType)->type;
765
- }
766
-
767
- switch (paramType->nativeType) {
768
- case NATIVE_INT8:
769
- param = INT2NUM(*(int8_t *) parameters[i]);
770
- break;
771
- case NATIVE_UINT8:
772
- param = UINT2NUM(*(uint8_t *) parameters[i]);
773
- break;
774
- case NATIVE_INT16:
775
- param = INT2NUM(*(int16_t *) parameters[i]);
776
- break;
777
- case NATIVE_UINT16:
778
- param = UINT2NUM(*(uint16_t *) parameters[i]);
779
- break;
780
- case NATIVE_INT32:
781
- param = INT2NUM(*(int32_t *) parameters[i]);
782
- break;
783
- case NATIVE_UINT32:
784
- param = UINT2NUM(*(uint32_t *) parameters[i]);
785
- break;
786
- case NATIVE_INT64:
787
- param = LL2NUM(*(int64_t *) parameters[i]);
788
- break;
789
- case NATIVE_UINT64:
790
- param = ULL2NUM(*(uint64_t *) parameters[i]);
791
- break;
792
- case NATIVE_LONG:
793
- param = LONG2NUM(*(long *) parameters[i]);
794
- break;
795
- case NATIVE_ULONG:
796
- param = ULONG2NUM(*(unsigned long *) parameters[i]);
797
- break;
798
- case NATIVE_FLOAT32:
799
- param = rb_float_new(*(float *) parameters[i]);
800
- break;
801
- case NATIVE_FLOAT64:
802
- param = rb_float_new(*(double *) parameters[i]);
803
- break;
804
- case NATIVE_LONGDOUBLE:
805
- param = rbffi_longdouble_new(*(long double *) parameters[i]);
806
- break;
807
- case NATIVE_STRING:
808
- param = (*(void **) parameters[i] != NULL) ? rb_tainted_str_new2(*(char **) parameters[i]) : Qnil;
809
- break;
810
- case NATIVE_POINTER:
811
- param = rbffi_Pointer_NewInstance(*(void **) parameters[i]);
812
- break;
813
- case NATIVE_BOOL:
814
- param = (*(uint8_t *) parameters[i]) ? Qtrue : Qfalse;
815
- break;
816
-
817
- case NATIVE_FUNCTION:
818
- case NATIVE_CALLBACK:
819
- case NATIVE_STRUCT:
820
- param = rbffi_NativeValue_ToRuby(paramType, rbParamType, parameters[i]);
821
- break;
822
-
823
- default:
824
- param = Qnil;
825
- break;
826
- }
827
-
828
- /* Convert the native value into a custom ruby value */
829
- if (unlikely(cbInfo->parameterTypes[i]->nativeType == NATIVE_MAPPED)) {
830
- VALUE values[] = { param, Qnil };
831
- param = rb_funcall2(((MappedType *) cbInfo->parameterTypes[i])->rbConverter, id_from_native, 2, values);
832
- }
833
-
834
- rbParams[i] = param;
835
- }
836
-
837
- rbReturnValue = rb_funcall2(fn->rbProc, id_call, cbInfo->parameterCount, rbParams);
838
- RB_GC_GUARD_PTR(rbParams);
839
-
840
- if (unlikely(returnType->nativeType == NATIVE_MAPPED)) {
841
- VALUE values[] = { rbReturnValue, Qnil };
842
- rbReturnValue = rb_funcall2(((MappedType *) returnType)->rbConverter, id_to_native, 2, values);
843
- rbReturnType = ((MappedType *) returnType)->rbType;
844
- returnType = ((MappedType* ) returnType)->type;
845
- }
846
-
847
- if (rbReturnValue == Qnil || TYPE(rbReturnValue) == T_NIL) {
848
- memset(retval, 0, returnType->ffiType->size);
849
- } else switch (returnType->nativeType) {
850
- case NATIVE_INT8:
851
- case NATIVE_INT16:
852
- case NATIVE_INT32:
853
- *((ffi_sarg *) retval) = NUM2INT(rbReturnValue);
854
- break;
855
- case NATIVE_UINT8:
856
- case NATIVE_UINT16:
857
- case NATIVE_UINT32:
858
- *((ffi_arg *) retval) = NUM2UINT(rbReturnValue);
859
- break;
860
- case NATIVE_INT64:
861
- *((int64_t *) retval) = NUM2LL(rbReturnValue);
862
- break;
863
- case NATIVE_UINT64:
864
- *((uint64_t *) retval) = NUM2ULL(rbReturnValue);
865
- break;
866
- case NATIVE_LONG:
867
- *((ffi_sarg *) retval) = NUM2LONG(rbReturnValue);
868
- break;
869
- case NATIVE_ULONG:
870
- *((ffi_arg *) retval) = NUM2ULONG(rbReturnValue);
871
- break;
872
- case NATIVE_FLOAT32:
873
- *((float *) retval) = (float) NUM2DBL(rbReturnValue);
874
- break;
875
- case NATIVE_FLOAT64:
876
- *((double *) retval) = NUM2DBL(rbReturnValue);
877
- break;
878
- case NATIVE_POINTER:
879
- if (TYPE(rbReturnValue) == T_DATA && rb_obj_is_kind_of(rbReturnValue, rbffi_PointerClass)) {
880
- *((void **) retval) = ((AbstractMemory *) DATA_PTR(rbReturnValue))->address;
881
- } else {
882
- /* Default to returning NULL if not a value pointer object. handles nil case as well */
883
- *((void **) retval) = NULL;
884
- }
885
- break;
886
-
887
- case NATIVE_BOOL:
888
- *((ffi_arg *) retval) = rbReturnValue == Qtrue;
889
- break;
890
-
891
- case NATIVE_FUNCTION:
892
- case NATIVE_CALLBACK:
893
- if (TYPE(rbReturnValue) == T_DATA && rb_obj_is_kind_of(rbReturnValue, rbffi_PointerClass)) {
894
-
895
- *((void **) retval) = ((AbstractMemory *) DATA_PTR(rbReturnValue))->address;
896
-
897
- } else if (rb_obj_is_kind_of(rbReturnValue, rb_cProc) || rb_respond_to(rbReturnValue, id_call)) {
898
- VALUE function;
899
-
900
- function = rbffi_Function_ForProc(rbReturnType, rbReturnValue);
901
-
902
- *((void **) retval) = ((AbstractMemory *) DATA_PTR(function))->address;
903
- } else {
904
- *((void **) retval) = NULL;
905
- }
906
- break;
907
-
908
- case NATIVE_STRUCT:
909
- if (TYPE(rbReturnValue) == T_DATA && rb_obj_is_kind_of(rbReturnValue, rbffi_StructClass)) {
910
- AbstractMemory* memory = ((Struct *) DATA_PTR(rbReturnValue))->pointer;
911
-
912
- if (memory->address != NULL) {
913
- memcpy(retval, memory->address, returnType->ffiType->size);
914
-
915
- } else {
916
- memset(retval, 0, returnType->ffiType->size);
917
- }
918
-
919
- } else {
920
- memset(retval, 0, returnType->ffiType->size);
921
- }
922
- break;
923
-
924
- default:
925
- *((ffi_arg *) retval) = 0;
926
- break;
927
- }
928
-
929
- return Qnil;
930
- }
931
-
932
- static VALUE
933
- save_callback_exception(void* data, VALUE exc)
934
- {
935
- struct gvl_callback* cb = (struct gvl_callback *) data;
936
-
937
- memset(cb->retval, 0, ((Function *) cb->closure->info)->info->returnType->ffiType->size);
938
- if (cb->frame != NULL) cb->frame->exc = exc;
939
-
940
- return Qnil;
941
- }
942
-
943
- static bool
944
- callback_prep(void* ctx, void* code, Closure* closure, char* errmsg, size_t errmsgsize)
945
- {
946
- FunctionType* fnInfo = (FunctionType *) ctx;
947
- ffi_status ffiStatus;
948
-
949
- ffiStatus = ffi_prep_closure(code, &fnInfo->ffi_cif, callback_invoke, closure);
950
- if (ffiStatus != FFI_OK) {
951
- snprintf(errmsg, errmsgsize, "ffi_prep_closure failed. status=%#x", ffiStatus);
952
- return false;
953
- }
954
-
955
- return true;
956
- }
957
-
958
- void
959
- rbffi_Function_Init(VALUE moduleFFI)
960
- {
961
- rbffi_FunctionInfo_Init(moduleFFI);
962
- /*
963
- * Document-class: FFI::Function < FFI::Pointer
964
- */
965
- rbffi_FunctionClass = rb_define_class_under(moduleFFI, "Function", rbffi_PointerClass);
966
-
967
- rb_global_variable(&rbffi_FunctionClass);
968
- rb_define_alloc_func(rbffi_FunctionClass, function_allocate);
969
-
970
- rb_define_method(rbffi_FunctionClass, "initialize", function_initialize, -1);
971
- rb_define_method(rbffi_FunctionClass, "initialize_copy", function_initialize_copy, 1);
972
- rb_define_method(rbffi_FunctionClass, "call", function_call, -1);
973
- rb_define_method(rbffi_FunctionClass, "attach", function_attach, 2);
974
- rb_define_method(rbffi_FunctionClass, "free", function_release, 0);
975
- rb_define_method(rbffi_FunctionClass, "autorelease=", function_set_autorelease, 1);
976
- /*
977
- * call-seq: autorelease
978
- * @return [Boolean]
979
- * Get +autorelease+ attribute.
980
- * Synonymous for {#autorelease?}.
981
- */
982
- rb_define_method(rbffi_FunctionClass, "autorelease", function_autorelease_p, 0);
983
- /*
984
- * call-seq: autorelease?
985
- * @return [Boolean] +autorelease+ attribute
986
- * Get +autorelease+ attribute.
987
- */
988
- rb_define_method(rbffi_FunctionClass, "autorelease?", function_autorelease_p, 0);
989
-
990
- id_call = rb_intern("call");
991
- id_cbtable = rb_intern("@__ffi_callback_table__");
992
- id_cb_ref = rb_intern("@__ffi_callback__");
993
- id_to_native = rb_intern("to_native");
994
- id_from_native = rb_intern("from_native");
995
- #if defined(_WIN32)
996
- InitializeCriticalSection(&async_cb_lock);
997
- async_cb_cond = CreateEvent(NULL, FALSE, FALSE, NULL);
998
- #endif
999
- }
1000
-