dwolla_swagger 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1715) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +66 -0
  4. data/lib/dwolla_swagger/api/fundingsources_api.rb +8 -4
  5. data/lib/dwolla_swagger/models/micro_deposits.rb +46 -0
  6. data/lib/dwolla_swagger/swagger/version.rb +1 -1
  7. data/lib/dwolla_swagger.rb +10 -9
  8. data/vendor/bundle/ruby/2.2.0/bin/autotest +23 -0
  9. data/vendor/bundle/ruby/2.2.0/bin/htmldiff +25 -0
  10. data/vendor/bundle/ruby/2.2.0/bin/ldiff +25 -0
  11. data/vendor/bundle/ruby/2.2.0/bin/multigem +25 -0
  12. data/vendor/bundle/ruby/2.2.0/bin/multiruby +25 -0
  13. data/vendor/bundle/ruby/2.2.0/bin/multiruby_setup +25 -0
  14. data/vendor/bundle/ruby/2.2.0/bin/rspec +23 -0
  15. data/vendor/bundle/ruby/2.2.0/bin/safe_yaml +23 -0
  16. data/vendor/bundle/ruby/2.2.0/bin/unit_diff +25 -0
  17. data/vendor/bundle/ruby/2.2.0/bin/zentest +25 -0
  18. data/vendor/bundle/ruby/2.2.0/cache/ZenTest-4.11.0.gem +0 -0
  19. data/vendor/bundle/ruby/2.2.0/cache/addressable-2.4.0.gem +0 -0
  20. data/vendor/bundle/ruby/2.2.0/cache/autotest-4.4.6.gem +0 -0
  21. data/vendor/bundle/ruby/2.2.0/cache/autotest-fsevent-0.2.11.gem +0 -0
  22. data/vendor/bundle/ruby/2.2.0/cache/autotest-growl-0.2.16.gem +0 -0
  23. data/vendor/bundle/ruby/2.2.0/cache/autotest-rails-pure-4.1.2.gem +0 -0
  24. data/vendor/bundle/ruby/2.2.0/cache/crack-0.4.3.gem +0 -0
  25. data/vendor/bundle/ruby/2.2.0/cache/diff-lcs-1.2.5.gem +0 -0
  26. data/vendor/bundle/ruby/2.2.0/cache/ethon-0.8.0.gem +0 -0
  27. data/vendor/bundle/ruby/2.2.0/cache/ffi-1.9.10.gem +0 -0
  28. data/vendor/bundle/ruby/2.2.0/cache/hashdiff-0.2.3.gem +0 -0
  29. data/vendor/bundle/ruby/2.2.0/cache/json-1.8.3.gem +0 -0
  30. data/vendor/bundle/ruby/2.2.0/cache/rspec-3.4.0.gem +0 -0
  31. data/vendor/bundle/ruby/2.2.0/cache/rspec-core-3.4.1.gem +0 -0
  32. data/vendor/bundle/ruby/2.2.0/cache/rspec-expectations-3.4.0.gem +0 -0
  33. data/vendor/bundle/ruby/2.2.0/cache/rspec-mocks-3.4.0.gem +0 -0
  34. data/vendor/bundle/ruby/2.2.0/cache/rspec-support-3.4.1.gem +0 -0
  35. data/vendor/bundle/ruby/2.2.0/cache/safe_yaml-1.0.4.gem +0 -0
  36. data/vendor/bundle/ruby/2.2.0/cache/sys-uname-1.0.2.gem +0 -0
  37. data/vendor/bundle/ruby/2.2.0/cache/typhoeus-0.8.0.gem +0 -0
  38. data/vendor/bundle/ruby/2.2.0/cache/vcr-2.9.3.gem +0 -0
  39. data/vendor/bundle/ruby/2.2.0/cache/webmock-1.22.3.gem +0 -0
  40. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/autotest-fsevent-0.2.11/gem.build_complete +0 -0
  41. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/autotest-fsevent-0.2.11/gem_make.out +10 -0
  42. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/ffi-1.9.10/ffi_c.bundle +0 -0
  43. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/ffi-1.9.10/gem.build_complete +0 -0
  44. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/ffi-1.9.10/gem_make.out +143 -0
  45. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/ffi-1.9.10/mkmf.log +281 -0
  46. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/json-1.8.3/gem.build_complete +0 -0
  47. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/json-1.8.3/gem_make.out +9 -0
  48. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/json-1.8.3/json/ext/generator.bundle +0 -0
  49. data/vendor/bundle/ruby/2.2.0/extensions/x86_64-darwin-14/2.2.0/json-1.8.3/json/ext/parser.bundle +0 -0
  50. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/.autotest +20 -0
  51. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/.gemtest +0 -0
  52. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/History.txt +927 -0
  53. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/Manifest.txt +38 -0
  54. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/README.txt +160 -0
  55. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/Rakefile +54 -0
  56. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/articles/Article.css +721 -0
  57. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/articles/getting_started_with_autotest.html +533 -0
  58. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/articles/how_to_use_zentest.txt +393 -0
  59. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/autotest +6 -0
  60. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/multigem +4 -0
  61. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/multiruby +76 -0
  62. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/multiruby_setup +74 -0
  63. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/unit_diff +38 -0
  64. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/bin/zentest +23 -0
  65. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/example.txt +42 -0
  66. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/example1.rb +7 -0
  67. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/example2.rb +15 -0
  68. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/example_dot_autotest.rb +16 -0
  69. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/autoupdate.rb +26 -0
  70. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/bundler.rb +10 -0
  71. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/isolate.rb +19 -0
  72. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/once.rb +9 -0
  73. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/preload.rb +56 -0
  74. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/rcov.rb +27 -0
  75. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/restart.rb +16 -0
  76. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest/timestamp.rb +9 -0
  77. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/autotest.rb +901 -0
  78. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/focus.rb +26 -0
  79. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/functional_test_matrix.rb +92 -0
  80. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/multiruby.rb +413 -0
  81. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/unit_diff.rb +274 -0
  82. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/zentest.rb +601 -0
  83. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/lib/zentest_mapping.rb +117 -0
  84. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/test/test_autotest.rb +560 -0
  85. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/test/test_focus.rb +35 -0
  86. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/test/test_unit_diff.rb +372 -0
  87. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/test/test_zentest.rb +572 -0
  88. data/vendor/bundle/ruby/2.2.0/gems/ZenTest-4.11.0/test/test_zentest_mapping.rb +242 -0
  89. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/CHANGELOG.md +192 -0
  90. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/Gemfile +27 -0
  91. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/LICENSE.txt +202 -0
  92. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/README.md +105 -0
  93. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/Rakefile +32 -0
  94. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/addressable.gemspec +34 -0
  95. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/data/unicode.data +0 -0
  96. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/idna/native.rb +55 -0
  97. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/idna/pure.rb +672 -0
  98. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/idna.rb +25 -0
  99. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/template.rb +1051 -0
  100. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/uri.rb +2424 -0
  101. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable/version.rb +30 -0
  102. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/lib/addressable.rb +2 -0
  103. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/idna_spec.rb +270 -0
  104. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/net_http_compat_spec.rb +28 -0
  105. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/rack_mount_compat_spec.rb +104 -0
  106. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/security_spec.rb +57 -0
  107. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/template_spec.rb +1386 -0
  108. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/addressable/uri_spec.rb +6205 -0
  109. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/spec/spec_helper.rb +21 -0
  110. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/clobber.rake +2 -0
  111. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/gem.rake +97 -0
  112. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/git.rake +45 -0
  113. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/metrics.rake +22 -0
  114. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/rspec.rake +21 -0
  115. data/vendor/bundle/ruby/2.2.0/gems/addressable-2.4.0/tasks/yard.rake +27 -0
  116. data/vendor/bundle/ruby/2.2.0/gems/autotest-4.4.6/History.txt +4 -0
  117. data/vendor/bundle/ruby/2.2.0/gems/autotest-4.4.6/Manifest.txt +4 -0
  118. data/vendor/bundle/ruby/2.2.0/gems/autotest-4.4.6/README.txt +43 -0
  119. data/vendor/bundle/ruby/2.2.0/gems/autotest-4.4.6/Rakefile +17 -0
  120. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/.gitignore +5 -0
  121. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/.ruby-version +1 -0
  122. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/CHANGELOG.txt +91 -0
  123. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/Gemfile +4 -0
  124. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/Gemfile.lock +35 -0
  125. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/LICENSE +20 -0
  126. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/PostInstall.txt +14 -0
  127. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/README.rdoc +152 -0
  128. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/Rakefile +7 -0
  129. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/autotest-fsevent.gemspec +28 -0
  130. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/bin/fsevent_sleep +0 -0
  131. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/Makefile +4 -0
  132. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/extconf.rb +41 -0
  133. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/fsevent.dll +0 -0
  134. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/fsevent.so +0 -0
  135. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/fsevent_sleep.c +43 -0
  136. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/make +1 -0
  137. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/ext/fsevent/nmake.bat +0 -0
  138. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/lib/autotest/fsevent.rb +38 -0
  139. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/lib/autotest-fsevent/version.rb +5 -0
  140. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/lib/autotest-fsevent.rb +4 -0
  141. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/prebuilt/10.7/fsevent_sleep +0 -0
  142. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/spec/autotest-fsevent_spec.rb +1 -0
  143. data/vendor/bundle/ruby/2.2.0/gems/autotest-fsevent-0.2.11/spec/spec_helper.rb +8 -0
  144. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/.gitignore +5 -0
  145. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/.rvmrc +1 -0
  146. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/CHANGELOG.txt +140 -0
  147. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/Gemfile +4 -0
  148. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/Gemfile.lock +28 -0
  149. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/LICENSE +20 -0
  150. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/PostInstall.txt +26 -0
  151. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/README.rdoc +268 -0
  152. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/Rakefile +7 -0
  153. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/autotest-growl.gemspec +26 -0
  154. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/growl/growlnotify +19 -0
  155. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/growl/growlnotify-1.1.5 +0 -0
  156. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/growl/growlnotify-1.3 +0 -0
  157. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/growl/growlnotify.com +0 -0
  158. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ampelmaennchen/error.png +0 -0
  159. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ampelmaennchen/failed.png +0 -0
  160. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ampelmaennchen/info.png +0 -0
  161. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ampelmaennchen/passed.png +0 -0
  162. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ampelmaennchen/pending.png +0 -0
  163. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ruby/error.png +0 -0
  164. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ruby/failed.png +0 -0
  165. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ruby/info.png +0 -0
  166. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ruby/passed.png +0 -0
  167. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/img/ruby/pending.png +0 -0
  168. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/lib/autotest/growl.rb +199 -0
  169. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/lib/autotest/result.rb +64 -0
  170. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/lib/autotest-growl/version.rb +5 -0
  171. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/lib/autotest-growl.rb +4 -0
  172. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/spec/autotest-growl_spec.rb +79 -0
  173. data/vendor/bundle/ruby/2.2.0/gems/autotest-growl-0.2.16/spec/spec_helper.rb +14 -0
  174. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/.autotest +23 -0
  175. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/History.txt +2 -0
  176. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/Rakefile +21 -0
  177. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/Readme.md +48 -0
  178. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/VERSION +1 -0
  179. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/autotest-rails-pure.gemspec +45 -0
  180. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/lib/autotest/discover.rb +5 -0
  181. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/lib/autotest/fixtures.rb +12 -0
  182. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/lib/autotest/migrate.rb +7 -0
  183. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/lib/autotest/rails.rb +100 -0
  184. data/vendor/bundle/ruby/2.2.0/gems/autotest-rails-pure-4.1.2/test/rails_test.rb +30 -0
  185. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/.gitignore +8 -0
  186. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/.travis.yml +14 -0
  187. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/Gemfile +5 -0
  188. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/History +25 -0
  189. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/LICENSE +20 -0
  190. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/README.md +46 -0
  191. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/crack.gemspec +20 -0
  192. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/lib/crack/json.rb +111 -0
  193. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/lib/crack/util.rb +17 -0
  194. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/lib/crack/version.rb +3 -0
  195. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/lib/crack/xml.rb +238 -0
  196. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/lib/crack.rb +7 -0
  197. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/script/bootstrap +21 -0
  198. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/script/release +42 -0
  199. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/script/test +25 -0
  200. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/data/large_dataset.json +139988 -0
  201. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/data/twittersearch-firefox.json +1 -0
  202. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/data/twittersearch-ie.json +1 -0
  203. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/hash_test.rb +26 -0
  204. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/json_test.rb +91 -0
  205. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/parser_test.rb +27 -0
  206. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/string_test.rb +31 -0
  207. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/test_helper.rb +3 -0
  208. data/vendor/bundle/ruby/2.2.0/gems/crack-0.4.3/test/xml_test.rb +514 -0
  209. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/.autotest +3 -0
  210. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/.gemtest +0 -0
  211. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/.hoerc +2 -0
  212. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/.rspec +2 -0
  213. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/.travis.yml +22 -0
  214. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/Contributing.rdoc +64 -0
  215. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/Gemfile +20 -0
  216. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/History.rdoc +152 -0
  217. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/License.rdoc +39 -0
  218. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/Manifest.txt +38 -0
  219. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/README.rdoc +85 -0
  220. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/Rakefile +41 -0
  221. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/autotest/discover.rb +1 -0
  222. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/bin/htmldiff +32 -0
  223. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/bin/ldiff +6 -0
  224. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/docs/COPYING.txt +339 -0
  225. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/docs/artistic.txt +127 -0
  226. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/array.rb +7 -0
  227. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/block.rb +37 -0
  228. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +322 -0
  229. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/change.rb +177 -0
  230. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +149 -0
  231. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +276 -0
  232. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +301 -0
  233. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +195 -0
  234. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs/string.rb +5 -0
  235. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff/lcs.rb +805 -0
  236. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/lib/diff-lcs.rb +3 -0
  237. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/change_spec.rb +65 -0
  238. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/diff_spec.rb +47 -0
  239. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/hunk_spec.rb +72 -0
  240. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/issues_spec.rb +24 -0
  241. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/lcs_spec.rb +54 -0
  242. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/patch_spec.rb +414 -0
  243. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/sdiff_spec.rb +214 -0
  244. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/spec_helper.rb +290 -0
  245. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +310 -0
  246. data/vendor/bundle/ruby/2.2.0/gems/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +139 -0
  247. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/.gitignore +7 -0
  248. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/.rspec +3 -0
  249. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/.travis.yml +18 -0
  250. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/CHANGELOG.md +325 -0
  251. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/Gemfile +22 -0
  252. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/Guardfile +9 -0
  253. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/LICENSE +20 -0
  254. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/README.md +96 -0
  255. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/Rakefile +39 -0
  256. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/ethon.gemspec +25 -0
  257. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curl.rb +89 -0
  258. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/classes.rb +54 -0
  259. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/codes.rb +122 -0
  260. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/constants.rb +62 -0
  261. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/form_options.rb +36 -0
  262. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/functions.rb +64 -0
  263. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/infos.rb +174 -0
  264. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/messages.rb +18 -0
  265. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/options.rb +452 -0
  266. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/curls/settings.rb +8 -0
  267. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/callbacks.rb +129 -0
  268. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/debug_info.rb +46 -0
  269. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/features.rb +30 -0
  270. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/form.rb +104 -0
  271. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/header.rb +60 -0
  272. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/actionable.rb +147 -0
  273. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/custom.rb +28 -0
  274. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/delete.rb +24 -0
  275. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/get.rb +23 -0
  276. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/head.rb +23 -0
  277. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/options.rb +23 -0
  278. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/patch.rb +23 -0
  279. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/post.rb +25 -0
  280. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/postable.rb +31 -0
  281. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/put.rb +26 -0
  282. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http/putable.rb +24 -0
  283. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/http.rb +67 -0
  284. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/informations.rb +94 -0
  285. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/mirror.rb +39 -0
  286. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/operations.rb +55 -0
  287. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/options.rb +34 -0
  288. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/params.rb +28 -0
  289. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/queryable.rb +142 -0
  290. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/response_callbacks.rb +101 -0
  291. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy/util.rb +27 -0
  292. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/easy.rb +301 -0
  293. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/ethon_error.rb +8 -0
  294. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/global_init.rb +12 -0
  295. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/invalid_option.rb +12 -0
  296. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/invalid_value.rb +12 -0
  297. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/multi_add.rb +11 -0
  298. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/multi_fdset.rb +11 -0
  299. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/multi_remove.rb +11 -0
  300. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/multi_timeout.rb +12 -0
  301. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors/select.rb +12 -0
  302. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/errors.rb +16 -0
  303. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/libc.rb +20 -0
  304. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/loggable.rb +58 -0
  305. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/multi/operations.rb +190 -0
  306. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/multi/options.rb +116 -0
  307. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/multi/stack.rb +48 -0
  308. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/multi.rb +103 -0
  309. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon/version.rb +5 -0
  310. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/lib/ethon.rb +31 -0
  311. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/benchmarks.rb +137 -0
  312. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/memory_leaks.rb +113 -0
  313. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/perf_spec_helper.rb +36 -0
  314. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/support/memory_test_helpers.rb +75 -0
  315. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/support/os_memory_leak_tracker.rb +47 -0
  316. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/profile/support/ruby_object_leak_tracker.rb +48 -0
  317. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/curl_spec.rb +37 -0
  318. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/callbacks_spec.rb +52 -0
  319. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/debug_info_spec.rb +52 -0
  320. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/features_spec.rb +23 -0
  321. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/form_spec.rb +76 -0
  322. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/header_spec.rb +78 -0
  323. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/custom_spec.rb +176 -0
  324. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/delete_spec.rb +20 -0
  325. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/get_spec.rb +89 -0
  326. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/head_spec.rb +79 -0
  327. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/options_spec.rb +50 -0
  328. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/patch_spec.rb +50 -0
  329. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/post_spec.rb +280 -0
  330. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http/put_spec.rb +167 -0
  331. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/http_spec.rb +63 -0
  332. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/informations_spec.rb +97 -0
  333. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/mirror_spec.rb +45 -0
  334. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/operations_spec.rb +266 -0
  335. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/options_spec.rb +134 -0
  336. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/queryable_spec.rb +223 -0
  337. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/response_callbacks_spec.rb +95 -0
  338. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy/util_spec.rb +27 -0
  339. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/easy_spec.rb +114 -0
  340. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/libc_spec.rb +13 -0
  341. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/loggable_spec.rb +21 -0
  342. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/multi/operations_spec.rb +297 -0
  343. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/multi/options_spec.rb +68 -0
  344. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/multi/stack_spec.rb +79 -0
  345. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/ethon/multi_spec.rb +21 -0
  346. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/spec_helper.rb +27 -0
  347. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/support/localhost_server.rb +94 -0
  348. data/vendor/bundle/ruby/2.2.0/gems/ethon-0.8.0/spec/support/server.rb +114 -0
  349. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/COPYING +49 -0
  350. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/LICENSE +24 -0
  351. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/README.md +109 -0
  352. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/Rakefile +210 -0
  353. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/.RUBYARCHDIR.time +0 -0
  354. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.c +1032 -0
  355. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.h +175 -0
  356. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/AbstractMemory.o +0 -0
  357. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.c +162 -0
  358. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.h +59 -0
  359. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ArrayType.o +0 -0
  360. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Buffer.c +365 -0
  361. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Buffer.o +0 -0
  362. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.c +530 -0
  363. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.h +93 -0
  364. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Call.o +0 -0
  365. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.c +283 -0
  366. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.h +57 -0
  367. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ClosurePool.o +0 -0
  368. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DataConverter.c +91 -0
  369. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DataConverter.o +0 -0
  370. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.c +337 -0
  371. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.h +98 -0
  372. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/DynamicLibrary.o +0 -0
  373. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.c +1000 -0
  374. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.h +87 -0
  375. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Function.o +0 -0
  376. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/FunctionInfo.c +271 -0
  377. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/FunctionInfo.o +0 -0
  378. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.c +184 -0
  379. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.h +47 -0
  380. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LastError.o +0 -0
  381. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.c +63 -0
  382. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.h +51 -0
  383. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/LongDouble.o +0 -0
  384. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Makefile +262 -0
  385. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.c +168 -0
  386. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.h +59 -0
  387. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MappedType.o +0 -0
  388. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.c +197 -0
  389. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.h +53 -0
  390. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MemoryPointer.o +0 -0
  391. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.c +360 -0
  392. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.h +55 -0
  393. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/MethodHandle.o +0 -0
  394. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.c +121 -0
  395. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.h +45 -0
  396. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Platform.o +0 -0
  397. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.c +508 -0
  398. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.h +63 -0
  399. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Pointer.o +0 -0
  400. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.c +829 -0
  401. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.h +106 -0
  402. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Struct.o +0 -0
  403. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.c +190 -0
  404. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.h +50 -0
  405. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByReference.o +0 -0
  406. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.c +150 -0
  407. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.h +55 -0
  408. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructByValue.o +0 -0
  409. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructLayout.c +698 -0
  410. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/StructLayout.o +0 -0
  411. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.c +352 -0
  412. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.h +95 -0
  413. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Thread.o +0 -0
  414. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.c +397 -0
  415. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.h +62 -0
  416. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Type.o +0 -0
  417. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.c +139 -0
  418. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.h +89 -0
  419. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Types.o +0 -0
  420. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Variadic.c +280 -0
  421. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/Variadic.o +0 -0
  422. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/compat.h +83 -0
  423. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/extconf.h +7 -0
  424. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/extconf.rb +65 -0
  425. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi.c +98 -0
  426. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi.o +0 -0
  427. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/ffi_c.bundle +0 -0
  428. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog +4600 -0
  429. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.libffi +584 -0
  430. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.libgcj +40 -0
  431. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ChangeLog.v1 +764 -0
  432. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/LICENSE +21 -0
  433. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.am +196 -0
  434. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.in +1820 -0
  435. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.vc +141 -0
  436. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/Makefile.vc64 +141 -0
  437. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/README +342 -0
  438. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/acinclude.m4 +92 -0
  439. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/aclocal.m4 +1873 -0
  440. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/build-ios.sh +67 -0
  441. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/compile +143 -0
  442. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/config.guess +1501 -0
  443. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/config.sub +1705 -0
  444. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure +17191 -0
  445. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure.ac +496 -0
  446. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/configure.host +11 -0
  447. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/depcomp +630 -0
  448. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/libffi.info +593 -0
  449. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/libffi.texi +600 -0
  450. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/stamp-vti +4 -0
  451. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/doc/version.texi +4 -0
  452. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/fficonfig.h.in +199 -0
  453. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/fficonfig.hw +57 -0
  454. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/Makefile.am +9 -0
  455. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/Makefile.in +487 -0
  456. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.in +427 -0
  457. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc +427 -0
  458. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc64 +427 -0
  459. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi_common.h +126 -0
  460. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/install-sh +520 -0
  461. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/libffi.pc.in +10 -0
  462. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/libtool-version +29 -0
  463. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/ltmain.sh +9636 -0
  464. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +176 -0
  465. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +195 -0
  466. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_check_compiler_flags.m4 +76 -0
  467. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +63 -0
  468. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_configure_args.m4 +70 -0
  469. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +300 -0
  470. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +215 -0
  471. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +79 -0
  472. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/libtool.m4 +7831 -0
  473. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltoptions.m4 +369 -0
  474. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltsugar.m4 +123 -0
  475. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/ltversion.m4 +23 -0
  476. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/m4/lt~obsolete.m4 +98 -0
  477. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/Makefile.am +8 -0
  478. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/Makefile.in +466 -0
  479. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi.3 +31 -0
  480. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi_call.3 +103 -0
  481. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/man/ffi_prep_cif.3 +66 -0
  482. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/mdate-sh +201 -0
  483. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/missing +376 -0
  484. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/msvcc.sh +197 -0
  485. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/ffi.c +284 -0
  486. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/ffitarget.h +48 -0
  487. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/alpha/osf.S +387 -0
  488. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/ffi.c +728 -0
  489. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/ffitarget.h +65 -0
  490. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/gentramp.sh +118 -0
  491. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/sysv.S +497 -0
  492. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/arm/trampoline.S +4450 -0
  493. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/ffi.c +423 -0
  494. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/ffitarget.h +50 -0
  495. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/avr32/sysv.S +208 -0
  496. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/closures.c +615 -0
  497. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/ffi.c +383 -0
  498. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/ffitarget.h +51 -0
  499. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/cris/sysv.S +215 -0
  500. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/debug.c +59 -0
  501. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/dlmalloc.c +5161 -0
  502. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/eabi.S +128 -0
  503. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/ffi.c +292 -0
  504. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/frv/ffitarget.h +57 -0
  505. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ffi.c +582 -0
  506. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ffitarget.h +50 -0
  507. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/ia64_flags.h +40 -0
  508. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/ia64/unix.S +560 -0
  509. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/java_raw_api.c +356 -0
  510. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/ffi.c +232 -0
  511. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/ffitarget.h +48 -0
  512. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m32r/sysv.S +121 -0
  513. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/ffi.c +288 -0
  514. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/ffitarget.h +49 -0
  515. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/m68k/sysv.S +270 -0
  516. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/ffi.c +1036 -0
  517. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/ffitarget.h +242 -0
  518. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/n32.S +591 -0
  519. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/mips/o32.S +381 -0
  520. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/moxie/eabi.S +128 -0
  521. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/moxie/ffi.c +276 -0
  522. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/ffi.c +719 -0
  523. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/ffitarget.h +78 -0
  524. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/hpux32.S +368 -0
  525. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/pa/linux.S +357 -0
  526. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/aix.S +328 -0
  527. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/aix_closure.S +445 -0
  528. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/asm.h +125 -0
  529. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/darwin.S +383 -0
  530. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +575 -0
  531. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffi.c +1448 -0
  532. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +1359 -0
  533. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ffitarget.h +139 -0
  534. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/linux64.S +187 -0
  535. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +236 -0
  536. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +327 -0
  537. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/powerpc/sysv.S +219 -0
  538. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/prep_cif.c +177 -0
  539. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/raw_api.c +254 -0
  540. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/ffi.c +780 -0
  541. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/ffitarget.h +62 -0
  542. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/s390/sysv.S +434 -0
  543. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/ffi.c +716 -0
  544. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/ffitarget.h +49 -0
  545. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh/sysv.S +850 -0
  546. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/ffi.c +468 -0
  547. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/ffitarget.h +53 -0
  548. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sh64/sysv.S +539 -0
  549. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/ffi.c +669 -0
  550. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/ffitarget.h +68 -0
  551. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/v8.S +313 -0
  552. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/sparc/v9.S +307 -0
  553. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/types.c +77 -0
  554. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/darwin.S +444 -0
  555. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/darwin64.S +416 -0
  556. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffi.c +644 -0
  557. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffi64.c +635 -0
  558. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/ffitarget.h +121 -0
  559. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/freebsd.S +458 -0
  560. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/sysv.S +468 -0
  561. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/unix64.S +426 -0
  562. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/win32.S +1065 -0
  563. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/src/x86/win64.S +468 -0
  564. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/Makefile.am +80 -0
  565. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/Makefile.in +500 -0
  566. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/config/default.exp +1 -0
  567. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +300 -0
  568. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/libffi.exp +350 -0
  569. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +263 -0
  570. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +45 -0
  571. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +32 -0
  572. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +89 -0
  573. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +81 -0
  574. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +81 -0
  575. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +82 -0
  576. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +89 -0
  577. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +92 -0
  578. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +90 -0
  579. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c +95 -0
  580. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c +64 -0
  581. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +94 -0
  582. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +95 -0
  583. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +96 -0
  584. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +102 -0
  585. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +89 -0
  586. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +91 -0
  587. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +93 -0
  588. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +113 -0
  589. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +90 -0
  590. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +95 -0
  591. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +90 -0
  592. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +90 -0
  593. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +98 -0
  594. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +90 -0
  595. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +109 -0
  596. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +98 -0
  597. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +124 -0
  598. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +113 -0
  599. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +99 -0
  600. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +117 -0
  601. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +97 -0
  602. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +88 -0
  603. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +90 -0
  604. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +91 -0
  605. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +93 -0
  606. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +91 -0
  607. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +92 -0
  608. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +134 -0
  609. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +117 -0
  610. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +95 -0
  611. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +91 -0
  612. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +91 -0
  613. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +92 -0
  614. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +91 -0
  615. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +91 -0
  616. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +93 -0
  617. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +66 -0
  618. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +43 -0
  619. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +60 -0
  620. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +42 -0
  621. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +105 -0
  622. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +60 -0
  623. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +74 -0
  624. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +74 -0
  625. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +86 -0
  626. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +91 -0
  627. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +74 -0
  628. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +86 -0
  629. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +74 -0
  630. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +140 -0
  631. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +44 -0
  632. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +42 -0
  633. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +42 -0
  634. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +42 -0
  635. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +43 -0
  636. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +47 -0
  637. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +43 -0
  638. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +36 -0
  639. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +26 -0
  640. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +153 -0
  641. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float.c +59 -0
  642. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +58 -0
  643. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +58 -0
  644. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +72 -0
  645. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +62 -0
  646. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +342 -0
  647. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/many.c +69 -0
  648. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +63 -0
  649. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +53 -0
  650. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +152 -0
  651. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +161 -0
  652. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +133 -0
  653. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +110 -0
  654. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +111 -0
  655. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +111 -0
  656. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +112 -0
  657. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +131 -0
  658. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +111 -0
  659. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +131 -0
  660. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +131 -0
  661. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +90 -0
  662. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +59 -0
  663. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +114 -0
  664. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +35 -0
  665. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +43 -0
  666. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +42 -0
  667. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +35 -0
  668. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +36 -0
  669. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +49 -0
  670. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +42 -0
  671. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +34 -0
  672. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +41 -0
  673. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +43 -0
  674. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +36 -0
  675. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +38 -0
  676. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +38 -0
  677. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +38 -0
  678. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +145 -0
  679. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +148 -0
  680. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +124 -0
  681. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +125 -0
  682. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +44 -0
  683. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +44 -0
  684. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +65 -0
  685. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +67 -0
  686. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +59 -0
  687. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +63 -0
  688. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +65 -0
  689. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +64 -0
  690. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +74 -0
  691. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +80 -0
  692. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +67 -0
  693. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +70 -0
  694. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +96 -0
  695. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +35 -0
  696. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc +124 -0
  697. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc +53 -0
  698. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi/texinfo.tex +7210 -0
  699. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi.5.dylib +0 -0
  700. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi.dylib +0 -0
  701. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi.la +41 -0
  702. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi.lai +41 -0
  703. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi_convenience.a +0 -0
  704. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/.libs/libffi_convenience.la +41 -0
  705. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/Makefile +1820 -0
  706. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/config.log +1097 -0
  707. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/config.status +2336 -0
  708. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/fficonfig.h +200 -0
  709. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/include/Makefile +487 -0
  710. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/include/ffi.h +427 -0
  711. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/include/ffitarget.h +121 -0
  712. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/libffi.la +41 -0
  713. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/libffi.pc +10 -0
  714. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/libffi_convenience.la +41 -0
  715. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/libtool +10056 -0
  716. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/man/Makefile +466 -0
  717. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.deps/.dirstamp +0 -0
  718. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.dirstamp +0 -0
  719. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/closures.o +0 -0
  720. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/debug.o +0 -0
  721. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/java_raw_api.o +0 -0
  722. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/prep_cif.o +0 -0
  723. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/raw_api.o +0 -0
  724. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/.libs/types.o +0 -0
  725. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/closures.lo +12 -0
  726. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/debug.lo +12 -0
  727. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/java_raw_api.lo +12 -0
  728. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/prep_cif.lo +12 -0
  729. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/raw_api.lo +12 -0
  730. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/types.lo +12 -0
  731. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.deps/.dirstamp +0 -0
  732. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.dirstamp +0 -0
  733. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.libs/darwin.o +0 -0
  734. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.libs/darwin64.o +0 -0
  735. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.libs/ffi.o +0 -0
  736. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/.libs/ffi64.o +0 -0
  737. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/darwin.lo +12 -0
  738. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/darwin64.lo +12 -0
  739. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/ffi.lo +12 -0
  740. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/src/x86/ffi64.lo +12 -0
  741. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/stamp-h1 +1 -0
  742. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi-x86_64-darwin14/testsuite/Makefile +500 -0
  743. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.bsd.mk +34 -0
  744. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.darwin.mk +95 -0
  745. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.gnu.mk +31 -0
  746. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.mk +13 -0
  747. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.vc.mk +26 -0
  748. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/libffi.vc64.mk +26 -0
  749. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/rbffi.h +57 -0
  750. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/rbffi_endian.h +59 -0
  751. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/win32/stdbool.h +8 -0
  752. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ext/ffi_c/win32/stdint.h +201 -0
  753. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/ffi.gemspec +23 -0
  754. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/gen/Rakefile +30 -0
  755. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/autopointer.rb +194 -0
  756. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/buffer.rb +4 -0
  757. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/callback.rb +4 -0
  758. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/enum.rb +174 -0
  759. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/errno.rb +43 -0
  760. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/ffi.rb +44 -0
  761. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/io.rb +62 -0
  762. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/library.rb +524 -0
  763. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/managedstruct.rb +84 -0
  764. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/memorypointer.rb +1 -0
  765. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/aarch64-linux/types.conf +104 -0
  766. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/arm-linux/types.conf +104 -0
  767. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-cygwin/types.conf +3 -0
  768. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-darwin/types.conf +100 -0
  769. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-freebsd/types.conf +152 -0
  770. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-gnu/types.conf +107 -0
  771. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-linux/types.conf +103 -0
  772. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-netbsd/types.conf +126 -0
  773. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-openbsd/types.conf +128 -0
  774. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-solaris/types.conf +122 -0
  775. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/i386-windows/types.conf +105 -0
  776. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/ia64-linux/types.conf +104 -0
  777. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mips-linux/types.conf +102 -0
  778. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mips64el-linux/types.conf +104 -0
  779. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/mipsel-linux/types.conf +102 -0
  780. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-aix/types.conf +180 -0
  781. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-darwin/types.conf +100 -0
  782. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc-linux/types.conf +100 -0
  783. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/powerpc64-linux/types.conf +104 -0
  784. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/s390-linux/types.conf +102 -0
  785. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/s390x-linux/types.conf +102 -0
  786. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparc-linux/types.conf +102 -0
  787. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparc-solaris/types.conf +128 -0
  788. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/sparcv9-solaris/types.conf +128 -0
  789. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-cygwin/types.conf +3 -0
  790. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-darwin/types.conf +126 -0
  791. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-freebsd/types.conf +128 -0
  792. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-linux/types.conf +102 -0
  793. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-netbsd/types.conf +128 -0
  794. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-openbsd/types.conf +128 -0
  795. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-solaris/types.conf +122 -0
  796. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform/x86_64-windows/types.conf +27 -0
  797. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/platform.rb +159 -0
  798. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/pointer.rb +134 -0
  799. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/struct.rb +373 -0
  800. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/struct_layout_builder.rb +227 -0
  801. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/const_generator.rb +229 -0
  802. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/generator.rb +60 -0
  803. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/generator_task.rb +36 -0
  804. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/struct_generator.rb +194 -0
  805. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/tools/types_generator.rb +135 -0
  806. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/types.rb +190 -0
  807. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/union.rb +43 -0
  808. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/variadic.rb +78 -0
  809. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi/version.rb +4 -0
  810. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi.rb +20 -0
  811. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/lib/ffi_c.bundle +0 -0
  812. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/Benchmark.c +52 -0
  813. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/BoolTest.c +34 -0
  814. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/BufferTest.c +31 -0
  815. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/ClosureTest.c +205 -0
  816. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/EnumTest.c +51 -0
  817. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/FunctionTest.c +70 -0
  818. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/GNUmakefile +149 -0
  819. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/GlobalVariable.c +62 -0
  820. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/LastErrorTest.c +21 -0
  821. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/NumberTest.c +132 -0
  822. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/PointerTest.c +63 -0
  823. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/ReferenceTest.c +23 -0
  824. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/StringTest.c +34 -0
  825. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/StructTest.c +243 -0
  826. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/UnionTest.c +43 -0
  827. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/libtest/VariadicTest.c +62 -0
  828. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/LICENSE.SPECS +22 -0
  829. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/async_callback_spec.rb +35 -0
  830. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/bool_spec.rb +32 -0
  831. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/buffer_spec.rb +279 -0
  832. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/callback_spec.rb +773 -0
  833. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/custom_param_type.rb +37 -0
  834. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/custom_type_spec.rb +74 -0
  835. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/dup_spec.rb +52 -0
  836. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/enum_spec.rb +423 -0
  837. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/errno_spec.rb +20 -0
  838. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/ffi_spec.rb +28 -0
  839. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/Benchmark.c +52 -0
  840. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/BoolTest.c +34 -0
  841. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/BufferTest.c +31 -0
  842. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/ClosureTest.c +190 -0
  843. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/EnumTest.c +51 -0
  844. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/FunctionTest.c +58 -0
  845. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/GNUmakefile +149 -0
  846. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/GlobalVariable.c +62 -0
  847. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/LastErrorTest.c +21 -0
  848. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/NumberTest.c +132 -0
  849. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/PointerTest.c +63 -0
  850. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/ReferenceTest.c +23 -0
  851. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/StringTest.c +34 -0
  852. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/StructTest.c +243 -0
  853. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/UnionTest.c +43 -0
  854. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/VariadicTest.c +99 -0
  855. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/fixtures/classes.rb +438 -0
  856. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/function_spec.rb +92 -0
  857. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/io_spec.rb +16 -0
  858. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/library_spec.rb +276 -0
  859. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/long_double.rb +30 -0
  860. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/managed_struct_spec.rb +68 -0
  861. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/memorypointer_spec.rb +78 -0
  862. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/number_spec.rb +247 -0
  863. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/platform_spec.rb +114 -0
  864. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/pointer_spec.rb +278 -0
  865. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/attach_function_spec.rb +33 -0
  866. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/memory_pointer_spec.rb +130 -0
  867. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/spec_helper.rb +6 -0
  868. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/rbx/struct_spec.rb +18 -0
  869. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/spec_helper.rb +93 -0
  870. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/string_spec.rb +118 -0
  871. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/strptr_spec.rb +50 -0
  872. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_by_ref_spec.rb +43 -0
  873. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_callback_spec.rb +69 -0
  874. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_initialize_spec.rb +35 -0
  875. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_packed_spec.rb +50 -0
  876. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/struct_spec.rb +886 -0
  877. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/typedef_spec.rb +91 -0
  878. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/union_spec.rb +67 -0
  879. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/ffi/variadic_spec.rb +113 -0
  880. data/vendor/bundle/ruby/2.2.0/gems/ffi-1.9.10/spec/spec.opts +4 -0
  881. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/.gitignore +15 -0
  882. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/.rspec +1 -0
  883. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/.travis.yml +7 -0
  884. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/.yardopts +1 -0
  885. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/Gemfile +6 -0
  886. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/LICENSE +19 -0
  887. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/README.md +207 -0
  888. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/Rakefile +13 -0
  889. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/changelog.md +44 -0
  890. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/hashdiff.gemspec +25 -0
  891. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff/diff.rb +220 -0
  892. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff/lcs.rb +69 -0
  893. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff/patch.rb +84 -0
  894. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff/util.rb +127 -0
  895. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff/version.rb +3 -0
  896. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/lib/hashdiff.rb +5 -0
  897. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/best_diff_spec.rb +65 -0
  898. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/diff_array_spec.rb +60 -0
  899. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/diff_spec.rb +232 -0
  900. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/lcs_spec.rb +75 -0
  901. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/patch_spec.rb +136 -0
  902. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/hashdiff/util_spec.rb +73 -0
  903. data/vendor/bundle/ruby/2.2.0/gems/hashdiff-0.2.3/spec/spec_helper.rb +13 -0
  904. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/.gitignore +16 -0
  905. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/.travis.yml +26 -0
  906. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/CHANGES +295 -0
  907. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/COPYING +58 -0
  908. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/COPYING-json-jruby +57 -0
  909. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/GPL +340 -0
  910. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/Gemfile +10 -0
  911. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/README-json-jruby.markdown +33 -0
  912. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/README.rdoc +358 -0
  913. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/Rakefile +412 -0
  914. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/TODO +1 -0
  915. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/VERSION +1 -0
  916. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/data/example.json +1 -0
  917. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/data/index.html +38 -0
  918. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/data/prototype.js +4184 -0
  919. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/diagrams/.keep +0 -0
  920. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/Makefile +195 -0
  921. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/fbuffer/fbuffer.h +190 -0
  922. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/.RUBYARCHDIR.-.json.-.ext.time +0 -0
  923. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/Makefile +261 -0
  924. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/depend +1 -0
  925. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/extconf.rb +4 -0
  926. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/generator.bundle +0 -0
  927. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/generator.c +1458 -0
  928. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/generator.h +166 -0
  929. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/generator/generator.o +0 -0
  930. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/.RUBYARCHDIR.-.json.-.ext.time +0 -0
  931. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/Makefile +261 -0
  932. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/depend +1 -0
  933. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/extconf.rb +3 -0
  934. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/parser.bundle +0 -0
  935. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/parser.c +2216 -0
  936. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/parser.h +92 -0
  937. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/parser.o +0 -0
  938. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/ext/parser/parser.rl +939 -0
  939. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/ext/json/extconf.rb +3 -0
  940. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/install.rb +23 -0
  941. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/ByteListTranscoder.java +167 -0
  942. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/Generator.java +444 -0
  943. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/GeneratorMethods.java +232 -0
  944. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/GeneratorService.java +43 -0
  945. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/GeneratorState.java +543 -0
  946. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/OptionsReader.java +114 -0
  947. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/Parser.java +2645 -0
  948. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/Parser.rl +969 -0
  949. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/ParserService.java +35 -0
  950. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/RuntimeInfo.java +121 -0
  951. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/StringDecoder.java +167 -0
  952. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/StringEncoder.java +106 -0
  953. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/java/src/json/ext/Utils.java +89 -0
  954. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/json-java.gemspec +23 -0
  955. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/json.gemspec +0 -0
  956. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/json_pure.gemspec +40 -0
  957. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/bigdecimal.rb +28 -0
  958. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/complex.rb +28 -0
  959. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/core.rb +11 -0
  960. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/date.rb +34 -0
  961. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/date_time.rb +50 -0
  962. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/exception.rb +31 -0
  963. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/ostruct.rb +31 -0
  964. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/range.rb +29 -0
  965. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/rational.rb +27 -0
  966. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/regexp.rb +30 -0
  967. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/struct.rb +30 -0
  968. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/symbol.rb +25 -0
  969. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/add/time.rb +38 -0
  970. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/common.rb +484 -0
  971. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/ext/.keep +0 -0
  972. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/ext/generator.bundle +0 -0
  973. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/ext/parser.bundle +0 -0
  974. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/ext.rb +21 -0
  975. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/generic_object.rb +70 -0
  976. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/pure/generator.rb +522 -0
  977. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/pure/parser.rb +359 -0
  978. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/pure.rb +21 -0
  979. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json/version.rb +8 -0
  980. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/lib/json.rb +62 -0
  981. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail1.json +1 -0
  982. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail10.json +1 -0
  983. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail11.json +1 -0
  984. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail12.json +1 -0
  985. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail13.json +1 -0
  986. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail14.json +1 -0
  987. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail18.json +1 -0
  988. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail19.json +1 -0
  989. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail2.json +1 -0
  990. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail20.json +1 -0
  991. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail21.json +1 -0
  992. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail22.json +1 -0
  993. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail23.json +1 -0
  994. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail24.json +1 -0
  995. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail25.json +1 -0
  996. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail27.json +2 -0
  997. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail28.json +2 -0
  998. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail3.json +1 -0
  999. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail4.json +1 -0
  1000. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail5.json +1 -0
  1001. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail6.json +1 -0
  1002. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail7.json +1 -0
  1003. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail8.json +1 -0
  1004. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/fail9.json +1 -0
  1005. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass1.json +56 -0
  1006. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass15.json +1 -0
  1007. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass16.json +1 -0
  1008. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass17.json +1 -0
  1009. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass2.json +1 -0
  1010. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass26.json +1 -0
  1011. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/fixtures/pass3.json +6 -0
  1012. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/setup_variant.rb +11 -0
  1013. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json.rb +553 -0
  1014. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_addition.rb +196 -0
  1015. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_encoding.rb +65 -0
  1016. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_fixtures.rb +35 -0
  1017. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_generate.rb +337 -0
  1018. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_generic_object.rb +75 -0
  1019. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_string_matching.rb +39 -0
  1020. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tests/test_json_unicode.rb +72 -0
  1021. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tools/fuzz.rb +139 -0
  1022. data/vendor/bundle/ruby/2.2.0/gems/json-1.8.3/tools/server.rb +62 -0
  1023. data/vendor/bundle/ruby/2.2.0/gems/rspec-3.4.0/LICENSE.md +27 -0
  1024. data/vendor/bundle/ruby/2.2.0/gems/rspec-3.4.0/README.md +39 -0
  1025. data/vendor/bundle/ruby/2.2.0/gems/rspec-3.4.0/lib/rspec/version.rb +5 -0
  1026. data/vendor/bundle/ruby/2.2.0/gems/rspec-3.4.0/lib/rspec.rb +3 -0
  1027. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/.document +5 -0
  1028. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/.yardopts +8 -0
  1029. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/Changelog.md +1933 -0
  1030. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/LICENSE.md +26 -0
  1031. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/README.md +384 -0
  1032. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/exe/rspec +4 -0
  1033. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/autorun.rb +3 -0
  1034. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/backtrace_formatter.rb +65 -0
  1035. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/bisect/coordinator.rb +66 -0
  1036. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/bisect/example_minimizer.rb +169 -0
  1037. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/bisect/runner.rb +139 -0
  1038. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/bisect/server.rb +61 -0
  1039. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/configuration.rb +1869 -0
  1040. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/configuration_options.rb +191 -0
  1041. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/drb.rb +111 -0
  1042. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/dsl.rb +96 -0
  1043. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/example.rb +620 -0
  1044. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/example_group.rb +816 -0
  1045. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/example_status_persister.rb +235 -0
  1046. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/filter_manager.rb +231 -0
  1047. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/flat_map.rb +20 -0
  1048. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/base_formatter.rb +70 -0
  1049. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/base_text_formatter.rb +77 -0
  1050. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/bisect_formatter.rb +68 -0
  1051. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/bisect_progress_formatter.rb +144 -0
  1052. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/console_codes.rb +65 -0
  1053. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  1054. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/documentation_formatter.rb +70 -0
  1055. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/exception_presenter.rb +480 -0
  1056. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  1057. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/helpers.rb +109 -0
  1058. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/html_formatter.rb +151 -0
  1059. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/html_printer.rb +414 -0
  1060. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/html_snippet_extractor.rb +116 -0
  1061. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/json_formatter.rb +96 -0
  1062. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  1063. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/progress_formatter.rb +28 -0
  1064. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/protocol.rb +181 -0
  1065. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters/snippet_extractor.rb +143 -0
  1066. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/formatters.rb +255 -0
  1067. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/hooks.rb +638 -0
  1068. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/memoized_helpers.rb +532 -0
  1069. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/metadata.rb +491 -0
  1070. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/metadata_filter.rb +240 -0
  1071. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  1072. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  1073. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  1074. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/mocking_adapters/null.rb +14 -0
  1075. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  1076. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  1077. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/notifications.rb +499 -0
  1078. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/option_parser.rb +319 -0
  1079. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/ordering.rb +158 -0
  1080. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/pending.rb +165 -0
  1081. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/profiler.rb +32 -0
  1082. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/project_initializer/.rspec +2 -0
  1083. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/project_initializer/spec/spec_helper.rb +96 -0
  1084. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/project_initializer.rb +48 -0
  1085. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/rake_task.rb +167 -0
  1086. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/reporter.rb +236 -0
  1087. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/ruby_project.rb +53 -0
  1088. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/runner.rb +179 -0
  1089. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/sandbox.rb +37 -0
  1090. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/set.rb +49 -0
  1091. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/shared_context.rb +55 -0
  1092. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/shared_example_group.rb +212 -0
  1093. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/shell_escape.rb +49 -0
  1094. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/source/location.rb +13 -0
  1095. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/source/node.rb +93 -0
  1096. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/source/syntax_highlighter.rb +71 -0
  1097. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/source/token.rb +43 -0
  1098. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/source.rb +76 -0
  1099. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  1100. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/version.rb +9 -0
  1101. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/warnings.rb +40 -0
  1102. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core/world.rb +197 -0
  1103. data/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.4.1/lib/rspec/core.rb +181 -0
  1104. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/.document +5 -0
  1105. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/.yardopts +6 -0
  1106. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/Changelog.md +979 -0
  1107. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/LICENSE.md +25 -0
  1108. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/README.md +303 -0
  1109. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/configuration.rb +164 -0
  1110. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/expectation_target.rb +113 -0
  1111. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/fail_with.rb +31 -0
  1112. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/failure_aggregator.rb +194 -0
  1113. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/handler.rb +170 -0
  1114. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/minitest_integration.rb +31 -0
  1115. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/syntax.rb +132 -0
  1116. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations/version.rb +8 -0
  1117. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/expectations.rb +81 -0
  1118. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/aliased_matcher.rb +116 -0
  1119. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/all.rb +85 -0
  1120. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/base_matcher.rb +181 -0
  1121. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be.rb +285 -0
  1122. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_between.rb +77 -0
  1123. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_instance_of.rb +22 -0
  1124. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_kind_of.rb +16 -0
  1125. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_within.rb +72 -0
  1126. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/change.rb +354 -0
  1127. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/compound.rb +272 -0
  1128. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/contain_exactly.rb +286 -0
  1129. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/cover.rb +24 -0
  1130. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/eq.rb +40 -0
  1131. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/eql.rb +34 -0
  1132. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/equal.rb +81 -0
  1133. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/exist.rb +86 -0
  1134. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/has.rb +103 -0
  1135. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  1136. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/include.rb +130 -0
  1137. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/match.rb +106 -0
  1138. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/operators.rb +128 -0
  1139. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/output.rb +200 -0
  1140. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/raise_error.rb +228 -0
  1141. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/respond_to.rb +90 -0
  1142. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/satisfy.rb +37 -0
  1143. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  1144. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/throw_symbol.rb +132 -0
  1145. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/yield.rb +419 -0
  1146. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in.rb +52 -0
  1147. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/composable.rb +185 -0
  1148. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/dsl.rb +453 -0
  1149. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/english_phrasing.rb +42 -0
  1150. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +73 -0
  1151. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/fail_matchers.rb +42 -0
  1152. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/generated_descriptions.rb +42 -0
  1153. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/matcher_delegator.rb +35 -0
  1154. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers/matcher_protocol.rb +99 -0
  1155. data/vendor/bundle/ruby/2.2.0/gems/rspec-expectations-3.4.0/lib/rspec/matchers.rb +1037 -0
  1156. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/.document +5 -0
  1157. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/.yardopts +6 -0
  1158. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/Changelog.md +984 -0
  1159. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/LICENSE.md +25 -0
  1160. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/README.md +445 -0
  1161. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/chain.rb +110 -0
  1162. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  1163. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +35 -0
  1164. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/expectation_chain.rb +48 -0
  1165. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  1166. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/proxy.rb +116 -0
  1167. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/recorder.rb +264 -0
  1168. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/stub_chain.rb +46 -0
  1169. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +27 -0
  1170. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/any_instance.rb +11 -0
  1171. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/argument_list_matcher.rb +100 -0
  1172. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/argument_matchers.rb +320 -0
  1173. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/configuration.rb +205 -0
  1174. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/error_generator.rb +367 -0
  1175. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/example_methods.rb +422 -0
  1176. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/instance_method_stasher.rb +134 -0
  1177. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/marshal_extension.rb +41 -0
  1178. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  1179. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/matchers/have_received.rb +128 -0
  1180. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/matchers/receive.rb +130 -0
  1181. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/matchers/receive_message_chain.rb +80 -0
  1182. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/matchers/receive_messages.rb +75 -0
  1183. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/message_chain.rb +87 -0
  1184. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/message_expectation.rb +717 -0
  1185. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/method_double.rb +287 -0
  1186. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/method_reference.rb +192 -0
  1187. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/mutate_const.rb +335 -0
  1188. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/object_reference.rb +149 -0
  1189. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/order_group.rb +81 -0
  1190. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/proxy.rb +484 -0
  1191. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/space.rb +238 -0
  1192. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/standalone.rb +3 -0
  1193. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/syntax.rb +325 -0
  1194. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/targets.rb +97 -0
  1195. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/test_double.rb +170 -0
  1196. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/verifying_double.rb +129 -0
  1197. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/verifying_message_expectation.rb +54 -0
  1198. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/verifying_proxy.rb +213 -0
  1199. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks/version.rb +9 -0
  1200. data/vendor/bundle/ruby/2.2.0/gems/rspec-mocks-3.4.0/lib/rspec/mocks.rb +126 -0
  1201. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/Changelog.md +151 -0
  1202. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/LICENSE.md +23 -0
  1203. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/README.md +40 -0
  1204. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/caller_filter.rb +83 -0
  1205. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/comparable_version.rb +46 -0
  1206. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/differ.rb +215 -0
  1207. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/directory_maker.rb +63 -0
  1208. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/encoded_string.rb +155 -0
  1209. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/fuzzy_matcher.rb +48 -0
  1210. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/hunk_generator.rb +47 -0
  1211. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/matcher_definition.rb +42 -0
  1212. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/method_signature_verifier.rb +290 -0
  1213. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/mutex.rb +73 -0
  1214. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/object_formatter.rb +108 -0
  1215. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/recursive_const_methods.rb +76 -0
  1216. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/reentrant_mutex.rb +53 -0
  1217. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/ruby_features.rb +149 -0
  1218. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/deprecation_helpers.rb +64 -0
  1219. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/formatting_support.rb +9 -0
  1220. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/in_sub_process.rb +52 -0
  1221. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/library_wide_checks.rb +152 -0
  1222. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/shell_out.rb +71 -0
  1223. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/stderr_splitter.rb +63 -0
  1224. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/string_matcher.rb +46 -0
  1225. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/with_isolated_directory.rb +9 -0
  1226. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  1227. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/spec.rb +81 -0
  1228. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/version.rb +7 -0
  1229. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/version_checker.rb +53 -0
  1230. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support/warnings.rb +39 -0
  1231. data/vendor/bundle/ruby/2.2.0/gems/rspec-support-3.4.1/lib/rspec/support.rb +139 -0
  1232. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/.gitignore +1 -0
  1233. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/.travis.yml +48 -0
  1234. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/CHANGES.md +149 -0
  1235. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/Gemfile +11 -0
  1236. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/LICENSE.txt +22 -0
  1237. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/README.md +191 -0
  1238. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/Rakefile +26 -0
  1239. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/bin/safe_yaml +75 -0
  1240. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/bundle_install_all_ruby_versions.sh +11 -0
  1241. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/deep.rb +34 -0
  1242. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/libyaml_checker.rb +36 -0
  1243. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/load.rb +181 -0
  1244. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/parse/date.rb +35 -0
  1245. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/parse/hexadecimal.rb +12 -0
  1246. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/parse/sexagesimal.rb +26 -0
  1247. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/psych_handler.rb +99 -0
  1248. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/psych_resolver.rb +52 -0
  1249. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/resolver.rb +94 -0
  1250. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/safe_to_ruby_visitor.rb +29 -0
  1251. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/syck_hack.rb +36 -0
  1252. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/syck_node_monkeypatch.rb +43 -0
  1253. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/syck_resolver.rb +38 -0
  1254. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_boolean.rb +21 -0
  1255. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_date.rb +13 -0
  1256. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_float.rb +33 -0
  1257. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_integer.rb +26 -0
  1258. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_nil.rb +18 -0
  1259. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/to_symbol.rb +17 -0
  1260. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform/transformation_map.rb +47 -0
  1261. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/transform.rb +41 -0
  1262. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml/version.rb +3 -0
  1263. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/lib/safe_yaml.rb +94 -0
  1264. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/run_specs_all_ruby_versions.sh +38 -0
  1265. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/safe_yaml.gemspec +19 -0
  1266. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/exploit.1.9.2.yaml +2 -0
  1267. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/exploit.1.9.3.yaml +2 -0
  1268. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/issue48.txt +20 -0
  1269. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/issue49.yml +0 -0
  1270. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/libyaml_checker_spec.rb +69 -0
  1271. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/psych_resolver_spec.rb +10 -0
  1272. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/resolver_specs.rb +278 -0
  1273. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/safe_yaml_spec.rb +731 -0
  1274. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/spec_helper.rb +42 -0
  1275. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/support/exploitable_back_door.rb +29 -0
  1276. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/syck_resolver_spec.rb +10 -0
  1277. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/transform/base64_spec.rb +11 -0
  1278. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/transform/to_date_spec.rb +60 -0
  1279. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/transform/to_float_spec.rb +42 -0
  1280. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/transform/to_integer_spec.rb +64 -0
  1281. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/transform/to_symbol_spec.rb +51 -0
  1282. data/vendor/bundle/ruby/2.2.0/gems/safe_yaml-1.0.4/spec/yaml_spec.rb +15 -0
  1283. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/CHANGES +198 -0
  1284. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/MANIFEST +12 -0
  1285. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/README +51 -0
  1286. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/Rakefile +39 -0
  1287. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/certs/djberg96_pub.pem +21 -0
  1288. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/doc/uname.txt +127 -0
  1289. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/examples/uname_test.rb +42 -0
  1290. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/lib/sys/platform.rb +54 -0
  1291. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/lib/sys/uname.rb +19 -0
  1292. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/lib/sys/unix/uname.rb +327 -0
  1293. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/lib/sys/windows/uname.rb +507 -0
  1294. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/lib/sys-uname.rb +1 -0
  1295. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/sys-uname.gemspec +26 -0
  1296. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/test/test_sys_platform.rb +79 -0
  1297. data/vendor/bundle/ruby/2.2.0/gems/sys-uname-1.0.2/test/test_sys_uname.rb +463 -0
  1298. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/.gitignore +8 -0
  1299. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/.rspec +4 -0
  1300. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/.travis.yml +20 -0
  1301. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/CHANGELOG.md +350 -0
  1302. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/CONTRIBUTING.md +16 -0
  1303. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/Gemfile +21 -0
  1304. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/Guardfile +9 -0
  1305. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/LICENSE +22 -0
  1306. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/README.md +559 -0
  1307. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/Rakefile +38 -0
  1308. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/UPGRADE.md +55 -0
  1309. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/rack/typhoeus/middleware/params_decoder/helper.rb +76 -0
  1310. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/rack/typhoeus/middleware/params_decoder.rb +57 -0
  1311. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/rack/typhoeus.rb +1 -0
  1312. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/adapters/faraday.rb +155 -0
  1313. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/config.rb +62 -0
  1314. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/easy_factory.rb +176 -0
  1315. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/errors/no_stub.rb +12 -0
  1316. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/errors/typhoeus_error.rb +8 -0
  1317. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/errors.rb +9 -0
  1318. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/expectation.rb +217 -0
  1319. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/addable.rb +23 -0
  1320. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/before.rb +31 -0
  1321. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/block_connection.rb +35 -0
  1322. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/cacheable.rb +15 -0
  1323. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/memoizable.rb +56 -0
  1324. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/queueable.rb +83 -0
  1325. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/runnable.rb +19 -0
  1326. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra/stubbable.rb +28 -0
  1327. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/hydra.rb +95 -0
  1328. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/pool.rb +68 -0
  1329. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/railtie.rb +12 -0
  1330. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/actions.rb +125 -0
  1331. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/before.rb +30 -0
  1332. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/block_connection.rb +52 -0
  1333. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/cacheable.rb +27 -0
  1334. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/callbacks.rb +133 -0
  1335. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/marshal.rb +22 -0
  1336. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/memoizable.rb +38 -0
  1337. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/operations.rb +40 -0
  1338. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/responseable.rb +29 -0
  1339. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/streamable.rb +34 -0
  1340. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request/stubbable.rb +30 -0
  1341. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/request.rb +223 -0
  1342. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/response/cacheable.rb +14 -0
  1343. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/response/header.rb +93 -0
  1344. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/response/informations.rb +244 -0
  1345. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/response/status.rb +86 -0
  1346. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/response.rb +68 -0
  1347. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus/version.rb +5 -0
  1348. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/lib/typhoeus.rb +127 -0
  1349. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/perf/profile.rb +14 -0
  1350. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/perf/vs_nethttp.rb +64 -0
  1351. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/rack/typhoeus/middleware/params_decoder/helper_spec.rb +156 -0
  1352. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/rack/typhoeus/middleware/params_decoder_spec.rb +31 -0
  1353. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/spec_helper.rb +29 -0
  1354. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/support/localhost_server.rb +94 -0
  1355. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/support/memory_cache.rb +15 -0
  1356. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/support/server.rb +108 -0
  1357. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/adapters/faraday_spec.rb +293 -0
  1358. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/config_spec.rb +15 -0
  1359. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/easy_factory_spec.rb +137 -0
  1360. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/errors/no_stub_spec.rb +13 -0
  1361. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/expectation_spec.rb +280 -0
  1362. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/addable_spec.rb +22 -0
  1363. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/before_spec.rb +97 -0
  1364. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/block_connection_spec.rb +18 -0
  1365. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/cacheable_spec.rb +58 -0
  1366. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/memoizable_spec.rb +53 -0
  1367. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/queueable_spec.rb +88 -0
  1368. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/runnable_spec.rb +136 -0
  1369. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra/stubbable_spec.rb +48 -0
  1370. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/hydra_spec.rb +22 -0
  1371. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/pool_spec.rb +96 -0
  1372. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/actions_spec.rb +19 -0
  1373. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/before_spec.rb +92 -0
  1374. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/block_connection_spec.rb +75 -0
  1375. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/cacheable_spec.rb +70 -0
  1376. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/callbacks_spec.rb +91 -0
  1377. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/marshal_spec.rb +60 -0
  1378. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/memoizable_spec.rb +34 -0
  1379. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/operations_spec.rb +101 -0
  1380. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/responseable_spec.rb +13 -0
  1381. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request/stubbable_spec.rb +45 -0
  1382. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/request_spec.rb +214 -0
  1383. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/response/header_spec.rb +97 -0
  1384. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/response/informations_spec.rb +272 -0
  1385. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/response/status_spec.rb +218 -0
  1386. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus/response_spec.rb +100 -0
  1387. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/spec/typhoeus_spec.rb +105 -0
  1388. data/vendor/bundle/ruby/2.2.0/gems/typhoeus-0.8.0/typhoeus.gemspec +25 -0
  1389. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.gemtest +0 -0
  1390. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.gitignore +52 -0
  1391. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.gitmodules +3 -0
  1392. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.rspec +2 -0
  1393. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.travis.yml +27 -0
  1394. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/.yardopts +9 -0
  1395. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/Appraisals +5 -0
  1396. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/CHANGELOG.md +987 -0
  1397. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/CONTRIBUTING.md +26 -0
  1398. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/Gemfile +54 -0
  1399. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/Gemfile.lock +159 -0
  1400. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/LICENSE +20 -0
  1401. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/README.md +243 -0
  1402. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/Rakefile +197 -0
  1403. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/Upgrade.md +289 -0
  1404. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/benchmarks/http_stubbing_libraries.rb +59 -0
  1405. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/benchmarks/null_logging.rb +62 -0
  1406. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/cucumber.yml +16 -0
  1407. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/.nav +62 -0
  1408. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/about_these_examples.md +18 -0
  1409. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/allow_unused_http_interactions.feature +100 -0
  1410. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/automatic_re_recording.feature +72 -0
  1411. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/decompress.feature +74 -0
  1412. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/dynamic_erb.feature +100 -0
  1413. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/exclusive.feature +123 -0
  1414. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/format.feature +308 -0
  1415. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/freezing_time.feature +68 -0
  1416. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/naming.feature +28 -0
  1417. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/no_cassette.feature +152 -0
  1418. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/persistence.feature +63 -0
  1419. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/cassettes/update_content_length_header.feature +112 -0
  1420. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/allow_http_connections_when_no_cassette.feature +52 -0
  1421. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/cassette_library_dir.feature +31 -0
  1422. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/debug_logging.feature +52 -0
  1423. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/default_cassette_options.feature +100 -0
  1424. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/filter_sensitive_data.feature +152 -0
  1425. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/hook_into.feature +172 -0
  1426. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/ignore_request.feature +193 -0
  1427. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/preserve_exact_body_bytes.feature +108 -0
  1428. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/query_parser.feature +84 -0
  1429. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/configuration/uri_parser.feature +89 -0
  1430. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/getting_started.md +82 -0
  1431. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/hooks/after_http_request.feature +57 -0
  1432. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/hooks/around_http_request.feature +57 -0
  1433. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/hooks/before_http_request.feature +61 -0
  1434. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/hooks/before_playback.feature +185 -0
  1435. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/hooks/before_record.feature +172 -0
  1436. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/http_libraries/em_http_request.feature +247 -0
  1437. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/http_libraries/net_http.feature +169 -0
  1438. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/middleware/faraday.feature +56 -0
  1439. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/middleware/rack.feature +92 -0
  1440. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/record_modes/all.feature +82 -0
  1441. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/record_modes/new_episodes.feature +79 -0
  1442. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/record_modes/none.feature +72 -0
  1443. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/record_modes/once.feature +95 -0
  1444. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/README.md +30 -0
  1445. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/body.feature +91 -0
  1446. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/body_as_json.feature +90 -0
  1447. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/custom_matcher.feature +135 -0
  1448. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/headers.feature +85 -0
  1449. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/host.feature +95 -0
  1450. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/identical_request_sequence.feature +89 -0
  1451. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/method.feature +96 -0
  1452. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/path.feature +96 -0
  1453. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/playback_repeats.feature +98 -0
  1454. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/query.feature +97 -0
  1455. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/uri.feature +94 -0
  1456. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/request_matching/uri_without_param.feature +101 -0
  1457. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/step_definitions/cli_steps.rb +201 -0
  1458. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/support/env.rb +41 -0
  1459. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/support/http_lib_filters.rb +53 -0
  1460. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/support/vcr_cucumber_helpers.rb +46 -0
  1461. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/test_frameworks/cucumber.feature +210 -0
  1462. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/test_frameworks/rspec_macro.feature +106 -0
  1463. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/test_frameworks/rspec_metadata.feature +149 -0
  1464. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/test_frameworks/test_unit.feature +46 -0
  1465. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/gemfiles/typhoeus_old.gemfile +34 -0
  1466. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/gemfiles/typhoeus_old.gemfile.lock +133 -0
  1467. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/erb_renderer.rb +55 -0
  1468. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/http_interaction_list.rb +108 -0
  1469. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/migrator.rb +118 -0
  1470. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/persisters/file_system.rb +64 -0
  1471. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/persisters.rb +42 -0
  1472. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/serializers/json.rb +48 -0
  1473. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/serializers/psych.rb +48 -0
  1474. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/serializers/syck.rb +61 -0
  1475. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/serializers/yaml.rb +50 -0
  1476. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette/serializers.rb +57 -0
  1477. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/cassette.rb +291 -0
  1478. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/configuration.rb +555 -0
  1479. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/deprecations.rb +109 -0
  1480. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/errors.rb +266 -0
  1481. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/extensions/net_http_response.rb +36 -0
  1482. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/excon.rb +27 -0
  1483. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/fakeweb.rb +196 -0
  1484. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/faraday.rb +47 -0
  1485. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/typhoeus.rb +120 -0
  1486. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/typhoeus_0.4.rb +103 -0
  1487. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks/webmock.rb +164 -0
  1488. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/library_hooks.rb +18 -0
  1489. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/middleware/excon/legacy_methods.rb +33 -0
  1490. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/middleware/excon.rb +221 -0
  1491. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/middleware/faraday.rb +114 -0
  1492. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/middleware/rack.rb +79 -0
  1493. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/request_handler.rb +114 -0
  1494. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/request_ignorer.rb +43 -0
  1495. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/request_matcher_registry.rb +149 -0
  1496. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/structs.rb +578 -0
  1497. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/tasks/vcr.rake +9 -0
  1498. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/test_frameworks/cucumber.rb +64 -0
  1499. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/test_frameworks/rspec.rb +47 -0
  1500. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/util/hooks.rb +61 -0
  1501. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/util/internet_connection.rb +43 -0
  1502. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/util/logger.rb +59 -0
  1503. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/util/variable_args_block_caller.rb +13 -0
  1504. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/util/version_checker.rb +48 -0
  1505. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr/version.rb +34 -0
  1506. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/lib/vcr.rb +347 -0
  1507. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/script/ci.sh +27 -0
  1508. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/acceptance/threading_spec.rb +34 -0
  1509. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/capture_warnings.rb +73 -0
  1510. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/cassette_spec/1_x_cassette.yml +110 -0
  1511. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/cassette_spec/empty.yml +0 -0
  1512. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/cassette_spec/example.yml +111 -0
  1513. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/cassette_spec/with_localhost_requests.yml +111 -0
  1514. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/fake_example_responses.yml +110 -0
  1515. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/fixtures/match_requests_on.yml +187 -0
  1516. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/monkey_patches.rb +182 -0
  1517. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/quality_spec.rb +51 -0
  1518. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/spec_helper.rb +92 -0
  1519. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/configuration_stubbing.rb +8 -0
  1520. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/fixnum_extension.rb +10 -0
  1521. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/http_library_adapters.rb +289 -0
  1522. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/limited_uri.rb +31 -0
  1523. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/ruby_interpreter.rb +7 -0
  1524. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/shared_example_groups/excon.rb +63 -0
  1525. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/shared_example_groups/hook_into_http_library.rb +593 -0
  1526. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/shared_example_groups/request_hooks.rb +59 -0
  1527. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/sinatra_app.rb +86 -0
  1528. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/vcr_localhost_server.rb +77 -0
  1529. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/support/vcr_stub_helpers.rb +17 -0
  1530. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/erb_renderer_spec.rb +53 -0
  1531. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/http_interaction_list_spec.rb +295 -0
  1532. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/migrator_spec.rb +195 -0
  1533. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/persisters/file_system_spec.rb +69 -0
  1534. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/persisters_spec.rb +39 -0
  1535. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette/serializers_spec.rb +176 -0
  1536. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/cassette_spec.rb +618 -0
  1537. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/configuration_spec.rb +326 -0
  1538. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/deprecations_spec.rb +85 -0
  1539. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/errors_spec.rb +162 -0
  1540. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/extensions/net_http_response_spec.rb +86 -0
  1541. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/excon_spec.rb +104 -0
  1542. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/fakeweb_spec.rb +169 -0
  1543. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/faraday_spec.rb +68 -0
  1544. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/typhoeus_0.4_spec.rb +36 -0
  1545. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/typhoeus_spec.rb +162 -0
  1546. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks/webmock_spec.rb +118 -0
  1547. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/library_hooks_spec.rb +51 -0
  1548. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/middleware/faraday_spec.rb +182 -0
  1549. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/middleware/rack_spec.rb +115 -0
  1550. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/request_ignorer_spec.rb +70 -0
  1551. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/request_matcher_registry_spec.rb +345 -0
  1552. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/structs_spec.rb +732 -0
  1553. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/test_frameworks/cucumber_spec.rb +107 -0
  1554. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/test_frameworks/rspec_spec.rb +83 -0
  1555. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/util/hooks_spec.rb +158 -0
  1556. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/util/internet_connection_spec.rb +37 -0
  1557. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/util/version_checker_spec.rb +31 -0
  1558. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr/version_spec.rb +27 -0
  1559. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/spec/vcr_spec.rb +349 -0
  1560. data/vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/vcr.gemspec +23 -0
  1561. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/.gemtest +0 -0
  1562. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/.gitignore +33 -0
  1563. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/.rspec-tm +2 -0
  1564. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/.travis.yml +26 -0
  1565. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/CHANGELOG.md +1241 -0
  1566. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/Gemfile +18 -0
  1567. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/LICENSE +20 -0
  1568. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/README.md +1000 -0
  1569. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/Rakefile +53 -0
  1570. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/api.rb +96 -0
  1571. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/assertion_failure.rb +11 -0
  1572. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/callback_registry.rb +35 -0
  1573. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/config.rb +18 -0
  1574. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/cucumber.rb +8 -0
  1575. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/deprecation.rb +9 -0
  1576. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/errors.rb +17 -0
  1577. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/curb_adapter.rb +272 -0
  1578. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/em_http_request/em_http_request_0_x.rb +147 -0
  1579. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/em_http_request/em_http_request_1_x.rb +229 -0
  1580. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/em_http_request_adapter.rb +11 -0
  1581. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/excon_adapter.rb +154 -0
  1582. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_lib_adapter.rb +7 -0
  1583. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_lib_adapter_registry.rb +19 -0
  1584. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb/client.rb +14 -0
  1585. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb/request.rb +10 -0
  1586. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb/response.rb +22 -0
  1587. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb/streamer.rb +25 -0
  1588. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb/webmock.rb +62 -0
  1589. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/http_rb_adapter.rb +37 -0
  1590. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/httpclient_adapter.rb +214 -0
  1591. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/manticore_adapter.rb +123 -0
  1592. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/net_http.rb +321 -0
  1593. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/net_http_response.rb +34 -0
  1594. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/patron_adapter.rb +126 -0
  1595. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/http_lib_adapters/typhoeus_hydra_adapter.rb +170 -0
  1596. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/matchers/hash_including_matcher.rb +36 -0
  1597. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/minitest.rb +39 -0
  1598. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/rack_response.rb +69 -0
  1599. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_body_diff.rb +63 -0
  1600. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_execution_verifier.rb +78 -0
  1601. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_pattern.rb +320 -0
  1602. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_registry.rb +35 -0
  1603. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_signature.rb +54 -0
  1604. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_signature_snippet.rb +61 -0
  1605. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/request_stub.rb +100 -0
  1606. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/response.rb +158 -0
  1607. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/responses_sequence.rb +40 -0
  1608. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/rspec/matchers/request_pattern_matcher.rb +78 -0
  1609. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/rspec/matchers/webmock_matcher.rb +52 -0
  1610. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/rspec/matchers.rb +27 -0
  1611. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/rspec.rb +33 -0
  1612. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/stub_registry.rb +67 -0
  1613. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/stub_request_snippet.rb +34 -0
  1614. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/test_unit.rb +20 -0
  1615. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/hash_counter.rb +32 -0
  1616. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/hash_keys_stringifier.rb +25 -0
  1617. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/hash_validator.rb +17 -0
  1618. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/headers.rb +43 -0
  1619. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/json.rb +78 -0
  1620. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/query_mapper.rb +278 -0
  1621. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/uri.rb +111 -0
  1622. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/util/version_checker.rb +94 -0
  1623. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/version.rb +3 -0
  1624. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock/webmock.rb +150 -0
  1625. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/lib/webmock.rb +56 -0
  1626. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/minitest/test_helper.rb +34 -0
  1627. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/minitest/test_webmock.rb +9 -0
  1628. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/minitest/webmock_spec.rb +60 -0
  1629. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/curb/curb_spec.rb +418 -0
  1630. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/curb/curb_spec_helper.rb +144 -0
  1631. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/em_http_request/em_http_request_spec.rb +406 -0
  1632. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/em_http_request/em_http_request_spec_helper.rb +73 -0
  1633. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/excon/excon_spec.rb +75 -0
  1634. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/excon/excon_spec_helper.rb +43 -0
  1635. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/http_rb/http_rb_spec.rb +59 -0
  1636. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/http_rb/http_rb_spec_helper.rb +43 -0
  1637. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/httpclient/httpclient_spec.rb +164 -0
  1638. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/httpclient/httpclient_spec_helper.rb +48 -0
  1639. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/manticore/manticore_spec.rb +56 -0
  1640. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/manticore/manticore_spec_helper.rb +31 -0
  1641. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/net_http/net_http_shared.rb +142 -0
  1642. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/net_http/net_http_spec.rb +301 -0
  1643. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/net_http/net_http_spec_helper.rb +55 -0
  1644. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/net_http/real_net_http_spec.rb +20 -0
  1645. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/patron/patron_spec.rb +136 -0
  1646. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/patron/patron_spec_helper.rb +51 -0
  1647. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/allowing_and_disabling_net_connect.rb +142 -0
  1648. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/callbacks.rb +146 -0
  1649. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/complex_cross_concern_behaviors.rb +36 -0
  1650. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/enabling_and_disabling_webmock.rb +95 -0
  1651. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/precedence_of_stubs.rb +15 -0
  1652. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/request_expectations.rb +859 -0
  1653. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/returning_declared_responses.rb +388 -0
  1654. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/shared/stubbing_requests.rb +528 -0
  1655. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/typhoeus/typhoeus_hydra_spec.rb +135 -0
  1656. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/typhoeus/typhoeus_hydra_spec_helper.rb +57 -0
  1657. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/acceptance/webmock_shared.rb +41 -0
  1658. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/quality_spec.rb +84 -0
  1659. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/spec_helper.rb +59 -0
  1660. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/support/example_curl_output.txt +22 -0
  1661. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/support/my_rack_app.rb +53 -0
  1662. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/support/network_connection.rb +25 -0
  1663. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/support/webmock_server.rb +69 -0
  1664. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/api_spec.rb +75 -0
  1665. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/errors_spec.rb +129 -0
  1666. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/http_lib_adapters/http_lib_adapter_registry_spec.rb +17 -0
  1667. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/http_lib_adapters/http_lib_adapter_spec.rb +12 -0
  1668. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/matchers/hash_including_matcher_spec.rb +87 -0
  1669. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/rack_response_spec.rb +102 -0
  1670. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_body_diff_spec.rb +90 -0
  1671. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_execution_verifier_spec.rb +208 -0
  1672. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_pattern_spec.rb +572 -0
  1673. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_registry_spec.rb +76 -0
  1674. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_signature_snippet_spec.rb +89 -0
  1675. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_signature_spec.rb +155 -0
  1676. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/request_stub_spec.rb +199 -0
  1677. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/response_spec.rb +282 -0
  1678. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/stub_registry_spec.rb +103 -0
  1679. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/stub_request_snippet_spec.rb +95 -0
  1680. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/hash_counter_spec.rb +39 -0
  1681. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/hash_keys_stringifier_spec.rb +27 -0
  1682. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/headers_spec.rb +28 -0
  1683. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/json_spec.rb +33 -0
  1684. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/query_mapper_spec.rb +115 -0
  1685. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/uri_spec.rb +299 -0
  1686. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/util/version_checker_spec.rb +59 -0
  1687. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/spec/unit/webmock_spec.rb +11 -0
  1688. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/test/http_request.rb +24 -0
  1689. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/test/shared_test.rb +88 -0
  1690. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/test/test_helper.rb +23 -0
  1691. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/test/test_webmock.rb +6 -0
  1692. data/vendor/bundle/ruby/2.2.0/gems/webmock-1.22.3/webmock.gemspec +42 -0
  1693. data/vendor/bundle/ruby/2.2.0/specifications/ZenTest-4.11.0.gemspec +43 -0
  1694. data/vendor/bundle/ruby/2.2.0/specifications/addressable-2.4.0.gemspec +36 -0
  1695. data/vendor/bundle/ruby/2.2.0/specifications/autotest-4.4.6.gemspec +44 -0
  1696. data/vendor/bundle/ruby/2.2.0/specifications/autotest-fsevent-0.2.11.gemspec +45 -0
  1697. data/vendor/bundle/ruby/2.2.0/specifications/autotest-growl-0.2.16.gemspec +39 -0
  1698. data/vendor/bundle/ruby/2.2.0/specifications/autotest-rails-pure-4.1.2.gemspec +18 -0
  1699. data/vendor/bundle/ruby/2.2.0/specifications/crack-0.4.3.gemspec +32 -0
  1700. data/vendor/bundle/ruby/2.2.0/specifications/diff-lcs-1.2.5.gemspec +68 -0
  1701. data/vendor/bundle/ruby/2.2.0/specifications/ethon-0.8.0.gemspec +32 -0
  1702. data/vendor/bundle/ruby/2.2.0/specifications/ffi-1.9.10.gemspec +49 -0
  1703. data/vendor/bundle/ruby/2.2.0/specifications/hashdiff-0.2.3.gemspec +39 -0
  1704. data/vendor/bundle/ruby/2.2.0/specifications/json-1.8.3.gemspec +0 -0
  1705. data/vendor/bundle/ruby/2.2.0/specifications/rspec-3.4.0.gemspec +42 -0
  1706. data/vendor/bundle/ruby/2.2.0/specifications/rspec-core-3.4.1.gemspec +68 -0
  1707. data/vendor/bundle/ruby/2.2.0/specifications/rspec-expectations-3.4.0.gemspec +50 -0
  1708. data/vendor/bundle/ruby/2.2.0/specifications/rspec-mocks-3.4.0.gemspec +50 -0
  1709. data/vendor/bundle/ruby/2.2.0/specifications/rspec-support-3.4.1.gemspec +41 -0
  1710. data/vendor/bundle/ruby/2.2.0/specifications/safe_yaml-1.0.4.gemspec +23 -0
  1711. data/vendor/bundle/ruby/2.2.0/specifications/sys-uname-1.0.2.gemspec +35 -0
  1712. data/vendor/bundle/ruby/2.2.0/specifications/typhoeus-0.8.0.gemspec +32 -0
  1713. data/vendor/bundle/ruby/2.2.0/specifications/vcr-2.9.3.gemspec +21 -0
  1714. data/vendor/bundle/ruby/2.2.0/specifications/webmock-1.22.3.gemspec +72 -0
  1715. metadata +1755 -46
@@ -0,0 +1,2424 @@
1
+ # encoding:utf-8
2
+ #--
3
+ # Copyright (C) 2006-2015 Bob Aman
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ #++
17
+
18
+
19
+ require "addressable/version"
20
+ require "addressable/idna"
21
+
22
+ ##
23
+ # Addressable is a library for processing links and URIs.
24
+ module Addressable
25
+ ##
26
+ # This is an implementation of a URI parser based on
27
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>,
28
+ # <a href="http://www.ietf.org/rfc/rfc3987.txt">RFC 3987</a>.
29
+ class URI
30
+ ##
31
+ # Raised if something other than a uri is supplied.
32
+ class InvalidURIError < StandardError
33
+ end
34
+
35
+ ##
36
+ # Container for the character classes specified in
37
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
38
+ module CharacterClasses
39
+ ALPHA = "a-zA-Z"
40
+ DIGIT = "0-9"
41
+ GEN_DELIMS = "\\:\\/\\?\\#\\[\\]\\@"
42
+ SUB_DELIMS = "\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\="
43
+ RESERVED = GEN_DELIMS + SUB_DELIMS
44
+ UNRESERVED = ALPHA + DIGIT + "\\-\\.\\_\\~"
45
+ PCHAR = UNRESERVED + SUB_DELIMS + "\\:\\@"
46
+ SCHEME = ALPHA + DIGIT + "\\-\\+\\."
47
+ HOST = ALPHA + DIGIT + "\\-\\.\\[\\:\\]"
48
+ AUTHORITY = PCHAR
49
+ PATH = PCHAR + "\\/"
50
+ QUERY = PCHAR + "\\/\\?"
51
+ FRAGMENT = PCHAR + "\\/\\?"
52
+ end
53
+
54
+ SLASH = '/'
55
+ EMPTY_STR = ''
56
+
57
+ URIREGEX = /^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/
58
+
59
+ PORT_MAPPING = {
60
+ "http" => 80,
61
+ "https" => 443,
62
+ "ftp" => 21,
63
+ "tftp" => 69,
64
+ "sftp" => 22,
65
+ "ssh" => 22,
66
+ "svn+ssh" => 22,
67
+ "telnet" => 23,
68
+ "nntp" => 119,
69
+ "gopher" => 70,
70
+ "wais" => 210,
71
+ "ldap" => 389,
72
+ "prospero" => 1525
73
+ }
74
+
75
+ ##
76
+ # Returns a URI object based on the parsed string.
77
+ #
78
+ # @param [String, Addressable::URI, #to_str] uri
79
+ # The URI string to parse.
80
+ # No parsing is performed if the object is already an
81
+ # <code>Addressable::URI</code>.
82
+ #
83
+ # @return [Addressable::URI] The parsed URI.
84
+ def self.parse(uri)
85
+ # If we were given nil, return nil.
86
+ return nil unless uri
87
+ # If a URI object is passed, just return itself.
88
+ return uri.dup if uri.kind_of?(self)
89
+
90
+ # If a URI object of the Ruby standard library variety is passed,
91
+ # convert it to a string, then parse the string.
92
+ # We do the check this way because we don't want to accidentally
93
+ # cause a missing constant exception to be thrown.
94
+ if uri.class.name =~ /^URI\b/
95
+ uri = uri.to_s
96
+ end
97
+
98
+ # Otherwise, convert to a String
99
+ begin
100
+ uri = uri.to_str
101
+ rescue TypeError, NoMethodError
102
+ raise TypeError, "Can't convert #{uri.class} into String."
103
+ end if not uri.is_a? String
104
+
105
+ # This Regexp supplied as an example in RFC 3986, and it works great.
106
+ scan = uri.scan(URIREGEX)
107
+ fragments = scan[0]
108
+ scheme = fragments[1]
109
+ authority = fragments[3]
110
+ path = fragments[4]
111
+ query = fragments[6]
112
+ fragment = fragments[8]
113
+ user = nil
114
+ password = nil
115
+ host = nil
116
+ port = nil
117
+ if authority != nil
118
+ # The Regexp above doesn't split apart the authority.
119
+ userinfo = authority[/^([^\[\]]*)@/, 1]
120
+ if userinfo != nil
121
+ user = userinfo.strip[/^([^:]*):?/, 1]
122
+ password = userinfo.strip[/:(.*)$/, 1]
123
+ end
124
+ host = authority.gsub(
125
+ /^([^\[\]]*)@/, EMPTY_STR
126
+ ).gsub(
127
+ /:([^:@\[\]]*?)$/, EMPTY_STR
128
+ )
129
+ port = authority[/:([^:@\[\]]*?)$/, 1]
130
+ end
131
+ if port == EMPTY_STR
132
+ port = nil
133
+ end
134
+
135
+ return new(
136
+ :scheme => scheme,
137
+ :user => user,
138
+ :password => password,
139
+ :host => host,
140
+ :port => port,
141
+ :path => path,
142
+ :query => query,
143
+ :fragment => fragment
144
+ )
145
+ end
146
+
147
+ ##
148
+ # Converts an input to a URI. The input does not have to be a valid
149
+ # URI — the method will use heuristics to guess what URI was intended.
150
+ # This is not standards-compliant, merely user-friendly.
151
+ #
152
+ # @param [String, Addressable::URI, #to_str] uri
153
+ # The URI string to parse.
154
+ # No parsing is performed if the object is already an
155
+ # <code>Addressable::URI</code>.
156
+ # @param [Hash] hints
157
+ # A <code>Hash</code> of hints to the heuristic parser.
158
+ # Defaults to <code>{:scheme => "http"}</code>.
159
+ #
160
+ # @return [Addressable::URI] The parsed URI.
161
+ def self.heuristic_parse(uri, hints={})
162
+ # If we were given nil, return nil.
163
+ return nil unless uri
164
+ # If a URI object is passed, just return itself.
165
+ return uri.dup if uri.kind_of?(self)
166
+
167
+ # If a URI object of the Ruby standard library variety is passed,
168
+ # convert it to a string, then parse the string.
169
+ # We do the check this way because we don't want to accidentally
170
+ # cause a missing constant exception to be thrown.
171
+ if uri.class.name =~ /^URI\b/
172
+ uri = uri.to_s
173
+ end
174
+
175
+ if !uri.respond_to?(:to_str)
176
+ raise TypeError, "Can't convert #{uri.class} into String."
177
+ end
178
+ # Otherwise, convert to a String
179
+ uri = uri.to_str.dup
180
+ hints = {
181
+ :scheme => "http"
182
+ }.merge(hints)
183
+ case uri
184
+ when /^http:\/+/
185
+ uri.gsub!(/^http:\/+/, "http://")
186
+ when /^https:\/+/
187
+ uri.gsub!(/^https:\/+/, "https://")
188
+ when /^feed:\/+http:\/+/
189
+ uri.gsub!(/^feed:\/+http:\/+/, "feed:http://")
190
+ when /^feed:\/+/
191
+ uri.gsub!(/^feed:\/+/, "feed://")
192
+ when /^file:\/+/
193
+ uri.gsub!(/^file:\/+/, "file:///")
194
+ when /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/
195
+ uri.gsub!(/^/, hints[:scheme] + "://")
196
+ end
197
+ parsed = self.parse(uri)
198
+ if parsed.scheme =~ /^[^\/?#\.]+\.[^\/?#]+$/
199
+ parsed = self.parse(hints[:scheme] + "://" + uri)
200
+ end
201
+ if parsed.path.include?(".")
202
+ new_host = parsed.path[/^([^\/]+\.[^\/]*)/, 1]
203
+ if new_host
204
+ parsed.defer_validation do
205
+ new_path = parsed.path.gsub(
206
+ Regexp.new("^" + Regexp.escape(new_host)), EMPTY_STR)
207
+ parsed.host = new_host
208
+ parsed.path = new_path
209
+ parsed.scheme = hints[:scheme] unless parsed.scheme
210
+ end
211
+ end
212
+ end
213
+ return parsed
214
+ end
215
+
216
+ ##
217
+ # Converts a path to a file scheme URI. If the path supplied is
218
+ # relative, it will be returned as a relative URI. If the path supplied
219
+ # is actually a non-file URI, it will parse the URI as if it had been
220
+ # parsed with <code>Addressable::URI.parse</code>. Handles all of the
221
+ # various Microsoft-specific formats for specifying paths.
222
+ #
223
+ # @param [String, Addressable::URI, #to_str] path
224
+ # Typically a <code>String</code> path to a file or directory, but
225
+ # will return a sensible return value if an absolute URI is supplied
226
+ # instead.
227
+ #
228
+ # @return [Addressable::URI]
229
+ # The parsed file scheme URI or the original URI if some other URI
230
+ # scheme was provided.
231
+ #
232
+ # @example
233
+ # base = Addressable::URI.convert_path("/absolute/path/")
234
+ # uri = Addressable::URI.convert_path("relative/path")
235
+ # (base + uri).to_s
236
+ # #=> "file:///absolute/path/relative/path"
237
+ #
238
+ # Addressable::URI.convert_path(
239
+ # "c:\\windows\\My Documents 100%20\\foo.txt"
240
+ # ).to_s
241
+ # #=> "file:///c:/windows/My%20Documents%20100%20/foo.txt"
242
+ #
243
+ # Addressable::URI.convert_path("http://example.com/").to_s
244
+ # #=> "http://example.com/"
245
+ def self.convert_path(path)
246
+ # If we were given nil, return nil.
247
+ return nil unless path
248
+ # If a URI object is passed, just return itself.
249
+ return path if path.kind_of?(self)
250
+ if !path.respond_to?(:to_str)
251
+ raise TypeError, "Can't convert #{path.class} into String."
252
+ end
253
+ # Otherwise, convert to a String
254
+ path = path.to_str.strip
255
+
256
+ path.gsub!(/^file:\/?\/?/, EMPTY_STR) if path =~ /^file:\/?\/?/
257
+ path = SLASH + path if path =~ /^([a-zA-Z])[\|:]/
258
+ uri = self.parse(path)
259
+
260
+ if uri.scheme == nil
261
+ # Adjust windows-style uris
262
+ uri.path.gsub!(/^\/?([a-zA-Z])[\|:][\\\/]/) do
263
+ "/#{$1.downcase}:/"
264
+ end
265
+ uri.path.gsub!(/\\/, SLASH)
266
+ if File.exist?(uri.path) &&
267
+ File.stat(uri.path).directory?
268
+ uri.path.gsub!(/\/$/, EMPTY_STR)
269
+ uri.path = uri.path + '/'
270
+ end
271
+
272
+ # If the path is absolute, set the scheme and host.
273
+ if uri.path =~ /^\//
274
+ uri.scheme = "file"
275
+ uri.host = EMPTY_STR
276
+ end
277
+ uri.normalize!
278
+ end
279
+
280
+ return uri
281
+ end
282
+
283
+ ##
284
+ # Joins several URIs together.
285
+ #
286
+ # @param [String, Addressable::URI, #to_str] *uris
287
+ # The URIs to join.
288
+ #
289
+ # @return [Addressable::URI] The joined URI.
290
+ #
291
+ # @example
292
+ # base = "http://example.com/"
293
+ # uri = Addressable::URI.parse("relative/path")
294
+ # Addressable::URI.join(base, uri)
295
+ # #=> #<Addressable::URI:0xcab390 URI:http://example.com/relative/path>
296
+ def self.join(*uris)
297
+ uri_objects = uris.collect do |uri|
298
+ if !uri.respond_to?(:to_str)
299
+ raise TypeError, "Can't convert #{uri.class} into String."
300
+ end
301
+ uri.kind_of?(self) ? uri : self.parse(uri.to_str)
302
+ end
303
+ result = uri_objects.shift.dup
304
+ for uri in uri_objects
305
+ result.join!(uri)
306
+ end
307
+ return result
308
+ end
309
+
310
+ ##
311
+ # Percent encodes a URI component.
312
+ #
313
+ # @param [String, #to_str] component The URI component to encode.
314
+ #
315
+ # @param [String, Regexp] character_class
316
+ # The characters which are not percent encoded. If a <code>String</code>
317
+ # is passed, the <code>String</code> must be formatted as a regular
318
+ # expression character class. (Do not include the surrounding square
319
+ # brackets.) For example, <code>"b-zB-Z0-9"</code> would cause
320
+ # everything but the letters 'b' through 'z' and the numbers '0' through
321
+ # '9' to be percent encoded. If a <code>Regexp</code> is passed, the
322
+ # value <code>/[^b-zB-Z0-9]/</code> would have the same effect. A set of
323
+ # useful <code>String</code> values may be found in the
324
+ # <code>Addressable::URI::CharacterClasses</code> module. The default
325
+ # value is the reserved plus unreserved character classes specified in
326
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
327
+ #
328
+ # @param [Regexp] upcase_encoded
329
+ # A string of characters that may already be percent encoded, and whose
330
+ # encodings should be upcased. This allows normalization of percent
331
+ # encodings for characters not included in the
332
+ # <code>character_class</code>.
333
+ #
334
+ # @return [String] The encoded component.
335
+ #
336
+ # @example
337
+ # Addressable::URI.encode_component("simple/example", "b-zB-Z0-9")
338
+ # => "simple%2Fex%61mple"
339
+ # Addressable::URI.encode_component("simple/example", /[^b-zB-Z0-9]/)
340
+ # => "simple%2Fex%61mple"
341
+ # Addressable::URI.encode_component(
342
+ # "simple/example", Addressable::URI::CharacterClasses::UNRESERVED
343
+ # )
344
+ # => "simple%2Fexample"
345
+ def self.encode_component(component, character_class=
346
+ CharacterClasses::RESERVED + CharacterClasses::UNRESERVED,
347
+ upcase_encoded='')
348
+ return nil if component.nil?
349
+
350
+ begin
351
+ if component.kind_of?(Symbol) ||
352
+ component.kind_of?(Numeric) ||
353
+ component.kind_of?(TrueClass) ||
354
+ component.kind_of?(FalseClass)
355
+ component = component.to_s
356
+ else
357
+ component = component.to_str
358
+ end
359
+ rescue TypeError, NoMethodError
360
+ raise TypeError, "Can't convert #{component.class} into String."
361
+ end if !component.is_a? String
362
+
363
+ if ![String, Regexp].include?(character_class.class)
364
+ raise TypeError,
365
+ "Expected String or Regexp, got #{character_class.inspect}"
366
+ end
367
+ if character_class.kind_of?(String)
368
+ character_class = /[^#{character_class}]/
369
+ end
370
+ if component.respond_to?(:force_encoding)
371
+ # We can't perform regexps on invalid UTF sequences, but
372
+ # here we need to, so switch to ASCII.
373
+ component = component.dup
374
+ component.force_encoding(Encoding::ASCII_8BIT)
375
+ end
376
+ # Avoiding gsub! because there are edge cases with frozen strings
377
+ component = component.gsub(character_class) do |sequence|
378
+ (sequence.unpack('C*').map { |c| "%" + ("%02x" % c).upcase }).join
379
+ end
380
+ if upcase_encoded.length > 0
381
+ component = component.gsub(/%(#{upcase_encoded.chars.map do |char|
382
+ char.unpack('C*').map { |c| '%02x' % c }.join
383
+ end.join('|')})/i) { |s| s.upcase }
384
+ end
385
+ return component
386
+ end
387
+
388
+ class << self
389
+ alias_method :encode_component, :encode_component
390
+ end
391
+
392
+ ##
393
+ # Unencodes any percent encoded characters within a URI component.
394
+ # This method may be used for unencoding either components or full URIs,
395
+ # however, it is recommended to use the <code>unencode_component</code>
396
+ # alias when unencoding components.
397
+ #
398
+ # @param [String, Addressable::URI, #to_str] uri
399
+ # The URI or component to unencode.
400
+ #
401
+ # @param [Class] return_type
402
+ # The type of object to return.
403
+ # This value may only be set to <code>String</code> or
404
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
405
+ # to <code>String</code>.
406
+ #
407
+ # @param [String] leave_encoded
408
+ # A string of characters to leave encoded. If a percent encoded character
409
+ # in this list is encountered then it will remain percent encoded.
410
+ #
411
+ # @return [String, Addressable::URI]
412
+ # The unencoded component or URI.
413
+ # The return type is determined by the <code>return_type</code>
414
+ # parameter.
415
+ def self.unencode(uri, return_type=String, leave_encoded='')
416
+ return nil if uri.nil?
417
+
418
+ begin
419
+ uri = uri.to_str
420
+ rescue NoMethodError, TypeError
421
+ raise TypeError, "Can't convert #{uri.class} into String."
422
+ end if !uri.is_a? String
423
+ if ![String, ::Addressable::URI].include?(return_type)
424
+ raise TypeError,
425
+ "Expected Class (String or Addressable::URI), " +
426
+ "got #{return_type.inspect}"
427
+ end
428
+ uri = uri.dup
429
+ # Seriously, only use UTF-8. I'm really not kidding!
430
+ uri.force_encoding("utf-8") if uri.respond_to?(:force_encoding)
431
+ leave_encoded.force_encoding("utf-8") if leave_encoded.respond_to?(:force_encoding)
432
+ result = uri.gsub(/%[0-9a-f]{2}/iu) do |sequence|
433
+ c = sequence[1..3].to_i(16).chr
434
+ c.force_encoding("utf-8") if c.respond_to?(:force_encoding)
435
+ leave_encoded.include?(c) ? sequence : c
436
+ end
437
+ result.force_encoding("utf-8") if result.respond_to?(:force_encoding)
438
+ if return_type == String
439
+ return result
440
+ elsif return_type == ::Addressable::URI
441
+ return ::Addressable::URI.parse(result)
442
+ end
443
+ end
444
+
445
+ class << self
446
+ alias_method :unescape, :unencode
447
+ alias_method :unencode_component, :unencode
448
+ alias_method :unescape_component, :unencode
449
+ end
450
+
451
+
452
+ ##
453
+ # Normalizes the encoding of a URI component.
454
+ #
455
+ # @param [String, #to_str] component The URI component to encode.
456
+ #
457
+ # @param [String, Regexp] character_class
458
+ # The characters which are not percent encoded. If a <code>String</code>
459
+ # is passed, the <code>String</code> must be formatted as a regular
460
+ # expression character class. (Do not include the surrounding square
461
+ # brackets.) For example, <code>"b-zB-Z0-9"</code> would cause
462
+ # everything but the letters 'b' through 'z' and the numbers '0'
463
+ # through '9' to be percent encoded. If a <code>Regexp</code> is passed,
464
+ # the value <code>/[^b-zB-Z0-9]/</code> would have the same effect. A
465
+ # set of useful <code>String</code> values may be found in the
466
+ # <code>Addressable::URI::CharacterClasses</code> module. The default
467
+ # value is the reserved plus unreserved character classes specified in
468
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
469
+ #
470
+ # @param [String] leave_encoded
471
+ # When <code>character_class</code> is a <code>String</code> then
472
+ # <code>leave_encoded</code> is a string of characters that should remain
473
+ # percent encoded while normalizing the component; if they appear percent
474
+ # encoded in the original component, then they will be upcased ("%2f"
475
+ # normalized to "%2F") but otherwise left alone.
476
+ #
477
+ # @return [String] The normalized component.
478
+ #
479
+ # @example
480
+ # Addressable::URI.normalize_component("simpl%65/%65xampl%65", "b-zB-Z")
481
+ # => "simple%2Fex%61mple"
482
+ # Addressable::URI.normalize_component(
483
+ # "simpl%65/%65xampl%65", /[^b-zB-Z]/
484
+ # )
485
+ # => "simple%2Fex%61mple"
486
+ # Addressable::URI.normalize_component(
487
+ # "simpl%65/%65xampl%65",
488
+ # Addressable::URI::CharacterClasses::UNRESERVED
489
+ # )
490
+ # => "simple%2Fexample"
491
+ # Addressable::URI.normalize_component(
492
+ # "one%20two%2fthree%26four",
493
+ # "0-9a-zA-Z &/",
494
+ # "/"
495
+ # )
496
+ # => "one two%2Fthree&four"
497
+ def self.normalize_component(component, character_class=
498
+ CharacterClasses::RESERVED + CharacterClasses::UNRESERVED,
499
+ leave_encoded='')
500
+ return nil if component.nil?
501
+
502
+ begin
503
+ component = component.to_str
504
+ rescue NoMethodError, TypeError
505
+ raise TypeError, "Can't convert #{component.class} into String."
506
+ end if !component.is_a? String
507
+
508
+ if ![String, Regexp].include?(character_class.class)
509
+ raise TypeError,
510
+ "Expected String or Regexp, got #{character_class.inspect}"
511
+ end
512
+ if character_class.kind_of?(String)
513
+ leave_re = if leave_encoded.length > 0
514
+ character_class = "#{character_class}%" unless character_class.include?('%')
515
+
516
+ "|%(?!#{leave_encoded.chars.map do |char|
517
+ seq = char.unpack('C*').map { |c| '%02x' % c }.join
518
+ [seq.upcase, seq.downcase]
519
+ end.flatten.join('|')})"
520
+ end
521
+
522
+ character_class = /[^#{character_class}]#{leave_re}/
523
+ end
524
+ if component.respond_to?(:force_encoding)
525
+ # We can't perform regexps on invalid UTF sequences, but
526
+ # here we need to, so switch to ASCII.
527
+ component = component.dup
528
+ component.force_encoding(Encoding::ASCII_8BIT)
529
+ end
530
+ unencoded = self.unencode_component(component, String, leave_encoded)
531
+ begin
532
+ encoded = self.encode_component(
533
+ Addressable::IDNA.unicode_normalize_kc(unencoded),
534
+ character_class,
535
+ leave_encoded
536
+ )
537
+ rescue ArgumentError
538
+ encoded = self.encode_component(unencoded)
539
+ end
540
+ if encoded.respond_to?(:force_encoding)
541
+ encoded.force_encoding(Encoding::UTF_8)
542
+ end
543
+ return encoded
544
+ end
545
+
546
+ ##
547
+ # Percent encodes any special characters in the URI.
548
+ #
549
+ # @param [String, Addressable::URI, #to_str] uri
550
+ # The URI to encode.
551
+ #
552
+ # @param [Class] return_type
553
+ # The type of object to return.
554
+ # This value may only be set to <code>String</code> or
555
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
556
+ # to <code>String</code>.
557
+ #
558
+ # @return [String, Addressable::URI]
559
+ # The encoded URI.
560
+ # The return type is determined by the <code>return_type</code>
561
+ # parameter.
562
+ def self.encode(uri, return_type=String)
563
+ return nil if uri.nil?
564
+
565
+ begin
566
+ uri = uri.to_str
567
+ rescue NoMethodError, TypeError
568
+ raise TypeError, "Can't convert #{uri.class} into String."
569
+ end if !uri.is_a? String
570
+
571
+ if ![String, ::Addressable::URI].include?(return_type)
572
+ raise TypeError,
573
+ "Expected Class (String or Addressable::URI), " +
574
+ "got #{return_type.inspect}"
575
+ end
576
+ uri_object = uri.kind_of?(self) ? uri : self.parse(uri)
577
+ encoded_uri = Addressable::URI.new(
578
+ :scheme => self.encode_component(uri_object.scheme,
579
+ Addressable::URI::CharacterClasses::SCHEME),
580
+ :authority => self.encode_component(uri_object.authority,
581
+ Addressable::URI::CharacterClasses::AUTHORITY),
582
+ :path => self.encode_component(uri_object.path,
583
+ Addressable::URI::CharacterClasses::PATH),
584
+ :query => self.encode_component(uri_object.query,
585
+ Addressable::URI::CharacterClasses::QUERY),
586
+ :fragment => self.encode_component(uri_object.fragment,
587
+ Addressable::URI::CharacterClasses::FRAGMENT)
588
+ )
589
+ if return_type == String
590
+ return encoded_uri.to_s
591
+ elsif return_type == ::Addressable::URI
592
+ return encoded_uri
593
+ end
594
+ end
595
+
596
+ class << self
597
+ alias_method :escape, :encode
598
+ end
599
+
600
+ ##
601
+ # Normalizes the encoding of a URI. Characters within a hostname are
602
+ # not percent encoded to allow for internationalized domain names.
603
+ #
604
+ # @param [String, Addressable::URI, #to_str] uri
605
+ # The URI to encode.
606
+ #
607
+ # @param [Class] return_type
608
+ # The type of object to return.
609
+ # This value may only be set to <code>String</code> or
610
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
611
+ # to <code>String</code>.
612
+ #
613
+ # @return [String, Addressable::URI]
614
+ # The encoded URI.
615
+ # The return type is determined by the <code>return_type</code>
616
+ # parameter.
617
+ def self.normalized_encode(uri, return_type=String)
618
+ begin
619
+ uri = uri.to_str
620
+ rescue NoMethodError, TypeError
621
+ raise TypeError, "Can't convert #{uri.class} into String."
622
+ end if !uri.is_a? String
623
+
624
+ if ![String, ::Addressable::URI].include?(return_type)
625
+ raise TypeError,
626
+ "Expected Class (String or Addressable::URI), " +
627
+ "got #{return_type.inspect}"
628
+ end
629
+ uri_object = uri.kind_of?(self) ? uri : self.parse(uri)
630
+ components = {
631
+ :scheme => self.unencode_component(uri_object.scheme),
632
+ :user => self.unencode_component(uri_object.user),
633
+ :password => self.unencode_component(uri_object.password),
634
+ :host => self.unencode_component(uri_object.host),
635
+ :port => (uri_object.port.nil? ? nil : uri_object.port.to_s),
636
+ :path => self.unencode_component(uri_object.path),
637
+ :query => self.unencode_component(uri_object.query),
638
+ :fragment => self.unencode_component(uri_object.fragment)
639
+ }
640
+ components.each do |key, value|
641
+ if value != nil
642
+ begin
643
+ components[key] =
644
+ Addressable::IDNA.unicode_normalize_kc(value.to_str)
645
+ rescue ArgumentError
646
+ # Likely a malformed UTF-8 character, skip unicode normalization
647
+ components[key] = value.to_str
648
+ end
649
+ end
650
+ end
651
+ encoded_uri = Addressable::URI.new(
652
+ :scheme => self.encode_component(components[:scheme],
653
+ Addressable::URI::CharacterClasses::SCHEME),
654
+ :user => self.encode_component(components[:user],
655
+ Addressable::URI::CharacterClasses::UNRESERVED),
656
+ :password => self.encode_component(components[:password],
657
+ Addressable::URI::CharacterClasses::UNRESERVED),
658
+ :host => components[:host],
659
+ :port => components[:port],
660
+ :path => self.encode_component(components[:path],
661
+ Addressable::URI::CharacterClasses::PATH),
662
+ :query => self.encode_component(components[:query],
663
+ Addressable::URI::CharacterClasses::QUERY),
664
+ :fragment => self.encode_component(components[:fragment],
665
+ Addressable::URI::CharacterClasses::FRAGMENT)
666
+ )
667
+ if return_type == String
668
+ return encoded_uri.to_s
669
+ elsif return_type == ::Addressable::URI
670
+ return encoded_uri
671
+ end
672
+ end
673
+
674
+ ##
675
+ # Encodes a set of key/value pairs according to the rules for the
676
+ # <code>application/x-www-form-urlencoded</code> MIME type.
677
+ #
678
+ # @param [#to_hash, #to_ary] form_values
679
+ # The form values to encode.
680
+ #
681
+ # @param [TrueClass, FalseClass] sort
682
+ # Sort the key/value pairs prior to encoding.
683
+ # Defaults to <code>false</code>.
684
+ #
685
+ # @return [String]
686
+ # The encoded value.
687
+ def self.form_encode(form_values, sort=false)
688
+ if form_values.respond_to?(:to_hash)
689
+ form_values = form_values.to_hash.to_a
690
+ elsif form_values.respond_to?(:to_ary)
691
+ form_values = form_values.to_ary
692
+ else
693
+ raise TypeError, "Can't convert #{form_values.class} into Array."
694
+ end
695
+
696
+ form_values = form_values.inject([]) do |accu, (key, value)|
697
+ if value.kind_of?(Array)
698
+ value.each do |v|
699
+ accu << [key.to_s, v.to_s]
700
+ end
701
+ else
702
+ accu << [key.to_s, value.to_s]
703
+ end
704
+ accu
705
+ end
706
+
707
+ if sort
708
+ # Useful for OAuth and optimizing caching systems
709
+ form_values = form_values.sort
710
+ end
711
+ escaped_form_values = form_values.map do |(key, value)|
712
+ # Line breaks are CRLF pairs
713
+ [
714
+ self.encode_component(
715
+ key.gsub(/(\r\n|\n|\r)/, "\r\n"),
716
+ CharacterClasses::UNRESERVED
717
+ ).gsub("%20", "+"),
718
+ self.encode_component(
719
+ value.gsub(/(\r\n|\n|\r)/, "\r\n"),
720
+ CharacterClasses::UNRESERVED
721
+ ).gsub("%20", "+")
722
+ ]
723
+ end
724
+ return escaped_form_values.map do |(key, value)|
725
+ "#{key}=#{value}"
726
+ end.join("&")
727
+ end
728
+
729
+ ##
730
+ # Decodes a <code>String</code> according to the rules for the
731
+ # <code>application/x-www-form-urlencoded</code> MIME type.
732
+ #
733
+ # @param [String, #to_str] encoded_value
734
+ # The form values to decode.
735
+ #
736
+ # @return [Array]
737
+ # The decoded values.
738
+ # This is not a <code>Hash</code> because of the possibility for
739
+ # duplicate keys.
740
+ def self.form_unencode(encoded_value)
741
+ if !encoded_value.respond_to?(:to_str)
742
+ raise TypeError, "Can't convert #{encoded_value.class} into String."
743
+ end
744
+ encoded_value = encoded_value.to_str
745
+ split_values = encoded_value.split("&").map do |pair|
746
+ pair.split("=", 2)
747
+ end
748
+ return split_values.map do |(key, value)|
749
+ [
750
+ key ? self.unencode_component(
751
+ key.gsub("+", "%20")).gsub(/(\r\n|\n|\r)/, "\n") : nil,
752
+ value ? (self.unencode_component(
753
+ value.gsub("+", "%20")).gsub(/(\r\n|\n|\r)/, "\n")) : nil
754
+ ]
755
+ end
756
+ end
757
+
758
+ ##
759
+ # Creates a new uri object from component parts.
760
+ #
761
+ # @option [String, #to_str] scheme The scheme component.
762
+ # @option [String, #to_str] user The user component.
763
+ # @option [String, #to_str] password The password component.
764
+ # @option [String, #to_str] userinfo
765
+ # The userinfo component. If this is supplied, the user and password
766
+ # components must be omitted.
767
+ # @option [String, #to_str] host The host component.
768
+ # @option [String, #to_str] port The port component.
769
+ # @option [String, #to_str] authority
770
+ # The authority component. If this is supplied, the user, password,
771
+ # userinfo, host, and port components must be omitted.
772
+ # @option [String, #to_str] path The path component.
773
+ # @option [String, #to_str] query The query component.
774
+ # @option [String, #to_str] fragment The fragment component.
775
+ #
776
+ # @return [Addressable::URI] The constructed URI object.
777
+ def initialize(options={})
778
+ if options.has_key?(:authority)
779
+ if (options.keys & [:userinfo, :user, :password, :host, :port]).any?
780
+ raise ArgumentError,
781
+ "Cannot specify both an authority and any of the components " +
782
+ "within the authority."
783
+ end
784
+ end
785
+ if options.has_key?(:userinfo)
786
+ if (options.keys & [:user, :password]).any?
787
+ raise ArgumentError,
788
+ "Cannot specify both a userinfo and either the user or password."
789
+ end
790
+ end
791
+
792
+ self.defer_validation do
793
+ # Bunch of crazy logic required because of the composite components
794
+ # like userinfo and authority.
795
+ self.scheme = options[:scheme] if options[:scheme]
796
+ self.user = options[:user] if options[:user]
797
+ self.password = options[:password] if options[:password]
798
+ self.userinfo = options[:userinfo] if options[:userinfo]
799
+ self.host = options[:host] if options[:host]
800
+ self.port = options[:port] if options[:port]
801
+ self.authority = options[:authority] if options[:authority]
802
+ self.path = options[:path] if options[:path]
803
+ self.query = options[:query] if options[:query]
804
+ self.query_values = options[:query_values] if options[:query_values]
805
+ self.fragment = options[:fragment] if options[:fragment]
806
+ end
807
+ self.to_s
808
+ end
809
+
810
+ ##
811
+ # Freeze URI, initializing instance variables.
812
+ #
813
+ # @return [Addressable::URI] The frozen URI object.
814
+ def freeze
815
+ self.normalized_scheme
816
+ self.normalized_user
817
+ self.normalized_password
818
+ self.normalized_userinfo
819
+ self.normalized_host
820
+ self.normalized_port
821
+ self.normalized_authority
822
+ self.normalized_site
823
+ self.normalized_path
824
+ self.normalized_query
825
+ self.normalized_fragment
826
+ self.hash
827
+ super
828
+ end
829
+
830
+ ##
831
+ # The scheme component for this URI.
832
+ #
833
+ # @return [String] The scheme component.
834
+ def scheme
835
+ return defined?(@scheme) ? @scheme : nil
836
+ end
837
+
838
+ ##
839
+ # The scheme component for this URI, normalized.
840
+ #
841
+ # @return [String] The scheme component, normalized.
842
+ def normalized_scheme
843
+ return nil unless self.scheme
844
+ @normalized_scheme ||= begin
845
+ if self.scheme =~ /^\s*ssh\+svn\s*$/i
846
+ "svn+ssh"
847
+ else
848
+ Addressable::URI.normalize_component(
849
+ self.scheme.strip.downcase,
850
+ Addressable::URI::CharacterClasses::SCHEME
851
+ )
852
+ end
853
+ end
854
+ end
855
+
856
+ ##
857
+ # Sets the scheme component for this URI.
858
+ #
859
+ # @param [String, #to_str] new_scheme The new scheme component.
860
+ def scheme=(new_scheme)
861
+ if new_scheme && !new_scheme.respond_to?(:to_str)
862
+ raise TypeError, "Can't convert #{new_scheme.class} into String."
863
+ elsif new_scheme
864
+ new_scheme = new_scheme.to_str
865
+ end
866
+ if new_scheme && new_scheme !~ /\A[a-z][a-z0-9\.\+\-]*\z/i
867
+ raise InvalidURIError, "Invalid scheme format: #{new_scheme}"
868
+ end
869
+ @scheme = new_scheme
870
+ @scheme = nil if @scheme.to_s.strip.empty?
871
+
872
+ # Reset dependent values
873
+ remove_instance_variable(:@normalized_scheme) if defined?(@normalized_scheme)
874
+ remove_composite_values
875
+
876
+ # Ensure we haven't created an invalid URI
877
+ validate()
878
+ end
879
+
880
+ ##
881
+ # The user component for this URI.
882
+ #
883
+ # @return [String] The user component.
884
+ def user
885
+ return defined?(@user) ? @user : nil
886
+ end
887
+
888
+ ##
889
+ # The user component for this URI, normalized.
890
+ #
891
+ # @return [String] The user component, normalized.
892
+ def normalized_user
893
+ return nil unless self.user
894
+ return @normalized_user if defined?(@normalized_user)
895
+ @normalized_user ||= begin
896
+ if normalized_scheme =~ /https?/ && self.user.strip.empty? &&
897
+ (!self.password || self.password.strip.empty?)
898
+ nil
899
+ else
900
+ Addressable::URI.normalize_component(
901
+ self.user.strip,
902
+ Addressable::URI::CharacterClasses::UNRESERVED
903
+ )
904
+ end
905
+ end
906
+ end
907
+
908
+ ##
909
+ # Sets the user component for this URI.
910
+ #
911
+ # @param [String, #to_str] new_user The new user component.
912
+ def user=(new_user)
913
+ if new_user && !new_user.respond_to?(:to_str)
914
+ raise TypeError, "Can't convert #{new_user.class} into String."
915
+ end
916
+ @user = new_user ? new_user.to_str : nil
917
+
918
+ # You can't have a nil user with a non-nil password
919
+ if password != nil
920
+ @user = EMPTY_STR if @user.nil?
921
+ end
922
+
923
+ # Reset dependent values
924
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
925
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
926
+ remove_instance_variable(:@authority) if defined?(@authority)
927
+ remove_instance_variable(:@normalized_user) if defined?(@normalized_user)
928
+ remove_composite_values
929
+
930
+ # Ensure we haven't created an invalid URI
931
+ validate()
932
+ end
933
+
934
+ ##
935
+ # The password component for this URI.
936
+ #
937
+ # @return [String] The password component.
938
+ def password
939
+ return defined?(@password) ? @password : nil
940
+ end
941
+
942
+ ##
943
+ # The password component for this URI, normalized.
944
+ #
945
+ # @return [String] The password component, normalized.
946
+ def normalized_password
947
+ return nil unless self.password
948
+ return @normalized_password if defined?(@normalized_password)
949
+ @normalized_password ||= begin
950
+ if self.normalized_scheme =~ /https?/ && self.password.strip.empty? &&
951
+ (!self.user || self.user.strip.empty?)
952
+ nil
953
+ else
954
+ Addressable::URI.normalize_component(
955
+ self.password.strip,
956
+ Addressable::URI::CharacterClasses::UNRESERVED
957
+ )
958
+ end
959
+ end
960
+ end
961
+
962
+ ##
963
+ # Sets the password component for this URI.
964
+ #
965
+ # @param [String, #to_str] new_password The new password component.
966
+ def password=(new_password)
967
+ if new_password && !new_password.respond_to?(:to_str)
968
+ raise TypeError, "Can't convert #{new_password.class} into String."
969
+ end
970
+ @password = new_password ? new_password.to_str : nil
971
+
972
+ # You can't have a nil user with a non-nil password
973
+ @password ||= nil
974
+ @user ||= nil
975
+ if @password != nil
976
+ @user = EMPTY_STR if @user.nil?
977
+ end
978
+
979
+ # Reset dependent values
980
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
981
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
982
+ remove_instance_variable(:@authority) if defined?(@authority)
983
+ remove_instance_variable(:@normalized_password) if defined?(@normalized_password)
984
+ remove_composite_values
985
+
986
+ # Ensure we haven't created an invalid URI
987
+ validate()
988
+ end
989
+
990
+ ##
991
+ # The userinfo component for this URI.
992
+ # Combines the user and password components.
993
+ #
994
+ # @return [String] The userinfo component.
995
+ def userinfo
996
+ current_user = self.user
997
+ current_password = self.password
998
+ (current_user || current_password) && @userinfo ||= begin
999
+ if current_user && current_password
1000
+ "#{current_user}:#{current_password}"
1001
+ elsif current_user && !current_password
1002
+ "#{current_user}"
1003
+ end
1004
+ end
1005
+ end
1006
+
1007
+ ##
1008
+ # The userinfo component for this URI, normalized.
1009
+ #
1010
+ # @return [String] The userinfo component, normalized.
1011
+ def normalized_userinfo
1012
+ return nil unless self.userinfo
1013
+ return @normalized_userinfo if defined?(@normalized_userinfo)
1014
+ @normalized_userinfo ||= begin
1015
+ current_user = self.normalized_user
1016
+ current_password = self.normalized_password
1017
+ if !current_user && !current_password
1018
+ nil
1019
+ elsif current_user && current_password
1020
+ "#{current_user}:#{current_password}"
1021
+ elsif current_user && !current_password
1022
+ "#{current_user}"
1023
+ end
1024
+ end
1025
+ end
1026
+
1027
+ ##
1028
+ # Sets the userinfo component for this URI.
1029
+ #
1030
+ # @param [String, #to_str] new_userinfo The new userinfo component.
1031
+ def userinfo=(new_userinfo)
1032
+ if new_userinfo && !new_userinfo.respond_to?(:to_str)
1033
+ raise TypeError, "Can't convert #{new_userinfo.class} into String."
1034
+ end
1035
+ new_user, new_password = if new_userinfo
1036
+ [
1037
+ new_userinfo.to_str.strip[/^(.*):/, 1],
1038
+ new_userinfo.to_str.strip[/:(.*)$/, 1]
1039
+ ]
1040
+ else
1041
+ [nil, nil]
1042
+ end
1043
+
1044
+ # Password assigned first to ensure validity in case of nil
1045
+ self.password = new_password
1046
+ self.user = new_user
1047
+
1048
+ # Reset dependent values
1049
+ remove_instance_variable(:@authority) if defined?(@authority)
1050
+ remove_composite_values
1051
+
1052
+ # Ensure we haven't created an invalid URI
1053
+ validate()
1054
+ end
1055
+
1056
+ ##
1057
+ # The host component for this URI.
1058
+ #
1059
+ # @return [String] The host component.
1060
+ def host
1061
+ return defined?(@host) ? @host : nil
1062
+ end
1063
+
1064
+ ##
1065
+ # The host component for this URI, normalized.
1066
+ #
1067
+ # @return [String] The host component, normalized.
1068
+ def normalized_host
1069
+ return nil unless self.host
1070
+ @normalized_host ||= begin
1071
+ if !self.host.strip.empty?
1072
+ result = ::Addressable::IDNA.to_ascii(
1073
+ URI.unencode_component(self.host.strip.downcase)
1074
+ )
1075
+ if result =~ /[^\.]\.$/
1076
+ # Single trailing dots are unnecessary.
1077
+ result = result[0...-1]
1078
+ end
1079
+ result = Addressable::URI.normalize_component(
1080
+ result,
1081
+ CharacterClasses::HOST)
1082
+ result
1083
+ else
1084
+ EMPTY_STR
1085
+ end
1086
+ end
1087
+ end
1088
+
1089
+ ##
1090
+ # Sets the host component for this URI.
1091
+ #
1092
+ # @param [String, #to_str] new_host The new host component.
1093
+ def host=(new_host)
1094
+ if new_host && !new_host.respond_to?(:to_str)
1095
+ raise TypeError, "Can't convert #{new_host.class} into String."
1096
+ end
1097
+ @host = new_host ? new_host.to_str : nil
1098
+
1099
+ unreserved = CharacterClasses::UNRESERVED
1100
+ sub_delims = CharacterClasses::SUB_DELIMS
1101
+ if !@host.nil? && (@host =~ /[<>{}\/\?\#\@"[[:space:]]]/ ||
1102
+ (@host[/^\[(.*)\]$/, 1] != nil && @host[/^\[(.*)\]$/, 1] !~
1103
+ Regexp.new("^[#{unreserved}#{sub_delims}:]*$")))
1104
+ raise InvalidURIError, "Invalid character in host: '#{@host.to_s}'"
1105
+ end
1106
+
1107
+ # Reset dependent values
1108
+ remove_instance_variable(:@authority) if defined?(@authority)
1109
+ remove_instance_variable(:@normalized_host) if defined?(@normalized_host)
1110
+ remove_composite_values
1111
+
1112
+ # Ensure we haven't created an invalid URI
1113
+ validate()
1114
+ end
1115
+
1116
+ ##
1117
+ # This method is same as URI::Generic#host except
1118
+ # brackets for IPv6 (and 'IPvFuture') addresses are removed.
1119
+ #
1120
+ # @see Addressable::URI#host
1121
+ #
1122
+ # @return [String] The hostname for this URI.
1123
+ def hostname
1124
+ v = self.host
1125
+ /\A\[(.*)\]\z/ =~ v ? $1 : v
1126
+ end
1127
+
1128
+ ##
1129
+ # This method is same as URI::Generic#host= except
1130
+ # the argument can be a bare IPv6 address (or 'IPvFuture').
1131
+ #
1132
+ # @see Addressable::URI#host=
1133
+ #
1134
+ # @param [String, #to_str] new_hostname The new hostname for this URI.
1135
+ def hostname=(new_hostname)
1136
+ if new_hostname &&
1137
+ (new_hostname.respond_to?(:ipv4?) || new_hostname.respond_to?(:ipv6?))
1138
+ new_hostname = new_hostname.to_s
1139
+ elsif new_hostname && !new_hostname.respond_to?(:to_str)
1140
+ raise TypeError, "Can't convert #{new_hostname.class} into String."
1141
+ end
1142
+ v = new_hostname ? new_hostname.to_str : nil
1143
+ v = "[#{v}]" if /\A\[.*\]\z/ !~ v && /:/ =~ v
1144
+ self.host = v
1145
+ end
1146
+
1147
+ ##
1148
+ # The authority component for this URI.
1149
+ # Combines the user, password, host, and port components.
1150
+ #
1151
+ # @return [String] The authority component.
1152
+ def authority
1153
+ self.host && @authority ||= begin
1154
+ authority = ""
1155
+ if self.userinfo != nil
1156
+ authority << "#{self.userinfo}@"
1157
+ end
1158
+ authority << self.host
1159
+ if self.port != nil
1160
+ authority << ":#{self.port}"
1161
+ end
1162
+ authority
1163
+ end
1164
+ end
1165
+
1166
+ ##
1167
+ # The authority component for this URI, normalized.
1168
+ #
1169
+ # @return [String] The authority component, normalized.
1170
+ def normalized_authority
1171
+ return nil unless self.authority
1172
+ @normalized_authority ||= begin
1173
+ authority = ""
1174
+ if self.normalized_userinfo != nil
1175
+ authority << "#{self.normalized_userinfo}@"
1176
+ end
1177
+ authority << self.normalized_host
1178
+ if self.normalized_port != nil
1179
+ authority << ":#{self.normalized_port}"
1180
+ end
1181
+ authority
1182
+ end
1183
+ end
1184
+
1185
+ ##
1186
+ # Sets the authority component for this URI.
1187
+ #
1188
+ # @param [String, #to_str] new_authority The new authority component.
1189
+ def authority=(new_authority)
1190
+ if new_authority
1191
+ if !new_authority.respond_to?(:to_str)
1192
+ raise TypeError, "Can't convert #{new_authority.class} into String."
1193
+ end
1194
+ new_authority = new_authority.to_str
1195
+ new_userinfo = new_authority[/^([^\[\]]*)@/, 1]
1196
+ if new_userinfo
1197
+ new_user = new_userinfo.strip[/^([^:]*):?/, 1]
1198
+ new_password = new_userinfo.strip[/:(.*)$/, 1]
1199
+ end
1200
+ new_host = new_authority.gsub(
1201
+ /^([^\[\]]*)@/, EMPTY_STR
1202
+ ).gsub(
1203
+ /:([^:@\[\]]*?)$/, EMPTY_STR
1204
+ )
1205
+ new_port =
1206
+ new_authority[/:([^:@\[\]]*?)$/, 1]
1207
+ end
1208
+
1209
+ # Password assigned first to ensure validity in case of nil
1210
+ self.password = defined?(new_password) ? new_password : nil
1211
+ self.user = defined?(new_user) ? new_user : nil
1212
+ self.host = defined?(new_host) ? new_host : nil
1213
+ self.port = defined?(new_port) ? new_port : nil
1214
+
1215
+ # Reset dependent values
1216
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
1217
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
1218
+ remove_composite_values
1219
+
1220
+ # Ensure we haven't created an invalid URI
1221
+ validate()
1222
+ end
1223
+
1224
+ ##
1225
+ # The origin for this URI, serialized to ASCII, as per
1226
+ # RFC 6454, section 6.2.
1227
+ #
1228
+ # @return [String] The serialized origin.
1229
+ def origin
1230
+ if self.scheme && self.authority
1231
+ if self.normalized_port
1232
+ "#{self.normalized_scheme}://#{self.normalized_host}" +
1233
+ ":#{self.normalized_port}"
1234
+ else
1235
+ "#{self.normalized_scheme}://#{self.normalized_host}"
1236
+ end
1237
+ else
1238
+ "null"
1239
+ end
1240
+ end
1241
+
1242
+ ##
1243
+ # Sets the origin for this URI, serialized to ASCII, as per
1244
+ # RFC 6454, section 6.2. This assignment will reset the `userinfo`
1245
+ # component.
1246
+ #
1247
+ # @param [String, #to_str] new_origin The new origin component.
1248
+ def origin=(new_origin)
1249
+ if new_origin
1250
+ if !new_origin.respond_to?(:to_str)
1251
+ raise TypeError, "Can't convert #{new_origin.class} into String."
1252
+ end
1253
+ new_origin = new_origin.to_str
1254
+ new_scheme = new_origin[/^([^:\/?#]+):\/\//, 1]
1255
+ unless new_scheme
1256
+ raise InvalidURIError, 'An origin cannot omit the scheme.'
1257
+ end
1258
+ new_host = new_origin[/:\/\/([^\/?#:]+)/, 1]
1259
+ unless new_host
1260
+ raise InvalidURIError, 'An origin cannot omit the host.'
1261
+ end
1262
+ new_port = new_origin[/:([^:@\[\]\/]*?)$/, 1]
1263
+ end
1264
+
1265
+ self.scheme = defined?(new_scheme) ? new_scheme : nil
1266
+ self.host = defined?(new_host) ? new_host : nil
1267
+ self.port = defined?(new_port) ? new_port : nil
1268
+ self.userinfo = nil
1269
+
1270
+ # Reset dependent values
1271
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
1272
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
1273
+ remove_instance_variable(:@authority) if defined?(@authority)
1274
+ remove_instance_variable(:@normalized_authority) if defined?(@normalized_authority)
1275
+ remove_composite_values
1276
+
1277
+ # Ensure we haven't created an invalid URI
1278
+ validate()
1279
+ end
1280
+
1281
+ # Returns an array of known ip-based schemes. These schemes typically
1282
+ # use a similar URI form:
1283
+ # <code>//<user>:<password>@<host>:<port>/<url-path></code>
1284
+ def self.ip_based_schemes
1285
+ return self.port_mapping.keys
1286
+ end
1287
+
1288
+ # Returns a hash of common IP-based schemes and their default port
1289
+ # numbers. Adding new schemes to this hash, as necessary, will allow
1290
+ # for better URI normalization.
1291
+ def self.port_mapping
1292
+ PORT_MAPPING
1293
+ end
1294
+
1295
+ ##
1296
+ # The port component for this URI.
1297
+ # This is the port number actually given in the URI. This does not
1298
+ # infer port numbers from default values.
1299
+ #
1300
+ # @return [Integer] The port component.
1301
+ def port
1302
+ return defined?(@port) ? @port : nil
1303
+ end
1304
+
1305
+ ##
1306
+ # The port component for this URI, normalized.
1307
+ #
1308
+ # @return [Integer] The port component, normalized.
1309
+ def normalized_port
1310
+ return nil unless self.port
1311
+ return @normalized_port if defined?(@normalized_port)
1312
+ @normalized_port ||= begin
1313
+ if URI.port_mapping[self.normalized_scheme] == self.port
1314
+ nil
1315
+ else
1316
+ self.port
1317
+ end
1318
+ end
1319
+ end
1320
+
1321
+ ##
1322
+ # Sets the port component for this URI.
1323
+ #
1324
+ # @param [String, Integer, #to_s] new_port The new port component.
1325
+ def port=(new_port)
1326
+ if new_port != nil && new_port.respond_to?(:to_str)
1327
+ new_port = Addressable::URI.unencode_component(new_port.to_str)
1328
+ end
1329
+
1330
+ if new_port.respond_to?(:valid_encoding?) && !new_port.valid_encoding?
1331
+ raise InvalidURIError, "Invalid encoding in port"
1332
+ end
1333
+
1334
+ if new_port != nil && !(new_port.to_s =~ /^\d+$/)
1335
+ raise InvalidURIError,
1336
+ "Invalid port number: #{new_port.inspect}"
1337
+ end
1338
+
1339
+ @port = new_port.to_s.to_i
1340
+ @port = nil if @port == 0
1341
+
1342
+ # Reset dependent values
1343
+ remove_instance_variable(:@authority) if defined?(@authority)
1344
+ remove_instance_variable(:@normalized_port) if defined?(@normalized_port)
1345
+ remove_composite_values
1346
+
1347
+ # Ensure we haven't created an invalid URI
1348
+ validate()
1349
+ end
1350
+
1351
+ ##
1352
+ # The inferred port component for this URI.
1353
+ # This method will normalize to the default port for the URI's scheme if
1354
+ # the port isn't explicitly specified in the URI.
1355
+ #
1356
+ # @return [Integer] The inferred port component.
1357
+ def inferred_port
1358
+ if self.port.to_i == 0
1359
+ self.default_port
1360
+ else
1361
+ self.port.to_i
1362
+ end
1363
+ end
1364
+
1365
+ ##
1366
+ # The default port for this URI's scheme.
1367
+ # This method will always returns the default port for the URI's scheme
1368
+ # regardless of the presence of an explicit port in the URI.
1369
+ #
1370
+ # @return [Integer] The default port.
1371
+ def default_port
1372
+ URI.port_mapping[self.scheme.strip.downcase] if self.scheme
1373
+ end
1374
+
1375
+ ##
1376
+ # The combination of components that represent a site.
1377
+ # Combines the scheme, user, password, host, and port components.
1378
+ # Primarily useful for HTTP and HTTPS.
1379
+ #
1380
+ # For example, <code>"http://example.com/path?query"</code> would have a
1381
+ # <code>site</code> value of <code>"http://example.com"</code>.
1382
+ #
1383
+ # @return [String] The components that identify a site.
1384
+ def site
1385
+ (self.scheme || self.authority) && @site ||= begin
1386
+ site_string = ""
1387
+ site_string << "#{self.scheme}:" if self.scheme != nil
1388
+ site_string << "//#{self.authority}" if self.authority != nil
1389
+ site_string
1390
+ end
1391
+ end
1392
+
1393
+ ##
1394
+ # The normalized combination of components that represent a site.
1395
+ # Combines the scheme, user, password, host, and port components.
1396
+ # Primarily useful for HTTP and HTTPS.
1397
+ #
1398
+ # For example, <code>"http://example.com/path?query"</code> would have a
1399
+ # <code>site</code> value of <code>"http://example.com"</code>.
1400
+ #
1401
+ # @return [String] The normalized components that identify a site.
1402
+ def normalized_site
1403
+ return nil unless self.site
1404
+ @normalized_site ||= begin
1405
+ site_string = ""
1406
+ if self.normalized_scheme != nil
1407
+ site_string << "#{self.normalized_scheme}:"
1408
+ end
1409
+ if self.normalized_authority != nil
1410
+ site_string << "//#{self.normalized_authority}"
1411
+ end
1412
+ site_string
1413
+ end
1414
+ end
1415
+
1416
+ ##
1417
+ # Sets the site value for this URI.
1418
+ #
1419
+ # @param [String, #to_str] new_site The new site value.
1420
+ def site=(new_site)
1421
+ if new_site
1422
+ if !new_site.respond_to?(:to_str)
1423
+ raise TypeError, "Can't convert #{new_site.class} into String."
1424
+ end
1425
+ new_site = new_site.to_str
1426
+ # These two regular expressions derived from the primary parsing
1427
+ # expression
1428
+ self.scheme = new_site[/^(?:([^:\/?#]+):)?(?:\/\/(?:[^\/?#]*))?$/, 1]
1429
+ self.authority = new_site[
1430
+ /^(?:(?:[^:\/?#]+):)?(?:\/\/([^\/?#]*))?$/, 1
1431
+ ]
1432
+ else
1433
+ self.scheme = nil
1434
+ self.authority = nil
1435
+ end
1436
+ end
1437
+
1438
+ ##
1439
+ # The path component for this URI.
1440
+ #
1441
+ # @return [String] The path component.
1442
+ def path
1443
+ return defined?(@path) ? @path : EMPTY_STR
1444
+ end
1445
+
1446
+ NORMPATH = /^(?!\/)[^\/:]*:.*$/
1447
+ ##
1448
+ # The path component for this URI, normalized.
1449
+ #
1450
+ # @return [String] The path component, normalized.
1451
+ def normalized_path
1452
+ @normalized_path ||= begin
1453
+ path = self.path.to_s
1454
+ if self.scheme == nil && path =~ NORMPATH
1455
+ # Relative paths with colons in the first segment are ambiguous.
1456
+ path = path.sub(":", "%2F")
1457
+ end
1458
+ # String#split(delimeter, -1) uses the more strict splitting behavior
1459
+ # found by default in Python.
1460
+ result = path.strip.split(SLASH, -1).map do |segment|
1461
+ Addressable::URI.normalize_component(
1462
+ segment,
1463
+ Addressable::URI::CharacterClasses::PCHAR
1464
+ )
1465
+ end.join(SLASH)
1466
+
1467
+ result = URI.normalize_path(result)
1468
+ if result.empty? &&
1469
+ ["http", "https", "ftp", "tftp"].include?(self.normalized_scheme)
1470
+ result = SLASH
1471
+ end
1472
+ result
1473
+ end
1474
+ end
1475
+
1476
+ ##
1477
+ # Sets the path component for this URI.
1478
+ #
1479
+ # @param [String, #to_str] new_path The new path component.
1480
+ def path=(new_path)
1481
+ if new_path && !new_path.respond_to?(:to_str)
1482
+ raise TypeError, "Can't convert #{new_path.class} into String."
1483
+ end
1484
+ @path = (new_path || EMPTY_STR).to_str
1485
+ if !@path.empty? && @path[0..0] != SLASH && host != nil
1486
+ @path = "/#{@path}"
1487
+ end
1488
+
1489
+ # Reset dependent values
1490
+ remove_instance_variable(:@normalized_path) if defined?(@normalized_path)
1491
+ remove_composite_values
1492
+ end
1493
+
1494
+ ##
1495
+ # The basename, if any, of the file in the path component.
1496
+ #
1497
+ # @return [String] The path's basename.
1498
+ def basename
1499
+ # Path cannot be nil
1500
+ return File.basename(self.path).gsub(/;[^\/]*$/, EMPTY_STR)
1501
+ end
1502
+
1503
+ ##
1504
+ # The extname, if any, of the file in the path component.
1505
+ # Empty string if there is no extension.
1506
+ #
1507
+ # @return [String] The path's extname.
1508
+ def extname
1509
+ return nil unless self.path
1510
+ return File.extname(self.basename)
1511
+ end
1512
+
1513
+ ##
1514
+ # The query component for this URI.
1515
+ #
1516
+ # @return [String] The query component.
1517
+ def query
1518
+ return defined?(@query) ? @query : nil
1519
+ end
1520
+
1521
+ ##
1522
+ # The query component for this URI, normalized.
1523
+ #
1524
+ # @return [String] The query component, normalized.
1525
+ def normalized_query(*flags)
1526
+ return nil unless self.query
1527
+ return @normalized_query if defined?(@normalized_query)
1528
+ @normalized_query ||= begin
1529
+ modified_query_class = Addressable::URI::CharacterClasses::QUERY.dup
1530
+ # Make sure possible key-value pair delimiters are escaped.
1531
+ modified_query_class.sub!("\\&", "").sub!("\\;", "")
1532
+ pairs = (self.query || "").split("&", -1)
1533
+ pairs.sort! if flags.include?(:sorted)
1534
+ component = pairs.map do |pair|
1535
+ Addressable::URI.normalize_component(pair, modified_query_class, "+")
1536
+ end.join("&")
1537
+ component == "" ? nil : component
1538
+ end
1539
+ end
1540
+
1541
+ ##
1542
+ # Sets the query component for this URI.
1543
+ #
1544
+ # @param [String, #to_str] new_query The new query component.
1545
+ def query=(new_query)
1546
+ if new_query && !new_query.respond_to?(:to_str)
1547
+ raise TypeError, "Can't convert #{new_query.class} into String."
1548
+ end
1549
+ @query = new_query ? new_query.to_str : nil
1550
+
1551
+ # Reset dependent values
1552
+ remove_instance_variable(:@normalized_query) if defined?(@normalized_query)
1553
+ remove_composite_values
1554
+ end
1555
+
1556
+ ##
1557
+ # Converts the query component to a Hash value.
1558
+ #
1559
+ # @param [Class] return_type The return type desired. Value must be either
1560
+ # `Hash` or `Array`.
1561
+ #
1562
+ # @return [Hash, Array, nil] The query string parsed as a Hash or Array
1563
+ # or nil if the query string is blank.
1564
+ #
1565
+ # @example
1566
+ # Addressable::URI.parse("?one=1&two=2&three=3").query_values
1567
+ # #=> {"one" => "1", "two" => "2", "three" => "3"}
1568
+ # Addressable::URI.parse("?one=two&one=three").query_values(Array)
1569
+ # #=> [["one", "two"], ["one", "three"]]
1570
+ # Addressable::URI.parse("?one=two&one=three").query_values(Hash)
1571
+ # #=> {"one" => "three"}
1572
+ # Addressable::URI.parse("?").query_values
1573
+ # #=> {}
1574
+ # Addressable::URI.parse("").query_values
1575
+ # #=> nil
1576
+ def query_values(return_type=Hash)
1577
+ empty_accumulator = Array == return_type ? [] : {}
1578
+ if return_type != Hash && return_type != Array
1579
+ raise ArgumentError, "Invalid return type. Must be Hash or Array."
1580
+ end
1581
+ return nil if self.query == nil
1582
+ split_query = self.query.split("&").map do |pair|
1583
+ pair.split("=", 2) if pair && !pair.empty?
1584
+ end.compact
1585
+ return split_query.inject(empty_accumulator.dup) do |accu, pair|
1586
+ # I'd rather use key/value identifiers instead of array lookups,
1587
+ # but in this case I really want to maintain the exact pair structure,
1588
+ # so it's best to make all changes in-place.
1589
+ pair[0] = URI.unencode_component(pair[0])
1590
+ if pair[1].respond_to?(:to_str)
1591
+ # I loathe the fact that I have to do this. Stupid HTML 4.01.
1592
+ # Treating '+' as a space was just an unbelievably bad idea.
1593
+ # There was nothing wrong with '%20'!
1594
+ # If it ain't broke, don't fix it!
1595
+ pair[1] = URI.unencode_component(pair[1].to_str.gsub(/\+/, " "))
1596
+ end
1597
+ if return_type == Hash
1598
+ accu[pair[0]] = pair[1]
1599
+ else
1600
+ accu << pair
1601
+ end
1602
+ accu
1603
+ end
1604
+ end
1605
+
1606
+ ##
1607
+ # Sets the query component for this URI from a Hash object.
1608
+ # An empty Hash or Array will result in an empty query string.
1609
+ #
1610
+ # @param [Hash, #to_hash, Array] new_query_values The new query values.
1611
+ #
1612
+ # @example
1613
+ # uri.query_values = {:a => "a", :b => ["c", "d", "e"]}
1614
+ # uri.query
1615
+ # # => "a=a&b=c&b=d&b=e"
1616
+ # uri.query_values = [['a', 'a'], ['b', 'c'], ['b', 'd'], ['b', 'e']]
1617
+ # uri.query
1618
+ # # => "a=a&b=c&b=d&b=e"
1619
+ # uri.query_values = [['a', 'a'], ['b', ['c', 'd', 'e']]]
1620
+ # uri.query
1621
+ # # => "a=a&b=c&b=d&b=e"
1622
+ # uri.query_values = [['flag'], ['key', 'value']]
1623
+ # uri.query
1624
+ # # => "flag&key=value"
1625
+ def query_values=(new_query_values)
1626
+ if new_query_values == nil
1627
+ self.query = nil
1628
+ return nil
1629
+ end
1630
+
1631
+ if !new_query_values.is_a?(Array)
1632
+ if !new_query_values.respond_to?(:to_hash)
1633
+ raise TypeError,
1634
+ "Can't convert #{new_query_values.class} into Hash."
1635
+ end
1636
+ new_query_values = new_query_values.to_hash
1637
+ new_query_values = new_query_values.map do |key, value|
1638
+ key = key.to_s if key.kind_of?(Symbol)
1639
+ [key, value]
1640
+ end
1641
+ # Useful default for OAuth and caching.
1642
+ # Only to be used for non-Array inputs. Arrays should preserve order.
1643
+ new_query_values.sort!
1644
+ end
1645
+
1646
+ # new_query_values have form [['key1', 'value1'], ['key2', 'value2']]
1647
+ buffer = ""
1648
+ new_query_values.each do |key, value|
1649
+ encoded_key = URI.encode_component(
1650
+ key, CharacterClasses::UNRESERVED
1651
+ )
1652
+ if value == nil
1653
+ buffer << "#{encoded_key}&"
1654
+ elsif value.kind_of?(Array)
1655
+ value.each do |sub_value|
1656
+ encoded_value = URI.encode_component(
1657
+ sub_value, CharacterClasses::UNRESERVED
1658
+ )
1659
+ buffer << "#{encoded_key}=#{encoded_value}&"
1660
+ end
1661
+ else
1662
+ encoded_value = URI.encode_component(
1663
+ value, CharacterClasses::UNRESERVED
1664
+ )
1665
+ buffer << "#{encoded_key}=#{encoded_value}&"
1666
+ end
1667
+ end
1668
+ self.query = buffer.chop
1669
+ end
1670
+
1671
+ ##
1672
+ # The HTTP request URI for this URI. This is the path and the
1673
+ # query string.
1674
+ #
1675
+ # @return [String] The request URI required for an HTTP request.
1676
+ def request_uri
1677
+ return nil if self.absolute? && self.scheme !~ /^https?$/
1678
+ return (
1679
+ (!self.path.empty? ? self.path : SLASH) +
1680
+ (self.query ? "?#{self.query}" : EMPTY_STR)
1681
+ )
1682
+ end
1683
+
1684
+ ##
1685
+ # Sets the HTTP request URI for this URI.
1686
+ #
1687
+ # @param [String, #to_str] new_request_uri The new HTTP request URI.
1688
+ def request_uri=(new_request_uri)
1689
+ if !new_request_uri.respond_to?(:to_str)
1690
+ raise TypeError, "Can't convert #{new_request_uri.class} into String."
1691
+ end
1692
+ if self.absolute? && self.scheme !~ /^https?$/
1693
+ raise InvalidURIError,
1694
+ "Cannot set an HTTP request URI for a non-HTTP URI."
1695
+ end
1696
+ new_request_uri = new_request_uri.to_str
1697
+ path_component = new_request_uri[/^([^\?]*)\?(?:.*)$/, 1]
1698
+ query_component = new_request_uri[/^(?:[^\?]*)\?(.*)$/, 1]
1699
+ path_component = path_component.to_s
1700
+ path_component = (!path_component.empty? ? path_component : SLASH)
1701
+ self.path = path_component
1702
+ self.query = query_component
1703
+
1704
+ # Reset dependent values
1705
+ remove_composite_values
1706
+ end
1707
+
1708
+ ##
1709
+ # The fragment component for this URI.
1710
+ #
1711
+ # @return [String] The fragment component.
1712
+ def fragment
1713
+ return defined?(@fragment) ? @fragment : nil
1714
+ end
1715
+
1716
+ ##
1717
+ # The fragment component for this URI, normalized.
1718
+ #
1719
+ # @return [String] The fragment component, normalized.
1720
+ def normalized_fragment
1721
+ return nil unless self.fragment
1722
+ return @normalized_fragment if defined?(@normalized_fragment)
1723
+ @normalized_fragment ||= begin
1724
+ component = Addressable::URI.normalize_component(
1725
+ self.fragment,
1726
+ Addressable::URI::CharacterClasses::FRAGMENT
1727
+ )
1728
+ component == "" ? nil : component
1729
+ end
1730
+ end
1731
+
1732
+ ##
1733
+ # Sets the fragment component for this URI.
1734
+ #
1735
+ # @param [String, #to_str] new_fragment The new fragment component.
1736
+ def fragment=(new_fragment)
1737
+ if new_fragment && !new_fragment.respond_to?(:to_str)
1738
+ raise TypeError, "Can't convert #{new_fragment.class} into String."
1739
+ end
1740
+ @fragment = new_fragment ? new_fragment.to_str : nil
1741
+
1742
+ # Reset dependent values
1743
+ remove_instance_variable(:@normalized_fragment) if defined?(@normalized_fragment)
1744
+ remove_composite_values
1745
+
1746
+ # Ensure we haven't created an invalid URI
1747
+ validate()
1748
+ end
1749
+
1750
+ ##
1751
+ # Determines if the scheme indicates an IP-based protocol.
1752
+ #
1753
+ # @return [TrueClass, FalseClass]
1754
+ # <code>true</code> if the scheme indicates an IP-based protocol.
1755
+ # <code>false</code> otherwise.
1756
+ def ip_based?
1757
+ if self.scheme
1758
+ return URI.ip_based_schemes.include?(
1759
+ self.scheme.strip.downcase)
1760
+ end
1761
+ return false
1762
+ end
1763
+
1764
+ ##
1765
+ # Determines if the URI is relative.
1766
+ #
1767
+ # @return [TrueClass, FalseClass]
1768
+ # <code>true</code> if the URI is relative. <code>false</code>
1769
+ # otherwise.
1770
+ def relative?
1771
+ return self.scheme.nil?
1772
+ end
1773
+
1774
+ ##
1775
+ # Determines if the URI is absolute.
1776
+ #
1777
+ # @return [TrueClass, FalseClass]
1778
+ # <code>true</code> if the URI is absolute. <code>false</code>
1779
+ # otherwise.
1780
+ def absolute?
1781
+ return !relative?
1782
+ end
1783
+
1784
+ ##
1785
+ # Joins two URIs together.
1786
+ #
1787
+ # @param [String, Addressable::URI, #to_str] The URI to join with.
1788
+ #
1789
+ # @return [Addressable::URI] The joined URI.
1790
+ def join(uri)
1791
+ if !uri.respond_to?(:to_str)
1792
+ raise TypeError, "Can't convert #{uri.class} into String."
1793
+ end
1794
+ if !uri.kind_of?(URI)
1795
+ # Otherwise, convert to a String, then parse.
1796
+ uri = URI.parse(uri.to_str)
1797
+ end
1798
+ if uri.to_s.empty?
1799
+ return self.dup
1800
+ end
1801
+
1802
+ joined_scheme = nil
1803
+ joined_user = nil
1804
+ joined_password = nil
1805
+ joined_host = nil
1806
+ joined_port = nil
1807
+ joined_path = nil
1808
+ joined_query = nil
1809
+ joined_fragment = nil
1810
+
1811
+ # Section 5.2.2 of RFC 3986
1812
+ if uri.scheme != nil
1813
+ joined_scheme = uri.scheme
1814
+ joined_user = uri.user
1815
+ joined_password = uri.password
1816
+ joined_host = uri.host
1817
+ joined_port = uri.port
1818
+ joined_path = URI.normalize_path(uri.path)
1819
+ joined_query = uri.query
1820
+ else
1821
+ if uri.authority != nil
1822
+ joined_user = uri.user
1823
+ joined_password = uri.password
1824
+ joined_host = uri.host
1825
+ joined_port = uri.port
1826
+ joined_path = URI.normalize_path(uri.path)
1827
+ joined_query = uri.query
1828
+ else
1829
+ if uri.path == nil || uri.path.empty?
1830
+ joined_path = self.path
1831
+ if uri.query != nil
1832
+ joined_query = uri.query
1833
+ else
1834
+ joined_query = self.query
1835
+ end
1836
+ else
1837
+ if uri.path[0..0] == SLASH
1838
+ joined_path = URI.normalize_path(uri.path)
1839
+ else
1840
+ base_path = self.path.dup
1841
+ base_path = EMPTY_STR if base_path == nil
1842
+ base_path = URI.normalize_path(base_path)
1843
+
1844
+ # Section 5.2.3 of RFC 3986
1845
+ #
1846
+ # Removes the right-most path segment from the base path.
1847
+ if base_path =~ /\//
1848
+ base_path.gsub!(/\/[^\/]+$/, SLASH)
1849
+ else
1850
+ base_path = EMPTY_STR
1851
+ end
1852
+
1853
+ # If the base path is empty and an authority segment has been
1854
+ # defined, use a base path of SLASH
1855
+ if base_path.empty? && self.authority != nil
1856
+ base_path = SLASH
1857
+ end
1858
+
1859
+ joined_path = URI.normalize_path(base_path + uri.path)
1860
+ end
1861
+ joined_query = uri.query
1862
+ end
1863
+ joined_user = self.user
1864
+ joined_password = self.password
1865
+ joined_host = self.host
1866
+ joined_port = self.port
1867
+ end
1868
+ joined_scheme = self.scheme
1869
+ end
1870
+ joined_fragment = uri.fragment
1871
+
1872
+ return self.class.new(
1873
+ :scheme => joined_scheme,
1874
+ :user => joined_user,
1875
+ :password => joined_password,
1876
+ :host => joined_host,
1877
+ :port => joined_port,
1878
+ :path => joined_path,
1879
+ :query => joined_query,
1880
+ :fragment => joined_fragment
1881
+ )
1882
+ end
1883
+ alias_method :+, :join
1884
+
1885
+ ##
1886
+ # Destructive form of <code>join</code>.
1887
+ #
1888
+ # @param [String, Addressable::URI, #to_str] The URI to join with.
1889
+ #
1890
+ # @return [Addressable::URI] The joined URI.
1891
+ #
1892
+ # @see Addressable::URI#join
1893
+ def join!(uri)
1894
+ replace_self(self.join(uri))
1895
+ end
1896
+
1897
+ ##
1898
+ # Merges a URI with a <code>Hash</code> of components.
1899
+ # This method has different behavior from <code>join</code>. Any
1900
+ # components present in the <code>hash</code> parameter will override the
1901
+ # original components. The path component is not treated specially.
1902
+ #
1903
+ # @param [Hash, Addressable::URI, #to_hash] The components to merge with.
1904
+ #
1905
+ # @return [Addressable::URI] The merged URI.
1906
+ #
1907
+ # @see Hash#merge
1908
+ def merge(hash)
1909
+ if !hash.respond_to?(:to_hash)
1910
+ raise TypeError, "Can't convert #{hash.class} into Hash."
1911
+ end
1912
+ hash = hash.to_hash
1913
+
1914
+ if hash.has_key?(:authority)
1915
+ if (hash.keys & [:userinfo, :user, :password, :host, :port]).any?
1916
+ raise ArgumentError,
1917
+ "Cannot specify both an authority and any of the components " +
1918
+ "within the authority."
1919
+ end
1920
+ end
1921
+ if hash.has_key?(:userinfo)
1922
+ if (hash.keys & [:user, :password]).any?
1923
+ raise ArgumentError,
1924
+ "Cannot specify both a userinfo and either the user or password."
1925
+ end
1926
+ end
1927
+
1928
+ uri = self.class.new
1929
+ uri.defer_validation do
1930
+ # Bunch of crazy logic required because of the composite components
1931
+ # like userinfo and authority.
1932
+ uri.scheme =
1933
+ hash.has_key?(:scheme) ? hash[:scheme] : self.scheme
1934
+ if hash.has_key?(:authority)
1935
+ uri.authority =
1936
+ hash.has_key?(:authority) ? hash[:authority] : self.authority
1937
+ end
1938
+ if hash.has_key?(:userinfo)
1939
+ uri.userinfo =
1940
+ hash.has_key?(:userinfo) ? hash[:userinfo] : self.userinfo
1941
+ end
1942
+ if !hash.has_key?(:userinfo) && !hash.has_key?(:authority)
1943
+ uri.user =
1944
+ hash.has_key?(:user) ? hash[:user] : self.user
1945
+ uri.password =
1946
+ hash.has_key?(:password) ? hash[:password] : self.password
1947
+ end
1948
+ if !hash.has_key?(:authority)
1949
+ uri.host =
1950
+ hash.has_key?(:host) ? hash[:host] : self.host
1951
+ uri.port =
1952
+ hash.has_key?(:port) ? hash[:port] : self.port
1953
+ end
1954
+ uri.path =
1955
+ hash.has_key?(:path) ? hash[:path] : self.path
1956
+ uri.query =
1957
+ hash.has_key?(:query) ? hash[:query] : self.query
1958
+ uri.fragment =
1959
+ hash.has_key?(:fragment) ? hash[:fragment] : self.fragment
1960
+ end
1961
+
1962
+ return uri
1963
+ end
1964
+
1965
+ ##
1966
+ # Destructive form of <code>merge</code>.
1967
+ #
1968
+ # @param [Hash, Addressable::URI, #to_hash] The components to merge with.
1969
+ #
1970
+ # @return [Addressable::URI] The merged URI.
1971
+ #
1972
+ # @see Addressable::URI#merge
1973
+ def merge!(uri)
1974
+ replace_self(self.merge(uri))
1975
+ end
1976
+
1977
+ ##
1978
+ # Returns the shortest normalized relative form of this URI that uses the
1979
+ # supplied URI as a base for resolution. Returns an absolute URI if
1980
+ # necessary. This is effectively the opposite of <code>route_to</code>.
1981
+ #
1982
+ # @param [String, Addressable::URI, #to_str] uri The URI to route from.
1983
+ #
1984
+ # @return [Addressable::URI]
1985
+ # The normalized relative URI that is equivalent to the original URI.
1986
+ def route_from(uri)
1987
+ uri = URI.parse(uri).normalize
1988
+ normalized_self = self.normalize
1989
+ if normalized_self.relative?
1990
+ raise ArgumentError, "Expected absolute URI, got: #{self.to_s}"
1991
+ end
1992
+ if uri.relative?
1993
+ raise ArgumentError, "Expected absolute URI, got: #{uri.to_s}"
1994
+ end
1995
+ if normalized_self == uri
1996
+ return Addressable::URI.parse("##{normalized_self.fragment}")
1997
+ end
1998
+ components = normalized_self.to_hash
1999
+ if normalized_self.scheme == uri.scheme
2000
+ components[:scheme] = nil
2001
+ if normalized_self.authority == uri.authority
2002
+ components[:user] = nil
2003
+ components[:password] = nil
2004
+ components[:host] = nil
2005
+ components[:port] = nil
2006
+ if normalized_self.path == uri.path
2007
+ components[:path] = nil
2008
+ if normalized_self.query == uri.query
2009
+ components[:query] = nil
2010
+ end
2011
+ else
2012
+ if uri.path != SLASH and components[:path]
2013
+ self_splitted_path = split_path(components[:path])
2014
+ uri_splitted_path = split_path(uri.path)
2015
+ self_dir = self_splitted_path.shift
2016
+ uri_dir = uri_splitted_path.shift
2017
+ while !self_splitted_path.empty? && !uri_splitted_path.empty? and self_dir == uri_dir
2018
+ self_dir = self_splitted_path.shift
2019
+ uri_dir = uri_splitted_path.shift
2020
+ end
2021
+ components[:path] = (uri_splitted_path.fill('..') + [self_dir] + self_splitted_path).join(SLASH)
2022
+ end
2023
+ end
2024
+ end
2025
+ end
2026
+ # Avoid network-path references.
2027
+ if components[:host] != nil
2028
+ components[:scheme] = normalized_self.scheme
2029
+ end
2030
+ return Addressable::URI.new(
2031
+ :scheme => components[:scheme],
2032
+ :user => components[:user],
2033
+ :password => components[:password],
2034
+ :host => components[:host],
2035
+ :port => components[:port],
2036
+ :path => components[:path],
2037
+ :query => components[:query],
2038
+ :fragment => components[:fragment]
2039
+ )
2040
+ end
2041
+
2042
+ ##
2043
+ # Returns the shortest normalized relative form of the supplied URI that
2044
+ # uses this URI as a base for resolution. Returns an absolute URI if
2045
+ # necessary. This is effectively the opposite of <code>route_from</code>.
2046
+ #
2047
+ # @param [String, Addressable::URI, #to_str] uri The URI to route to.
2048
+ #
2049
+ # @return [Addressable::URI]
2050
+ # The normalized relative URI that is equivalent to the supplied URI.
2051
+ def route_to(uri)
2052
+ return URI.parse(uri).route_from(self)
2053
+ end
2054
+
2055
+ ##
2056
+ # Returns a normalized URI object.
2057
+ #
2058
+ # NOTE: This method does not attempt to fully conform to specifications.
2059
+ # It exists largely to correct other people's failures to read the
2060
+ # specifications, and also to deal with caching issues since several
2061
+ # different URIs may represent the same resource and should not be
2062
+ # cached multiple times.
2063
+ #
2064
+ # @return [Addressable::URI] The normalized URI.
2065
+ def normalize
2066
+ # This is a special exception for the frequently misused feed
2067
+ # URI scheme.
2068
+ if normalized_scheme == "feed"
2069
+ if self.to_s =~ /^feed:\/*http:\/*/
2070
+ return URI.parse(
2071
+ self.to_s[/^feed:\/*(http:\/*.*)/, 1]
2072
+ ).normalize
2073
+ end
2074
+ end
2075
+
2076
+ return self.class.new(
2077
+ :scheme => normalized_scheme,
2078
+ :authority => normalized_authority,
2079
+ :path => normalized_path,
2080
+ :query => normalized_query,
2081
+ :fragment => normalized_fragment
2082
+ )
2083
+ end
2084
+
2085
+ ##
2086
+ # Destructively normalizes this URI object.
2087
+ #
2088
+ # @return [Addressable::URI] The normalized URI.
2089
+ #
2090
+ # @see Addressable::URI#normalize
2091
+ def normalize!
2092
+ replace_self(self.normalize)
2093
+ end
2094
+
2095
+ ##
2096
+ # Creates a URI suitable for display to users. If semantic attacks are
2097
+ # likely, the application should try to detect these and warn the user.
2098
+ # See <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>,
2099
+ # section 7.6 for more information.
2100
+ #
2101
+ # @return [Addressable::URI] A URI suitable for display purposes.
2102
+ def display_uri
2103
+ display_uri = self.normalize
2104
+ display_uri.host = ::Addressable::IDNA.to_unicode(display_uri.host)
2105
+ return display_uri
2106
+ end
2107
+
2108
+ ##
2109
+ # Returns <code>true</code> if the URI objects are equal. This method
2110
+ # normalizes both URIs before doing the comparison, and allows comparison
2111
+ # against <code>Strings</code>.
2112
+ #
2113
+ # @param [Object] uri The URI to compare.
2114
+ #
2115
+ # @return [TrueClass, FalseClass]
2116
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2117
+ # otherwise.
2118
+ def ===(uri)
2119
+ if uri.respond_to?(:normalize)
2120
+ uri_string = uri.normalize.to_s
2121
+ else
2122
+ begin
2123
+ uri_string = ::Addressable::URI.parse(uri).normalize.to_s
2124
+ rescue InvalidURIError, TypeError
2125
+ return false
2126
+ end
2127
+ end
2128
+ return self.normalize.to_s == uri_string
2129
+ end
2130
+
2131
+ ##
2132
+ # Returns <code>true</code> if the URI objects are equal. This method
2133
+ # normalizes both URIs before doing the comparison.
2134
+ #
2135
+ # @param [Object] uri The URI to compare.
2136
+ #
2137
+ # @return [TrueClass, FalseClass]
2138
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2139
+ # otherwise.
2140
+ def ==(uri)
2141
+ return false unless uri.kind_of?(URI)
2142
+ return self.normalize.to_s == uri.normalize.to_s
2143
+ end
2144
+
2145
+ ##
2146
+ # Returns <code>true</code> if the URI objects are equal. This method
2147
+ # does NOT normalize either URI before doing the comparison.
2148
+ #
2149
+ # @param [Object] uri The URI to compare.
2150
+ #
2151
+ # @return [TrueClass, FalseClass]
2152
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2153
+ # otherwise.
2154
+ def eql?(uri)
2155
+ return false unless uri.kind_of?(URI)
2156
+ return self.to_s == uri.to_s
2157
+ end
2158
+
2159
+ ##
2160
+ # A hash value that will make a URI equivalent to its normalized
2161
+ # form.
2162
+ #
2163
+ # @return [Integer] A hash of the URI.
2164
+ def hash
2165
+ @hash ||= self.to_s.hash * -1
2166
+ end
2167
+
2168
+ ##
2169
+ # Clones the URI object.
2170
+ #
2171
+ # @return [Addressable::URI] The cloned URI.
2172
+ def dup
2173
+ duplicated_uri = self.class.new(
2174
+ :scheme => self.scheme ? self.scheme.dup : nil,
2175
+ :user => self.user ? self.user.dup : nil,
2176
+ :password => self.password ? self.password.dup : nil,
2177
+ :host => self.host ? self.host.dup : nil,
2178
+ :port => self.port,
2179
+ :path => self.path ? self.path.dup : nil,
2180
+ :query => self.query ? self.query.dup : nil,
2181
+ :fragment => self.fragment ? self.fragment.dup : nil
2182
+ )
2183
+ return duplicated_uri
2184
+ end
2185
+
2186
+ ##
2187
+ # Omits components from a URI.
2188
+ #
2189
+ # @param [Symbol] *components The components to be omitted.
2190
+ #
2191
+ # @return [Addressable::URI] The URI with components omitted.
2192
+ #
2193
+ # @example
2194
+ # uri = Addressable::URI.parse("http://example.com/path?query")
2195
+ # #=> #<Addressable::URI:0xcc5e7a URI:http://example.com/path?query>
2196
+ # uri.omit(:scheme, :authority)
2197
+ # #=> #<Addressable::URI:0xcc4d86 URI:/path?query>
2198
+ def omit(*components)
2199
+ invalid_components = components - [
2200
+ :scheme, :user, :password, :userinfo, :host, :port, :authority,
2201
+ :path, :query, :fragment
2202
+ ]
2203
+ unless invalid_components.empty?
2204
+ raise ArgumentError,
2205
+ "Invalid component names: #{invalid_components.inspect}."
2206
+ end
2207
+ duplicated_uri = self.dup
2208
+ duplicated_uri.defer_validation do
2209
+ components.each do |component|
2210
+ duplicated_uri.send((component.to_s + "=").to_sym, nil)
2211
+ end
2212
+ duplicated_uri.user = duplicated_uri.normalized_user
2213
+ end
2214
+ duplicated_uri
2215
+ end
2216
+
2217
+ ##
2218
+ # Destructive form of omit.
2219
+ #
2220
+ # @param [Symbol] *components The components to be omitted.
2221
+ #
2222
+ # @return [Addressable::URI] The URI with components omitted.
2223
+ #
2224
+ # @see Addressable::URI#omit
2225
+ def omit!(*components)
2226
+ replace_self(self.omit(*components))
2227
+ end
2228
+
2229
+ ##
2230
+ # Determines if the URI is an empty string.
2231
+ #
2232
+ # @return [TrueClass, FalseClass]
2233
+ # Returns <code>true</code> if empty, <code>false</code> otherwise.
2234
+ def empty?
2235
+ return self.to_s.empty?
2236
+ end
2237
+
2238
+ ##
2239
+ # Converts the URI to a <code>String</code>.
2240
+ #
2241
+ # @return [String] The URI's <code>String</code> representation.
2242
+ def to_s
2243
+ if self.scheme == nil && self.path != nil && !self.path.empty? &&
2244
+ self.path =~ NORMPATH
2245
+ raise InvalidURIError,
2246
+ "Cannot assemble URI string with ambiguous path: '#{self.path}'"
2247
+ end
2248
+ @uri_string ||= begin
2249
+ uri_string = ""
2250
+ uri_string << "#{self.scheme}:" if self.scheme != nil
2251
+ uri_string << "//#{self.authority}" if self.authority != nil
2252
+ uri_string << self.path.to_s
2253
+ uri_string << "?#{self.query}" if self.query != nil
2254
+ uri_string << "##{self.fragment}" if self.fragment != nil
2255
+ if uri_string.respond_to?(:force_encoding)
2256
+ uri_string.force_encoding(Encoding::UTF_8)
2257
+ end
2258
+ uri_string
2259
+ end
2260
+ end
2261
+
2262
+ ##
2263
+ # URI's are glorified <code>Strings</code>. Allow implicit conversion.
2264
+ alias_method :to_str, :to_s
2265
+
2266
+ ##
2267
+ # Returns a Hash of the URI components.
2268
+ #
2269
+ # @return [Hash] The URI as a <code>Hash</code> of components.
2270
+ def to_hash
2271
+ return {
2272
+ :scheme => self.scheme,
2273
+ :user => self.user,
2274
+ :password => self.password,
2275
+ :host => self.host,
2276
+ :port => self.port,
2277
+ :path => self.path,
2278
+ :query => self.query,
2279
+ :fragment => self.fragment
2280
+ }
2281
+ end
2282
+
2283
+ ##
2284
+ # Returns a <code>String</code> representation of the URI object's state.
2285
+ #
2286
+ # @return [String] The URI object's state, as a <code>String</code>.
2287
+ def inspect
2288
+ sprintf("#<%s:%#0x URI:%s>", URI.to_s, self.object_id, self.to_s)
2289
+ end
2290
+
2291
+ ##
2292
+ # This method allows you to make several changes to a URI simultaneously,
2293
+ # which separately would cause validation errors, but in conjunction,
2294
+ # are valid. The URI will be revalidated as soon as the entire block has
2295
+ # been executed.
2296
+ #
2297
+ # @param [Proc] block
2298
+ # A set of operations to perform on a given URI.
2299
+ def defer_validation(&block)
2300
+ raise LocalJumpError, "No block given." unless block
2301
+ @validation_deferred = true
2302
+ block.call()
2303
+ @validation_deferred = false
2304
+ validate
2305
+ return nil
2306
+ end
2307
+
2308
+ protected
2309
+ SELF_REF = '.'
2310
+ PARENT = '..'
2311
+
2312
+ RULE_2A = /\/\.\/|\/\.$/
2313
+ RULE_2B_2C = /\/([^\/]*)\/\.\.\/|\/([^\/]*)\/\.\.$/
2314
+ RULE_2D = /^\.\.?\/?/
2315
+ RULE_PREFIXED_PARENT = /^\/\.\.?\/|^(\/\.\.?)+\/?$/
2316
+
2317
+ ##
2318
+ # Resolves paths to their simplest form.
2319
+ #
2320
+ # @param [String] path The path to normalize.
2321
+ #
2322
+ # @return [String] The normalized path.
2323
+ def self.normalize_path(path)
2324
+ # Section 5.2.4 of RFC 3986
2325
+
2326
+ return nil if path.nil?
2327
+ normalized_path = path.dup
2328
+ begin
2329
+ mod = nil
2330
+ mod ||= normalized_path.gsub!(RULE_2A, SLASH)
2331
+
2332
+ pair = normalized_path.match(RULE_2B_2C)
2333
+ parent, current = pair[1], pair[2] if pair
2334
+ if pair && ((parent != SELF_REF && parent != PARENT) ||
2335
+ (current != SELF_REF && current != PARENT))
2336
+ mod ||= normalized_path.gsub!(
2337
+ Regexp.new(
2338
+ "/#{Regexp.escape(parent.to_s)}/\\.\\./|" +
2339
+ "(/#{Regexp.escape(current.to_s)}/\\.\\.$)"
2340
+ ), SLASH
2341
+ )
2342
+ end
2343
+
2344
+ mod ||= normalized_path.gsub!(RULE_2D, EMPTY_STR)
2345
+ # Non-standard, removes prefixed dotted segments from path.
2346
+ mod ||= normalized_path.gsub!(RULE_PREFIXED_PARENT, SLASH)
2347
+ end until mod.nil?
2348
+
2349
+ return normalized_path
2350
+ end
2351
+
2352
+ ##
2353
+ # Ensures that the URI is valid.
2354
+ def validate
2355
+ return if !!@validation_deferred
2356
+ if self.scheme != nil && self.ip_based? &&
2357
+ (self.host == nil || self.host.empty?) &&
2358
+ (self.path == nil || self.path.empty?)
2359
+ raise InvalidURIError,
2360
+ "Absolute URI missing hierarchical segment: '#{self.to_s}'"
2361
+ end
2362
+ if self.host == nil
2363
+ if self.port != nil ||
2364
+ self.user != nil ||
2365
+ self.password != nil
2366
+ raise InvalidURIError, "Hostname not supplied: '#{self.to_s}'"
2367
+ end
2368
+ end
2369
+ if self.path != nil && !self.path.empty? && self.path[0..0] != SLASH &&
2370
+ self.authority != nil
2371
+ raise InvalidURIError,
2372
+ "Cannot have a relative path with an authority set: '#{self.to_s}'"
2373
+ end
2374
+ return nil
2375
+ end
2376
+
2377
+ ##
2378
+ # Replaces the internal state of self with the specified URI's state.
2379
+ # Used in destructive operations to avoid massive code repetition.
2380
+ #
2381
+ # @param [Addressable::URI] uri The URI to replace <code>self</code> with.
2382
+ #
2383
+ # @return [Addressable::URI] <code>self</code>.
2384
+ def replace_self(uri)
2385
+ # Reset dependent values
2386
+ instance_variables.each do |var|
2387
+ remove_instance_variable(var) if instance_variable_defined?(var)
2388
+ end
2389
+
2390
+ @scheme = uri.scheme
2391
+ @user = uri.user
2392
+ @password = uri.password
2393
+ @host = uri.host
2394
+ @port = uri.port
2395
+ @path = uri.path
2396
+ @query = uri.query
2397
+ @fragment = uri.fragment
2398
+ return self
2399
+ end
2400
+
2401
+ ##
2402
+ # Splits path string with "/" (slash).
2403
+ # It is considered that there is empty string after last slash when
2404
+ # path ends with slash.
2405
+ #
2406
+ # @param [String] path The path to split.
2407
+ #
2408
+ # @return [Array<String>] An array of parts of path.
2409
+ def split_path(path)
2410
+ splitted = path.split(SLASH)
2411
+ splitted << EMPTY_STR if path.end_with? SLASH
2412
+ splitted
2413
+ end
2414
+
2415
+ ##
2416
+ # Resets composite values for the entire URI
2417
+ #
2418
+ # @api private
2419
+ def remove_composite_values
2420
+ remove_instance_variable(:@uri_string) if defined?(@uri_string)
2421
+ remove_instance_variable(:@hash) if defined?(@hash)
2422
+ end
2423
+ end
2424
+ end