challah 1.0.0.beta2 → 1.0.0.beta3

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 (968) hide show
  1. checksums.yaml +4 -4
  2. data/lib/challah/authorization.rb +13 -6
  3. data/lib/challah/user/providers.rb +3 -1
  4. data/lib/challah/version.rb +1 -1
  5. data/test/authorization_test.rb +15 -0
  6. data/test/user_test.rb +2 -1
  7. data/vendor/bundle/build_info/highline-1.6.18.info +1 -0
  8. data/vendor/bundle/build_info/mime-types-1.23.info +1 -0
  9. data/vendor/bundle/build_info/minitest-4.7.4.info +1 -0
  10. data/vendor/bundle/build_info/multi_json-1.7.3.info +1 -0
  11. data/vendor/bundle/build_info/rdiscount-2.0.7.3.info +1 -0
  12. data/vendor/bundle/build_info/shoulda-3.5.0.info +1 -0
  13. data/vendor/bundle/build_info/shoulda-matchers-2.1.0.info +1 -0
  14. data/vendor/bundle/build_info/tilt-1.4.1.info +1 -0
  15. data/vendor/bundle/build_info/yard-0.8.6.1.info +1 -0
  16. data/vendor/bundle/cache/highline-1.6.18.gem +0 -0
  17. data/vendor/bundle/cache/mime-types-1.23.gem +0 -0
  18. data/vendor/bundle/cache/minitest-4.7.4.gem +0 -0
  19. data/vendor/bundle/cache/multi_json-1.7.3.gem +0 -0
  20. data/vendor/bundle/cache/rdiscount-2.0.7.3.gem +0 -0
  21. data/vendor/bundle/cache/shoulda-3.5.0.gem +0 -0
  22. data/vendor/bundle/cache/shoulda-matchers-2.1.0.gem +0 -0
  23. data/vendor/bundle/cache/tilt-1.4.1.gem +0 -0
  24. data/vendor/bundle/cache/yard-0.8.6.1.gem +0 -0
  25. data/vendor/bundle/gems/highline-1.6.18/AUTHORS +3 -0
  26. data/vendor/bundle/gems/highline-1.6.18/CHANGELOG +342 -0
  27. data/vendor/bundle/gems/highline-1.6.18/COPYING +340 -0
  28. data/vendor/bundle/gems/highline-1.6.18/INSTALL +55 -0
  29. data/vendor/bundle/gems/highline-1.6.18/LICENSE +7 -0
  30. data/vendor/bundle/gems/highline-1.6.18/README.rdoc +63 -0
  31. data/vendor/bundle/gems/highline-1.6.18/Rakefile +50 -0
  32. data/vendor/bundle/gems/highline-1.6.18/TODO +6 -0
  33. data/vendor/bundle/gems/highline-1.6.18/examples/ansi_colors.rb +38 -0
  34. data/vendor/bundle/gems/highline-1.6.18/examples/asking_for_arrays.rb +18 -0
  35. data/vendor/bundle/gems/highline-1.6.18/examples/basic_usage.rb +75 -0
  36. data/vendor/bundle/gems/highline-1.6.18/examples/color_scheme.rb +32 -0
  37. data/vendor/bundle/gems/highline-1.6.18/examples/get_character.rb +12 -0
  38. data/vendor/bundle/gems/highline-1.6.18/examples/limit.rb +12 -0
  39. data/vendor/bundle/gems/highline-1.6.18/examples/menus.rb +65 -0
  40. data/vendor/bundle/gems/highline-1.6.18/examples/overwrite.rb +19 -0
  41. data/vendor/bundle/gems/highline-1.6.18/examples/page_and_wrap.rb +322 -0
  42. data/vendor/bundle/gems/highline-1.6.18/examples/password.rb +7 -0
  43. data/vendor/bundle/gems/highline-1.6.18/examples/repeat_entry.rb +21 -0
  44. data/vendor/bundle/gems/highline-1.6.18/examples/trapping_eof.rb +22 -0
  45. data/vendor/bundle/gems/highline-1.6.18/examples/using_readline.rb +17 -0
  46. data/vendor/bundle/gems/highline-1.6.18/highline.gemspec +37 -0
  47. data/vendor/bundle/gems/highline-1.6.18/lib/highline/color_scheme.rb +134 -0
  48. data/vendor/bundle/gems/highline-1.6.18/lib/highline/compatibility.rb +16 -0
  49. data/vendor/bundle/gems/highline-1.6.18/lib/highline/import.rb +41 -0
  50. data/vendor/bundle/gems/highline-1.6.18/lib/highline/menu.rb +398 -0
  51. data/vendor/bundle/gems/highline-1.6.18/lib/highline/question.rb +475 -0
  52. data/vendor/bundle/gems/highline-1.6.18/lib/highline/simulate.rb +48 -0
  53. data/vendor/bundle/gems/highline-1.6.18/lib/highline/string_extensions.rb +131 -0
  54. data/vendor/bundle/gems/highline-1.6.18/lib/highline/style.rb +181 -0
  55. data/vendor/bundle/gems/highline-1.6.18/lib/highline/system_extensions.rb +218 -0
  56. data/vendor/bundle/gems/highline-1.6.18/lib/highline.rb +1012 -0
  57. data/vendor/bundle/gems/highline-1.6.18/setup.rb +1360 -0
  58. data/vendor/bundle/gems/highline-1.6.18/site/highline.css +65 -0
  59. data/vendor/bundle/gems/highline-1.6.18/site/images/logo.png +0 -0
  60. data/vendor/bundle/gems/highline-1.6.18/site/index.html +58 -0
  61. data/vendor/bundle/gems/highline-1.6.18/test/string_methods.rb +32 -0
  62. data/vendor/bundle/gems/highline-1.6.18/test/tc_color_scheme.rb +96 -0
  63. data/vendor/bundle/gems/highline-1.6.18/test/tc_highline.rb +1123 -0
  64. data/vendor/bundle/gems/highline-1.6.18/test/tc_import.rb +52 -0
  65. data/vendor/bundle/gems/highline-1.6.18/test/tc_menu.rb +439 -0
  66. data/vendor/bundle/gems/highline-1.6.18/test/tc_string_extension.rb +20 -0
  67. data/vendor/bundle/gems/highline-1.6.18/test/tc_string_highline.rb +38 -0
  68. data/vendor/bundle/gems/highline-1.6.18/test/tc_style.rb +567 -0
  69. data/vendor/bundle/gems/highline-1.6.18/test/ts_all.rb +16 -0
  70. data/vendor/bundle/gems/mime-types-1.23/Contributing.rdoc +68 -0
  71. data/vendor/bundle/gems/mime-types-1.23/Gemfile +21 -0
  72. data/vendor/bundle/gems/mime-types-1.23/History.rdoc +215 -0
  73. data/vendor/bundle/gems/mime-types-1.23/Licence.rdoc +37 -0
  74. data/vendor/bundle/gems/mime-types-1.23/Manifest.txt +40 -0
  75. data/vendor/bundle/gems/mime-types-1.23/README.rdoc +63 -0
  76. data/vendor/bundle/gems/mime-types-1.23/Rakefile +206 -0
  77. data/vendor/bundle/gems/mime-types-1.23/docs/COPYING.txt +339 -0
  78. data/vendor/bundle/gems/mime-types-1.23/docs/artistic.txt +127 -0
  79. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application +1002 -0
  80. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.mac +3 -0
  81. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.nonstandard +131 -0
  82. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.obsolete +41 -0
  83. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio +138 -0
  84. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.nonstandard +11 -0
  85. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.obsolete +1 -0
  86. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image +46 -0
  87. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.nonstandard +20 -0
  88. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.obsolete +5 -0
  89. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message +18 -0
  90. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message.obsolete +2 -0
  91. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/model +15 -0
  92. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart +14 -0
  93. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.nonstandard +1 -0
  94. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.obsolete +7 -0
  95. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/other.nonstandard +8 -0
  96. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text +61 -0
  97. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.nonstandard +7 -0
  98. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.obsolete +8 -0
  99. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.vms +1 -0
  100. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video +73 -0
  101. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.nonstandard +16 -0
  102. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.obsolete +3 -0
  103. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types.rb +881 -0
  104. data/vendor/bundle/gems/mime-types-1.23/lib/mime-types.rb +3 -0
  105. data/vendor/bundle/gems/mime-types-1.23/test/test_mime_type.rb +319 -0
  106. data/vendor/bundle/gems/mime-types-1.23/test/test_mime_types.rb +119 -0
  107. data/vendor/bundle/gems/minitest-4.7.4/History.txt +796 -0
  108. data/vendor/bundle/gems/minitest-4.7.4/Manifest.txt +20 -0
  109. data/vendor/bundle/gems/minitest-4.7.4/README.txt +457 -0
  110. data/vendor/bundle/gems/minitest-4.7.4/Rakefile +94 -0
  111. data/vendor/bundle/gems/minitest-4.7.4/design_rationale.rb +52 -0
  112. data/vendor/bundle/gems/minitest-4.7.4/lib/hoe/minitest.rb +22 -0
  113. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/autorun.rb +12 -0
  114. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/benchmark.rb +416 -0
  115. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/hell.rb +13 -0
  116. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/mock.rb +193 -0
  117. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/parallel_each.rb +73 -0
  118. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/pride.rb +112 -0
  119. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/spec.rb +545 -0
  120. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/unit.rb +1415 -0
  121. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/metametameta.rb +67 -0
  122. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_benchmark.rb +128 -0
  123. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_mock.rb +403 -0
  124. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_spec.rb +804 -0
  125. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_unit.rb +1860 -0
  126. data/vendor/bundle/gems/multi_json-1.7.3/CHANGELOG.md +147 -0
  127. data/vendor/bundle/gems/multi_json-1.7.3/CONTRIBUTING.md +46 -0
  128. data/vendor/bundle/gems/multi_json-1.7.3/Gemfile +31 -0
  129. data/vendor/bundle/gems/multi_json-1.7.3/LICENSE.md +20 -0
  130. data/vendor/bundle/gems/multi_json-1.7.3/README.md +109 -0
  131. data/vendor/bundle/gems/multi_json-1.7.3/Rakefile +12 -0
  132. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapter.rb +43 -0
  133. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/gson.rb +19 -0
  134. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/jr_jackson.rb +19 -0
  135. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_common.rb +35 -0
  136. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_gem.rb +15 -0
  137. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_pure.rb +15 -0
  138. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/nsjsonserialization.rb +34 -0
  139. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/oj.rb +28 -0
  140. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/ok_json.rb +22 -0
  141. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/yajl.rb +19 -0
  142. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/convertible_hash_keys.rb +43 -0
  143. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/options.rb +39 -0
  144. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/vendor/okjson.rb +600 -0
  145. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/version.rb +3 -0
  146. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json.rb +154 -0
  147. data/vendor/bundle/gems/multi_json-1.7.3/multi_json.gemspec +22 -0
  148. data/vendor/bundle/gems/multi_json-1.7.3/spec/adapter_shared_example.rb +235 -0
  149. data/vendor/bundle/gems/multi_json-1.7.3/spec/has_options.rb +74 -0
  150. data/vendor/bundle/gems/multi_json-1.7.3/spec/helper.rb +32 -0
  151. data/vendor/bundle/gems/multi_json-1.7.3/spec/json_common_shared_example.rb +30 -0
  152. data/vendor/bundle/gems/multi_json-1.7.3/spec/multi_json_spec.rb +224 -0
  153. data/vendor/bundle/gems/rdiscount-2.0.7.3/BUILDING +142 -0
  154. data/vendor/bundle/gems/rdiscount-2.0.7.3/COPYING +52 -0
  155. data/vendor/bundle/gems/rdiscount-2.0.7.3/README.markdown +72 -0
  156. data/vendor/bundle/gems/rdiscount-2.0.7.3/Rakefile +218 -0
  157. data/vendor/bundle/gems/rdiscount-2.0.7.3/bin/rdiscount +13 -0
  158. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.c +61 -0
  159. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.o +0 -0
  160. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Makefile +237 -0
  161. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/VERSION +1 -0
  162. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.c +111 -0
  163. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.h +29 -0
  164. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.o +0 -0
  165. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.c +43 -0
  166. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.o +0 -0
  167. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/config.h +25 -0
  168. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.c +85 -0
  169. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.o +0 -0
  170. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/cstring.h +77 -0
  171. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.c +49 -0
  172. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.o +0 -0
  173. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.c +152 -0
  174. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.o +0 -0
  175. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.c +188 -0
  176. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.o +0 -0
  177. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/extconf.rb +37 -0
  178. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.c +84 -0
  179. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.o +0 -0
  180. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.c +1717 -0
  181. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.o +0 -0
  182. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.c +24 -0
  183. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.o +0 -0
  184. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.c +1227 -0
  185. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.h +181 -0
  186. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.o +0 -0
  187. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.c +354 -0
  188. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.h +108 -0
  189. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.o +0 -0
  190. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkmf.log +191 -0
  191. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.bundle +0 -0
  192. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.c +147 -0
  193. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.o +0 -0
  194. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.c +157 -0
  195. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.o +0 -0
  196. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/ruby-config.h +10 -0
  197. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.c +47 -0
  198. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.o +0 -0
  199. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/siteconf20130510-69347-e72tzr.rb +6 -0
  200. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.c +123 -0
  201. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.h +19 -0
  202. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.o +0 -0
  203. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.c +103 -0
  204. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.o +0 -0
  205. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.c +22 -0
  206. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.o +0 -0
  207. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.c +82 -0
  208. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.o +0 -0
  209. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.c +48 -0
  210. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.o +0 -0
  211. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/markdown.rb +1 -0
  212. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.bundle +0 -0
  213. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.rb +100 -0
  214. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/markdown.7 +1020 -0
  215. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1 +22 -0
  216. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1.ronn +24 -0
  217. data/vendor/bundle/gems/rdiscount-2.0.7.3/rdiscount.gemspec +65 -0
  218. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.rb +56 -0
  219. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.txt +306 -0
  220. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/markdown_test.rb +158 -0
  221. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/rdiscount_test.rb +132 -0
  222. data/vendor/bundle/gems/shoulda-3.5.0/Appraisals +15 -0
  223. data/vendor/bundle/gems/shoulda-3.5.0/CONTRIBUTING.md +38 -0
  224. data/vendor/bundle/gems/shoulda-3.5.0/Gemfile +3 -0
  225. data/vendor/bundle/gems/shoulda-3.5.0/MIT-LICENSE +22 -0
  226. data/vendor/bundle/gems/shoulda-3.5.0/README.md +103 -0
  227. data/vendor/bundle/gems/shoulda-3.5.0/Rakefile +17 -0
  228. data/vendor/bundle/gems/shoulda-3.5.0/features/rails_integration.feature +87 -0
  229. data/vendor/bundle/gems/shoulda-3.5.0/features/step_definitions/rails_steps.rb +77 -0
  230. data/vendor/bundle/gems/shoulda-3.5.0/features/support/env.rb +14 -0
  231. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile +7 -0
  232. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile.lock +127 -0
  233. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile +9 -0
  234. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile.lock +148 -0
  235. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile +9 -0
  236. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile.lock +146 -0
  237. data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda/version.rb +3 -0
  238. data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda.rb +3 -0
  239. data/vendor/bundle/gems/shoulda-3.5.0/shoulda.gemspec +30 -0
  240. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Appraisals +17 -0
  241. data/vendor/bundle/gems/shoulda-matchers-2.1.0/CONTRIBUTING.md +41 -0
  242. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile +15 -0
  243. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile.lock +148 -0
  244. data/vendor/bundle/gems/shoulda-matchers-2.1.0/MIT-LICENSE +22 -0
  245. data/vendor/bundle/gems/shoulda-matchers-2.1.0/NEWS.md +181 -0
  246. data/vendor/bundle/gems/shoulda-matchers-2.1.0/README.md +93 -0
  247. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Rakefile +28 -0
  248. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/rails_integration.feature +114 -0
  249. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/step_definitions/rails_steps.rb +130 -0
  250. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/support/env.rb +5 -0
  251. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile +14 -0
  252. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile.lock +139 -0
  253. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile +16 -0
  254. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile.lock +160 -0
  255. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile +16 -0
  256. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile.lock +158 -0
  257. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/filter_param_matcher.rb +46 -0
  258. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/redirect_to_matcher.rb +65 -0
  259. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_template_matcher.rb +61 -0
  260. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb +94 -0
  261. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/respond_with_matcher.rb +83 -0
  262. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/route_matcher.rb +96 -0
  263. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_session_matcher.rb +105 -0
  264. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_the_flash_matcher.rb +147 -0
  265. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller.rb +35 -0
  266. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_mass_assignment_of_matcher.rb +113 -0
  267. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_value_matcher.rb +174 -0
  268. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/disallow_value_matcher.rb +42 -0
  269. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_exclusion_of_matcher.rb +94 -0
  270. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_inclusion_of_matcher.rb +156 -0
  271. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_length_of_matcher.rb +176 -0
  272. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/errors.rb +7 -0
  273. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/exception_message_finder.rb +58 -0
  274. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/helpers.rb +45 -0
  275. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/odd_even_number_matcher.rb +47 -0
  276. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/only_integer_matcher.rb +37 -0
  277. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb +41 -0
  278. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb +65 -0
  279. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb +115 -0
  280. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb +64 -0
  281. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_uniqueness_of_matcher.rb +221 -0
  282. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_matcher.rb +89 -0
  283. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_message_finder.rb +70 -0
  284. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model.rb +50 -0
  285. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/accept_nested_attributes_for_matcher.rb +140 -0
  286. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/association_matcher.rb +368 -0
  287. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_column_matcher.rb +195 -0
  288. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_index_matcher.rb +111 -0
  289. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_readonly_attribute_matcher.rb +55 -0
  290. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/serialize_matcher.rb +112 -0
  291. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record.rb +25 -0
  292. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/assertion_error.rb +16 -0
  293. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/rspec.rb +20 -0
  294. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/test_unit.rb +42 -0
  295. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/version.rb +5 -0
  296. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers.rb +8 -0
  297. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda-matchers.rb +1 -0
  298. data/vendor/bundle/gems/shoulda-matchers-2.1.0/shoulda-matchers.gemspec +33 -0
  299. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/active_model/validate_uniqueness_of_matcher_spec.rb +195 -0
  300. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/filter_param_matcher_spec.rb +22 -0
  301. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/redirect_to_matcher_spec.rb +42 -0
  302. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_template_matcher_spec.rb +78 -0
  303. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb +58 -0
  304. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/respond_with_matcher_spec.rb +31 -0
  305. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/route_matcher_spec.rb +65 -0
  306. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_session_matcher_spec.rb +51 -0
  307. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_the_flash_matcher_spec.rb +153 -0
  308. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb +111 -0
  309. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_value_matcher_spec.rb +146 -0
  310. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/disallow_value_matcher_spec.rb +43 -0
  311. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_exclusion_of_matcher_spec.rb +95 -0
  312. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_inclusion_of_matcher_spec.rb +194 -0
  313. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_length_of_matcher_spec.rb +159 -0
  314. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/exception_message_finder_spec.rb +112 -0
  315. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/helpers_spec.rb +158 -0
  316. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/odd_even_number_matcher_spec.rb +93 -0
  317. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/only_integer_matcher_spec.rb +52 -0
  318. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_acceptance_of_matcher_spec.rb +41 -0
  319. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_confirmation_of_matcher_spec.rb +47 -0
  320. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb +133 -0
  321. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb +143 -0
  322. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb +212 -0
  323. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validation_message_finder_spec.rb +119 -0
  324. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/accept_nested_attributes_for_matcher_spec.rb +106 -0
  325. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/association_matcher_spec.rb +606 -0
  326. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_column_matcher_spec.rb +111 -0
  327. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_index_matcher_spec.rb +78 -0
  328. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_readonly_attributes_matcher_spec.rb +41 -0
  329. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/serialize_matcher_spec.rb +86 -0
  330. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/spec_helper.rb +28 -0
  331. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/active_model_versions.rb +13 -0
  332. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/activemodel_helpers.rb +19 -0
  333. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/class_builder.rb +42 -0
  334. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/controller_builder.rb +80 -0
  335. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/i18n_faker.rb +10 -0
  336. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/mailer_builder.rb +10 -0
  337. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/model_builder.rb +77 -0
  338. data/vendor/bundle/gems/tilt-1.4.1/CHANGELOG.md +44 -0
  339. data/vendor/bundle/gems/tilt-1.4.1/COPYING +18 -0
  340. data/vendor/bundle/gems/tilt-1.4.1/Gemfile +32 -0
  341. data/vendor/bundle/gems/tilt-1.4.1/HACKING +16 -0
  342. data/vendor/bundle/gems/tilt-1.4.1/README.md +232 -0
  343. data/vendor/bundle/gems/tilt-1.4.1/Rakefile +104 -0
  344. data/vendor/bundle/gems/tilt-1.4.1/TEMPLATES.md +516 -0
  345. data/vendor/bundle/gems/tilt-1.4.1/bin/tilt +112 -0
  346. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/asciidoc.rb +34 -0
  347. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/builder.rb +40 -0
  348. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/coffee.rb +54 -0
  349. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/css.rb +80 -0
  350. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/csv.rb +71 -0
  351. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/erb.rb +110 -0
  352. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/etanni.rb +27 -0
  353. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/haml.rb +64 -0
  354. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/liquid.rb +45 -0
  355. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markaby.rb +52 -0
  356. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markdown.rb +214 -0
  357. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/nokogiri.rb +43 -0
  358. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/plain.rb +20 -0
  359. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/radius.rb +55 -0
  360. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/rdoc.rb +47 -0
  361. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/string.rb +21 -0
  362. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/template.rb +292 -0
  363. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/textile.rb +30 -0
  364. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/wiki.rb +58 -0
  365. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/yajl.rb +94 -0
  366. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt.rb +204 -0
  367. data/vendor/bundle/gems/tilt-1.4.1/test/contest.rb +68 -0
  368. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/locals.mab +1 -0
  369. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby.mab +1 -0
  370. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby_other_static.mab +1 -0
  371. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/render_twice.mab +1 -0
  372. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/scope.mab +1 -0
  373. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/yielding.mab +2 -0
  374. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_asciidoctor_test.rb +44 -0
  375. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_blueclothtemplate_test.rb +45 -0
  376. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_buildertemplate_test.rb +59 -0
  377. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_cache_test.rb +32 -0
  378. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_coffeescripttemplate_test.rb +114 -0
  379. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_compilesite_test.rb +51 -0
  380. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_creoletemplate_test.rb +28 -0
  381. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_csv_test.rb +69 -0
  382. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erbtemplate_test.rb +239 -0
  383. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erubistemplate_test.rb +151 -0
  384. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_etannitemplate_test.rb +173 -0
  385. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_fallback_test.rb +122 -0
  386. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_hamltemplate_test.rb +144 -0
  387. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_kramdown_test.rb +42 -0
  388. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.less +1 -0
  389. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.rb +42 -0
  390. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_liquidtemplate_test.rb +78 -0
  391. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markaby_test.rb +88 -0
  392. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markdown_test.rb +172 -0
  393. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_marukutemplate_test.rb +48 -0
  394. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_nokogiritemplate_test.rb +87 -0
  395. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_radiustemplate_test.rb +75 -0
  396. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdiscounttemplate_test.rb +55 -0
  397. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdoctemplate_test.rb +31 -0
  398. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redcarpettemplate_test.rb +71 -0
  399. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redclothtemplate_test.rb +36 -0
  400. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_sasstemplate_test.rb +41 -0
  401. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_stringtemplate_test.rb +170 -0
  402. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_template_test.rb +323 -0
  403. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_test.rb +65 -0
  404. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_wikiclothtemplate_test.rb +32 -0
  405. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_yajltemplate_test.rb +101 -0
  406. data/vendor/bundle/gems/tilt-1.4.1/tilt.gemspec +120 -0
  407. data/vendor/bundle/gems/yard-0.8.6.1/LEGAL +66 -0
  408. data/vendor/bundle/gems/yard-0.8.6.1/LICENSE +22 -0
  409. data/vendor/bundle/gems/yard-0.8.6.1/README.md +601 -0
  410. data/vendor/bundle/gems/yard-0.8.6.1/Rakefile +61 -0
  411. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/builtins_vs_eval.rb +23 -0
  412. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/concat_vs_join.rb +12 -0
  413. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/erb_vs_erubis.rb +53 -0
  414. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/format_args.rb +46 -0
  415. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/generation.rb +37 -0
  416. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/marshal_vs_dbm.rb +63 -0
  417. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/parsing.rb +46 -0
  418. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/pathname_vs_string.rb +50 -0
  419. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/rdoc_vs_yardoc.rb +10 -0
  420. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/registry_store_types.rb +48 -0
  421. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ri_vs_yri.rb +18 -0
  422. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ripper_parser.rb +12 -0
  423. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/splat_vs_flatten.rb +12 -0
  424. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_erb.rb +22 -0
  425. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_format.rb +6 -0
  426. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_profile.rb +17 -0
  427. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/yri_cache.rb +19 -0
  428. data/vendor/bundle/gems/yard-0.8.6.1/bin/yard +12 -0
  429. data/vendor/bundle/gems/yard-0.8.6.1/bin/yardoc +12 -0
  430. data/vendor/bundle/gems/yard-0.8.6.1/bin/yri +12 -0
  431. data/vendor/bundle/gems/yard-0.8.6.1/docs/CodeObjects.md +115 -0
  432. data/vendor/bundle/gems/yard-0.8.6.1/docs/GettingStarted.md +592 -0
  433. data/vendor/bundle/gems/yard-0.8.6.1/docs/Handlers.md +152 -0
  434. data/vendor/bundle/gems/yard-0.8.6.1/docs/Overview.md +61 -0
  435. data/vendor/bundle/gems/yard-0.8.6.1/docs/Parser.md +191 -0
  436. data/vendor/bundle/gems/yard-0.8.6.1/docs/Tags.md +282 -0
  437. data/vendor/bundle/gems/yard-0.8.6.1/docs/TagsArch.md +123 -0
  438. data/vendor/bundle/gems/yard-0.8.6.1/docs/Templates.md +496 -0
  439. data/vendor/bundle/gems/yard-0.8.6.1/docs/WhatsNew.md +1244 -0
  440. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/code-objects-class-diagram.png +0 -0
  441. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/handlers-class-diagram.png +0 -0
  442. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/overview-class-diagram.png +0 -0
  443. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/parser-class-diagram.png +0 -0
  444. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/tags-class-diagram.png +0 -0
  445. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/full_list_tag.erb +7 -0
  446. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/setup.rb +6 -0
  447. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/setup.rb +8 -0
  448. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/tag_list.erb +11 -0
  449. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/list.erb +18 -0
  450. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/setup.rb +27 -0
  451. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/plugin.rb +65 -0
  452. data/vendor/bundle/gems/yard-0.8.6.1/lib/rubygems_plugin.rb +4 -0
  453. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/autoload.rb +290 -0
  454. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command.rb +84 -0
  455. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command_parser.rb +92 -0
  456. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/config.rb +136 -0
  457. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/diff.rb +270 -0
  458. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/display.rb +68 -0
  459. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/gems.rb +83 -0
  460. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/graph.rb +125 -0
  461. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/help.rb +18 -0
  462. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/i18n.rb +69 -0
  463. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/list.rb +22 -0
  464. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/markup_types.rb +33 -0
  465. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/server.rb +253 -0
  466. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/stats.rb +213 -0
  467. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardoc.rb +731 -0
  468. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardopts_command.rb +109 -0
  469. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yri.rb +214 -0
  470. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/base.rb +585 -0
  471. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_object.rb +143 -0
  472. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_variable_object.rb +8 -0
  473. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/constant_object.rb +13 -0
  474. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extended_method_object.rb +23 -0
  475. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extra_file_object.rb +128 -0
  476. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/macro_object.rb +172 -0
  477. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/method_object.rb +191 -0
  478. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/module_object.rb +18 -0
  479. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/namespace_object.rb +200 -0
  480. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/proxy.rb +258 -0
  481. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/root_object.rb +17 -0
  482. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/config.rb +269 -0
  483. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/array.rb +15 -0
  484. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/file.rb +65 -0
  485. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/hash.rb +15 -0
  486. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/insertion.rb +60 -0
  487. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/module.rb +19 -0
  488. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/string.rb +67 -0
  489. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/symbol_hash.rb +73 -0
  490. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring.rb +364 -0
  491. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring_parser.rb +321 -0
  492. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/globals.rb +18 -0
  493. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/base.rb +597 -0
  494. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/alias_handler.rb +15 -0
  495. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/attribute_handler.rb +13 -0
  496. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/base.rb +110 -0
  497. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/class_handler.rb +26 -0
  498. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/constant_handler.rb +12 -0
  499. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/handler_methods.rb +166 -0
  500. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/init_handler.rb +18 -0
  501. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/method_handler.rb +35 -0
  502. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/mixin_handler.rb +13 -0
  503. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/module_handler.rb +16 -0
  504. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/override_comment_handler.rb +30 -0
  505. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/path_handler.rb +10 -0
  506. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/struct_handler.rb +12 -0
  507. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/symbol_handler.rb +7 -0
  508. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/processor.rb +201 -0
  509. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/alias_handler.rb +41 -0
  510. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/attribute_handler.rb +82 -0
  511. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/base.rb +164 -0
  512. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_condition_handler.rb +86 -0
  513. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_handler.rb +121 -0
  514. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_variable_handler.rb +16 -0
  515. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/comment_handler.rb +9 -0
  516. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/constant_handler.rb +45 -0
  517. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler.rb +14 -0
  518. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler_methods.rb +77 -0
  519. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/exception_handler.rb +26 -0
  520. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/extend_handler.rb +21 -0
  521. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/alias_handler.rb +34 -0
  522. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/attribute_handler.rb +60 -0
  523. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/base.rb +250 -0
  524. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_condition_handler.rb +83 -0
  525. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_handler.rb +111 -0
  526. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_variable_handler.rb +14 -0
  527. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/comment_handler.rb +9 -0
  528. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/constant_handler.rb +28 -0
  529. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/dsl_handler.rb +16 -0
  530. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/exception_handler.rb +12 -0
  531. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/extend_handler.rb +20 -0
  532. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/method_handler.rb +85 -0
  533. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/mixin_handler.rb +39 -0
  534. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_function_handler.rb +18 -0
  535. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_handler.rb +11 -0
  536. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/private_constant_handler.rb +21 -0
  537. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/visibility_handler.rb +16 -0
  538. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/yield_handler.rb +28 -0
  539. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_condition_handler.rb +8 -0
  540. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_handler.rb +92 -0
  541. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/mixin_handler.rb +36 -0
  542. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_function_handler.rb +26 -0
  543. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_handler.rb +11 -0
  544. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/private_constant_handler.rb +36 -0
  545. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/struct_handler_methods.rb +141 -0
  546. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/visibility_handler.rb +24 -0
  547. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/yield_handler.rb +30 -0
  548. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/locale.rb +74 -0
  549. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/message.rb +56 -0
  550. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/messages.rb +55 -0
  551. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/pot_generator.rb +280 -0
  552. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/text.rb +173 -0
  553. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/logging.rb +190 -0
  554. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/options.rb +216 -0
  555. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/base.rb +56 -0
  556. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/c_parser.rb +225 -0
  557. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/comment_parser.rb +131 -0
  558. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/statement.rb +63 -0
  559. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ast_node.rb +496 -0
  560. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_lex.rb +1377 -0
  561. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_parser.rb +31 -0
  562. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement.rb +65 -0
  563. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement_list.rb +384 -0
  564. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/token_list.rb +71 -0
  565. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ruby_parser.rb +625 -0
  566. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/source_parser.rb +517 -0
  567. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rake/yardoc_task.rb +74 -0
  568. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry.rb +438 -0
  569. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry_store.rb +319 -0
  570. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/LICENSE.txt +57 -0
  571. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/MIT.txt +20 -0
  572. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/gem.rb +9 -0
  573. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/source_index.rb +370 -0
  574. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports.rb +8 -0
  575. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/doc_manager.rb +88 -0
  576. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/specification.rb +41 -0
  577. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/base.rb +80 -0
  578. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/file_system_serializer.rb +90 -0
  579. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/process_serializer.rb +24 -0
  580. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/stdout_serializer.rb +32 -0
  581. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/yardoc_serializer.rb +124 -0
  582. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/adapter.rb +100 -0
  583. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/base.rb +192 -0
  584. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_file_command.rb +24 -0
  585. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_object_command.rb +58 -0
  586. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/frames_command.rb +15 -0
  587. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_command.rb +148 -0
  588. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_index_command.rb +24 -0
  589. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/list_command.rb +24 -0
  590. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/search_command.rb +78 -0
  591. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/static_file_command.rb +57 -0
  592. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_helper.rb +76 -0
  593. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_serializer.rb +33 -0
  594. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/library_version.rb +227 -0
  595. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/rack_adapter.rb +88 -0
  596. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/router.rb +176 -0
  597. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/static_caching.rb +45 -0
  598. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/css/custom.css +78 -0
  599. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/images/processing.gif +0 -0
  600. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/js/autocomplete.js +12 -0
  601. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/breadcrumb.erb +46 -0
  602. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/script_setup.erb +8 -0
  603. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/setup.rb +7 -0
  604. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/permalink.erb +4 -0
  605. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/setup.rb +4 -0
  606. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/contents.erb +13 -0
  607. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/headers.erb +26 -0
  608. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/library_list.erb +12 -0
  609. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/setup.rb +3 -0
  610. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/title.erb +2 -0
  611. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/processing.erb +51 -0
  612. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/setup.rb +3 -0
  613. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/search.erb +18 -0
  614. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/setup.rb +8 -0
  615. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/webrick_adapter.rb +43 -0
  616. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server.rb +11 -0
  617. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_factory.rb +176 -0
  618. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_tag.rb +12 -0
  619. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/directives.rb +595 -0
  620. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/library.rb +630 -0
  621. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/option_tag.rb +12 -0
  622. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/overload_tag.rb +65 -0
  623. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag.rb +7 -0
  624. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag_list.rb +27 -0
  625. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag.rb +57 -0
  626. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag_format_error.rb +6 -0
  627. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/engine.rb +185 -0
  628. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/erb_cache.rb +22 -0
  629. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/base_helper.rb +212 -0
  630. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/filter_helper.rb +26 -0
  631. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_helper.rb +599 -0
  632. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_syntax_highlight_helper.rb +59 -0
  633. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markdown.rb +22 -0
  634. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markup.rb +106 -0
  635. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup_helper.rb +169 -0
  636. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/method_helper.rb +74 -0
  637. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/module_helper.rb +19 -0
  638. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/text_helper.rb +95 -0
  639. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/uml_helper.rb +46 -0
  640. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/section.rb +106 -0
  641. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template.rb +407 -0
  642. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template_options.rb +88 -0
  643. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/verifier.rb +148 -0
  644. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/version.rb +3 -0
  645. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard.rb +71 -0
  646. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_parser_spec.rb +43 -0
  647. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_spec.rb +36 -0
  648. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/config_spec.rb +92 -0
  649. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/diff_spec.rb +260 -0
  650. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/display_spec.rb +30 -0
  651. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/gems_spec.rb +81 -0
  652. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/graph_spec.rb +17 -0
  653. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/help_spec.rb +22 -0
  654. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/i18n_spec.rb +111 -0
  655. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/list_spec.rb +8 -0
  656. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/markup_types_spec.rb +22 -0
  657. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/server_spec.rb +327 -0
  658. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/stats_spec.rb +90 -0
  659. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yardoc_spec.rb +777 -0
  660. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yri_spec.rb +99 -0
  661. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/base_spec.rb +438 -0
  662. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/class_object_spec.rb +225 -0
  663. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/code_object_list_spec.rb +33 -0
  664. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/constants_spec.rb +82 -0
  665. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/extra_file_object_spec.rb +147 -0
  666. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/macro_object_spec.rb +148 -0
  667. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/method_object_spec.rb +175 -0
  668. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/module_object_spec.rb +141 -0
  669. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/namespace_object_spec.rb +170 -0
  670. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/proxy_spec.rb +140 -0
  671. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/spec_helper.rb +3 -0
  672. data/vendor/bundle/gems/yard-0.8.6.1/spec/config_spec.rb +176 -0
  673. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/array_spec.rb +14 -0
  674. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/file_spec.rb +68 -0
  675. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/hash_spec.rb +14 -0
  676. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/insertion_spec.rb +37 -0
  677. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/module_spec.rb +15 -0
  678. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/string_spec.rb +42 -0
  679. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/symbol_hash_spec.rb +86 -0
  680. data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_parser_spec.rb +228 -0
  681. data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_spec.rb +325 -0
  682. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/alias_handler_spec.rb +80 -0
  683. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/attribute_handler_spec.rb +94 -0
  684. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/base_spec.rb +206 -0
  685. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/alias_handler_spec.rb +33 -0
  686. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/attribute_handler_spec.rb +40 -0
  687. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/class_handler_spec.rb +63 -0
  688. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/constant_handler_spec.rb +68 -0
  689. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/init_handler_spec.rb +47 -0
  690. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/method_handler_spec.rb +229 -0
  691. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/mixin_handler_spec.rb +27 -0
  692. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/module_handler_spec.rb +38 -0
  693. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/override_comment_handler_spec.rb +46 -0
  694. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/path_handler_spec.rb +35 -0
  695. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/spec_helper.rb +13 -0
  696. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/struct_handler_spec.rb +15 -0
  697. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_condition_handler_spec.rb +67 -0
  698. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_handler_spec.rb +246 -0
  699. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_variable_handler_spec.rb +11 -0
  700. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/constant_handler_spec.rb +64 -0
  701. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/dsl_handler_spec.rb +197 -0
  702. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/alias_handler_001.rb.txt +44 -0
  703. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/attribute_handler_001.rb.txt +32 -0
  704. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_condition_handler_001.rb.txt +69 -0
  705. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_handler_001.rb.txt +120 -0
  706. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_variable_handler_001.rb.txt +10 -0
  707. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/constant_handler_001.rb.txt +25 -0
  708. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/dsl_handler_001.rb.txt +125 -0
  709. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/exception_handler_001.rb.txt +59 -0
  710. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/extend_handler_001.rb.txt +16 -0
  711. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_condition_handler_001.rb.txt +10 -0
  712. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_handler_001.rb.txt +126 -0
  713. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/mixin_handler_001.rb.txt +37 -0
  714. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/module_handler_001.rb.txt +29 -0
  715. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/private_constant_handler_001.rb.txt +8 -0
  716. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/process_handler_001.rb.txt +11 -0
  717. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/visibility_handler_001.rb.txt +32 -0
  718. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/yield_handler_001.rb.txt +54 -0
  719. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/exception_handler_spec.rb +48 -0
  720. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/extend_handler_spec.rb +23 -0
  721. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/legacy_base_spec.rb +128 -0
  722. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_condition_handler_spec.rb +14 -0
  723. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_handler_spec.rb +184 -0
  724. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/mixin_handler_spec.rb +55 -0
  725. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_function_handler_spec.rb +105 -0
  726. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_handler_spec.rb +34 -0
  727. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/private_constant_handler_spec.rb +24 -0
  728. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/processor_spec.rb +34 -0
  729. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/base_spec.rb +94 -0
  730. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/legacy/base_spec.rb +82 -0
  731. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/spec_helper.rb +33 -0
  732. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/visibility_handler_spec.rb +39 -0
  733. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/yield_handler_spec.rb +51 -0
  734. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/locale_spec.rb +68 -0
  735. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/message_spec.rb +52 -0
  736. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/messages_spec.rb +67 -0
  737. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/pot_generator_spec.rb +262 -0
  738. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/text_spec.rb +180 -0
  739. data/vendor/bundle/gems/yard-0.8.6.1/spec/logging_spec.rb +35 -0
  740. data/vendor/bundle/gems/yard-0.8.6.1/spec/options_spec.rb +171 -0
  741. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/base_spec.rb +24 -0
  742. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/c_parser_spec.rb +166 -0
  743. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/array.c.txt +3887 -0
  744. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/example1.rb.txt +8 -0
  745. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/extrafile.c.txt +8 -0
  746. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/multifile.c.txt +6 -0
  747. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/override.c.txt +424 -0
  748. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_001.rb.txt +2 -0
  749. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_002.rb.txt +2 -0
  750. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/tag_handler_001.rb.txt +8 -0
  751. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ast_node_spec.rb +33 -0
  752. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/statement_list_spec.rb +299 -0
  753. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/token_list_spec.rb +77 -0
  754. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ruby_parser_spec.rb +334 -0
  755. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/source_parser_spec.rb +717 -0
  756. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/tag_parsing_spec.rb +18 -0
  757. data/vendor/bundle/gems/yard-0.8.6.1/spec/rake/yardoc_task_spec.rb +101 -0
  758. data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_spec.rb +393 -0
  759. data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_store_spec.rb +315 -0
  760. data/vendor/bundle/gems/yard-0.8.6.1/spec/rubygems/doc_manager_spec.rb +112 -0
  761. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/checksums +1 -0
  762. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat +0 -0
  763. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat +0 -0
  764. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo.dat +0 -0
  765. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/root.dat +0 -0
  766. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/proxy_types +2 -0
  767. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/file_system_serializer_spec.rb +124 -0
  768. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/spec_helper.rb +2 -0
  769. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/yardoc_serializer_spec.rb +46 -0
  770. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/adapter_spec.rb +38 -0
  771. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/base_spec.rb +87 -0
  772. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/library_command_spec.rb +39 -0
  773. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/static_file_command_spec.rb +84 -0
  774. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_helper_spec.rb +53 -0
  775. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_serializer_spec.rb +45 -0
  776. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/rack_adapter_spec.rb +20 -0
  777. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/router_spec.rb +122 -0
  778. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/spec_helper.rb +17 -0
  779. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/static_caching_spec.rb +39 -0
  780. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/webrick_servlet_spec.rb +20 -0
  781. data/vendor/bundle/gems/yard-0.8.6.1/spec/server_spec.rb +10 -0
  782. data/vendor/bundle/gems/yard-0.8.6.1/spec/spec_helper.rb +128 -0
  783. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_factory_spec.rb +152 -0
  784. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_tag_spec.rb +11 -0
  785. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/directives_spec.rb +436 -0
  786. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/library_spec.rb +34 -0
  787. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/overload_tag_spec.rb +53 -0
  788. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/ref_tag_list_spec.rb +53 -0
  789. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/class_spec.rb +44 -0
  790. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/constant_spec.rb +40 -0
  791. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/engine_spec.rb +121 -0
  792. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.html +280 -0
  793. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.txt +36 -0
  794. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class002.html +35 -0
  795. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant001.txt +25 -0
  796. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant002.txt +7 -0
  797. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant003.txt +11 -0
  798. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.html +130 -0
  799. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.txt +35 -0
  800. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.html +86 -0
  801. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.txt +20 -0
  802. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.html +159 -0
  803. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.txt +45 -0
  804. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.html +44 -0
  805. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.txt +10 -0
  806. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.html +99 -0
  807. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.txt +33 -0
  808. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.dot +33 -0
  809. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.html +791 -0
  810. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.txt +33 -0
  811. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module002.html +318 -0
  812. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module003.html +185 -0
  813. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module004.html +387 -0
  814. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/tag001.txt +82 -0
  815. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/base_helper_spec.rb +175 -0
  816. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_helper_spec.rb +612 -0
  817. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +48 -0
  818. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup/rdoc_markup_spec.rb +84 -0
  819. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup_helper_spec.rb +135 -0
  820. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/method_helper_spec.rb +82 -0
  821. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/shared_signature_examples.rb +123 -0
  822. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/text_helper_spec.rb +44 -0
  823. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/method_spec.rb +102 -0
  824. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/module_spec.rb +181 -0
  825. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/onefile_spec.rb +64 -0
  826. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/section_spec.rb +146 -0
  827. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/spec_helper.rb +73 -0
  828. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/tag_spec.rb +51 -0
  829. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/template_spec.rb +409 -0
  830. data/vendor/bundle/gems/yard-0.8.6.1/spec/verifier_spec.rb +106 -0
  831. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/setup.rb +6 -0
  832. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/superklass.erb +3 -0
  833. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/constructor_details.erb +8 -0
  834. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/setup.rb +1 -0
  835. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/subclasses.erb +4 -0
  836. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/setup.rb +36 -0
  837. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/setup.rb +11 -0
  838. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/subclasses.erb +5 -0
  839. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/header.erb +11 -0
  840. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/setup.rb +3 -0
  841. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/abstract.erb +4 -0
  842. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/deprecated.erb +1 -0
  843. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/index.erb +5 -0
  844. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/note.erb +6 -0
  845. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/private.erb +4 -0
  846. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/returns_void.erb +1 -0
  847. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/text.erb +1 -0
  848. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/todo.erb +6 -0
  849. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/setup.rb +49 -0
  850. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/abstract.erb +2 -0
  851. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/deprecated.erb +2 -0
  852. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/index.erb +2 -0
  853. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/note.erb +4 -0
  854. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/private.erb +2 -0
  855. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/returns_void.erb +1 -0
  856. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/text.erb +1 -0
  857. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/todo.erb +4 -0
  858. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/common.css +1 -0
  859. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/full_list.css +57 -0
  860. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/style.css +338 -0
  861. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/frames.erb +28 -0
  862. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list.erb +39 -0
  863. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_class.erb +2 -0
  864. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_file.erb +5 -0
  865. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_method.erb +8 -0
  866. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/app.js +214 -0
  867. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/full_list.js +178 -0
  868. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/jquery.js +4 -0
  869. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/setup.rb +199 -0
  870. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/header.erb +6 -0
  871. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/setup.rb +14 -0
  872. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/breadcrumb.erb +13 -0
  873. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/files.erb +11 -0
  874. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/footer.erb +5 -0
  875. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/headers.erb +14 -0
  876. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/index.erb +2 -0
  877. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/layout.erb +20 -0
  878. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/listing.erb +4 -0
  879. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/objects.erb +32 -0
  880. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/script_setup.erb +5 -0
  881. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/search.erb +8 -0
  882. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/setup.rb +71 -0
  883. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/html/header.erb +16 -0
  884. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/setup.rb +3 -0
  885. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/text/header.erb +1 -0
  886. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/header.erb +3 -0
  887. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/method_signature.erb +25 -0
  888. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/source.erb +10 -0
  889. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/setup.rb +10 -0
  890. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/header.erb +10 -0
  891. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/method_signature.erb +12 -0
  892. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/setup.rb +10 -0
  893. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/child.erb +1 -0
  894. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/dependencies.erb +3 -0
  895. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/header.erb +6 -0
  896. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/info.erb +14 -0
  897. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/setup.rb +14 -0
  898. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_details.erb +10 -0
  899. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_summary.erb +8 -0
  900. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/box_info.erb +37 -0
  901. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/children.erb +8 -0
  902. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/constant_summary.erb +13 -0
  903. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/defines.erb +3 -0
  904. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/header.erb +5 -0
  905. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_attributes.erb +14 -0
  906. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_constants.erb +8 -0
  907. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_methods.erb +19 -0
  908. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/item_summary.erb +40 -0
  909. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_details_list.erb +9 -0
  910. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_summary.erb +14 -0
  911. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/methodmissing.erb +12 -0
  912. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/pre_docstring.erb +1 -0
  913. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/setup.rb +164 -0
  914. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/children.erb +10 -0
  915. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/class_meths_list.erb +8 -0
  916. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/extends.erb +8 -0
  917. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/header.erb +7 -0
  918. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/includes.erb +8 -0
  919. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/instance_meths_list.erb +8 -0
  920. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/setup.rb +12 -0
  921. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/files.erb +5 -0
  922. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/headers.erb +6 -0
  923. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/layout.erb +17 -0
  924. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/readme.erb +3 -0
  925. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/setup.rb +61 -0
  926. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/child.erb +3 -0
  927. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/setup.rb +5 -0
  928. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/html/setup.rb +1 -0
  929. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/example.erb +11 -0
  930. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/index.erb +3 -0
  931. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/option.erb +24 -0
  932. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/overload.erb +14 -0
  933. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/see.erb +8 -0
  934. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/tag.erb +20 -0
  935. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/setup.rb +55 -0
  936. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/example.erb +12 -0
  937. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/index.erb +1 -0
  938. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/option.erb +20 -0
  939. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/overload.erb +19 -0
  940. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/see.erb +11 -0
  941. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/tag.erb +13 -0
  942. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/class/html/setup.rb +1 -0
  943. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/docstring/html/setup.rb +1 -0
  944. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/css/style.css +108 -0
  945. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/js/app.js +33 -0
  946. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/setup.rb +73 -0
  947. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/layout.erb +81 -0
  948. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/setup.rb +28 -0
  949. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/header.erb +18 -0
  950. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/setup.rb +21 -0
  951. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/header.erb +7 -0
  952. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/method_list.erb +5 -0
  953. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/setup.rb +26 -0
  954. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/files.erb +4 -0
  955. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/setup.rb +5 -0
  956. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/toc.erb +3 -0
  957. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/tags/html/setup.rb +8 -0
  958. data/vendor/bundle/gems/yard-0.8.6.1/yard.gemspec +25 -0
  959. data/vendor/bundle/specifications/highline-1.6.18.gemspec +21 -0
  960. data/vendor/bundle/specifications/mime-types-1.23.gemspec +67 -0
  961. data/vendor/bundle/specifications/minitest-4.7.4.gemspec +36 -0
  962. data/vendor/bundle/specifications/multi_json-1.7.3.gemspec +30 -0
  963. data/vendor/bundle/specifications/rdiscount-2.0.7.3.gemspec +21 -0
  964. data/vendor/bundle/specifications/shoulda-3.5.0.gemspec +50 -0
  965. data/vendor/bundle/specifications/shoulda-matchers-2.1.0.gemspec +57 -0
  966. data/vendor/bundle/specifications/tilt-1.4.1.gemspec +98 -0
  967. data/vendor/bundle/specifications/yard-0.8.6.1.gemspec +20 -0
  968. metadata +964 -2
@@ -0,0 +1,1012 @@
1
+ # highline.rb
2
+ #
3
+ # Created by James Edward Gray II on 2005-04-26.
4
+ # Copyright 2005 Gray Productions. All rights reserved.
5
+ #
6
+ # See HighLine for documentation.
7
+ #
8
+ # This is Free Software. See LICENSE and COPYING for details.
9
+
10
+ require "erb"
11
+ require "optparse"
12
+ require "stringio"
13
+ require "abbrev"
14
+ require "highline/system_extensions"
15
+ require "highline/question"
16
+ require "highline/menu"
17
+ require "highline/color_scheme"
18
+ require "highline/style"
19
+
20
+ #
21
+ # A HighLine object is a "high-level line oriented" shell over an input and an
22
+ # output stream. HighLine simplifies common console interaction, effectively
23
+ # replacing puts() and gets(). User code can simply specify the question to ask
24
+ # and any details about user interaction, then leave the rest of the work to
25
+ # HighLine. When HighLine.ask() returns, you'll have the answer you requested,
26
+ # even if HighLine had to ask many times, validate results, perform range
27
+ # checking, convert types, etc.
28
+ #
29
+ class HighLine
30
+ # The version of the installed library.
31
+ VERSION = "1.6.18".freeze
32
+
33
+ # An internal HighLine error. User code does not need to trap this.
34
+ class QuestionError < StandardError
35
+ # do nothing, just creating a unique error type
36
+ end
37
+
38
+ # The setting used to disable color output.
39
+ @@use_color = true
40
+
41
+ # Pass +false+ to _setting_ to turn off HighLine's color escapes.
42
+ def self.use_color=( setting )
43
+ @@use_color = setting
44
+ end
45
+
46
+ # Returns true if HighLine is currently using color escapes.
47
+ def self.use_color?
48
+ @@use_color
49
+ end
50
+
51
+ # For checking if the current version of HighLine supports RGB colors
52
+ # Usage: HighLine.supports_rgb_color? rescue false # rescue for compatibility with older versions
53
+ # Note: color usage also depends on HighLine.use_color being set
54
+ def self.supports_rgb_color?
55
+ true
56
+ end
57
+
58
+ # The setting used to disable EOF tracking.
59
+ @@track_eof = true
60
+
61
+ # Pass +false+ to _setting_ to turn off HighLine's EOF tracking.
62
+ def self.track_eof=( setting )
63
+ @@track_eof = setting
64
+ end
65
+
66
+ # Returns true if HighLine is currently tracking EOF for input.
67
+ def self.track_eof?
68
+ @@track_eof
69
+ end
70
+
71
+ # The setting used to control color schemes.
72
+ @@color_scheme = nil
73
+
74
+ # Pass ColorScheme to _setting_ to set a HighLine color scheme.
75
+ def self.color_scheme=( setting )
76
+ @@color_scheme = setting
77
+ end
78
+
79
+ # Returns the current color scheme.
80
+ def self.color_scheme
81
+ @@color_scheme
82
+ end
83
+
84
+ # Returns +true+ if HighLine is currently using a color scheme.
85
+ def self.using_color_scheme?
86
+ not @@color_scheme.nil?
87
+ end
88
+
89
+ #
90
+ # Embed in a String to clear all previous ANSI sequences. This *MUST* be
91
+ # done before the program exits!
92
+ #
93
+
94
+ ERASE_LINE_STYLE = Style.new(:name=>:erase_line, :builtin=>true, :code=>"\e[K") # Erase the current line of terminal output
95
+ ERASE_CHAR_STYLE = Style.new(:name=>:erase_char, :builtin=>true, :code=>"\e[P") # Erase the character under the cursor.
96
+ CLEAR_STYLE = Style.new(:name=>:clear, :builtin=>true, :code=>"\e[0m") # Clear color settings
97
+ RESET_STYLE = Style.new(:name=>:reset, :builtin=>true, :code=>"\e[0m") # Alias for CLEAR.
98
+ BOLD_STYLE = Style.new(:name=>:bold, :builtin=>true, :code=>"\e[1m") # Bold; Note: bold + a color works as you'd expect,
99
+ # for example bold black. Bold without a color displays
100
+ # the system-defined bold color (e.g. red on Mac iTerm)
101
+ DARK_STYLE = Style.new(:name=>:dark, :builtin=>true, :code=>"\e[2m") # Dark; support uncommon
102
+ UNDERLINE_STYLE = Style.new(:name=>:underline, :builtin=>true, :code=>"\e[4m") # Underline
103
+ UNDERSCORE_STYLE = Style.new(:name=>:underscore, :builtin=>true, :code=>"\e[4m") # Alias for UNDERLINE
104
+ BLINK_STYLE = Style.new(:name=>:blink, :builtin=>true, :code=>"\e[5m") # Blink; support uncommon
105
+ REVERSE_STYLE = Style.new(:name=>:reverse, :builtin=>true, :code=>"\e[7m") # Reverse foreground and background
106
+ CONCEALED_STYLE = Style.new(:name=>:concealed, :builtin=>true, :code=>"\e[8m") # Concealed; support uncommon
107
+
108
+ STYLES = %w{CLEAR RESET BOLD DARK UNDERLINE UNDERSCORE BLINK REVERSE CONCEALED}
109
+
110
+ # These RGB colors are approximate; see http://en.wikipedia.org/wiki/ANSI_escape_code
111
+ BLACK_STYLE = Style.new(:name=>:black, :builtin=>true, :code=>"\e[30m", :rgb=>[ 0, 0, 0])
112
+ RED_STYLE = Style.new(:name=>:red, :builtin=>true, :code=>"\e[31m", :rgb=>[128, 0, 0])
113
+ GREEN_STYLE = Style.new(:name=>:green, :builtin=>true, :code=>"\e[32m", :rgb=>[ 0,128, 0])
114
+ BLUE_STYLE = Style.new(:name=>:blue, :builtin=>true, :code=>"\e[34m", :rgb=>[ 0, 0,128])
115
+ YELLOW_STYLE = Style.new(:name=>:yellow, :builtin=>true, :code=>"\e[33m", :rgb=>[128,128, 0])
116
+ MAGENTA_STYLE = Style.new(:name=>:magenta, :builtin=>true, :code=>"\e[35m", :rgb=>[128, 0,128])
117
+ CYAN_STYLE = Style.new(:name=>:cyan, :builtin=>true, :code=>"\e[36m", :rgb=>[ 0,128,128])
118
+ # On Mac OSX Terminal, white is actually gray
119
+ WHITE_STYLE = Style.new(:name=>:white, :builtin=>true, :code=>"\e[37m", :rgb=>[192,192,192])
120
+ # Alias for WHITE, since WHITE is actually a light gray on Macs
121
+ GRAY_STYLE = Style.new(:name=>:gray, :builtin=>true, :code=>"\e[37m", :rgb=>[192,192,192])
122
+ # On Mac OSX Terminal, this is black foreground, or bright white background.
123
+ # Also used as base for RGB colors, if available
124
+ NONE_STYLE = Style.new(:name=>:none, :builtin=>true, :code=>"\e[38m", :rgb=>[ 0, 0, 0])
125
+
126
+ BASIC_COLORS = %w{BLACK RED GREEN YELLOW BLUE MAGENTA CYAN WHITE GRAY NONE}
127
+
128
+ colors = BASIC_COLORS.dup
129
+ BASIC_COLORS.each do |color|
130
+ bright_color = "BRIGHT_#{color}"
131
+ colors << bright_color
132
+ const_set bright_color+'_STYLE', const_get(color + '_STYLE').bright
133
+ end
134
+ COLORS = colors
135
+
136
+ colors.each do |color|
137
+ const_set color, const_get("#{color}_STYLE").code
138
+ const_set "ON_#{color}_STYLE", const_get("#{color}_STYLE").on
139
+ const_set "ON_#{color}", const_get("ON_#{color}_STYLE").code
140
+ end
141
+ ON_NONE_STYLE.rgb = [255,255,255] # Override; white background
142
+
143
+ STYLES.each do |style|
144
+ const_set style, const_get("#{style}_STYLE").code
145
+ end
146
+
147
+ # For RGB colors:
148
+ def self.const_missing(name)
149
+ if name.to_s =~ /^(ON_)?(RGB_)([A-F0-9]{6})(_STYLE)?$/ # RGB color
150
+ on = $1
151
+ suffix = $4
152
+ if suffix
153
+ code_name = $1.to_s + $2 + $3
154
+ else
155
+ code_name = name.to_s
156
+ end
157
+ style_name = code_name + '_STYLE'
158
+ style = Style.rgb($3)
159
+ style = style.on if on
160
+ const_set(style_name, style)
161
+ const_set(code_name, style.code)
162
+ if suffix
163
+ style
164
+ else
165
+ style.code
166
+ end
167
+ else
168
+ raise NameError, "Bad color or uninitialized constant #{name}"
169
+ end
170
+ end
171
+
172
+ #
173
+ # Create an instance of HighLine, connected to the streams _input_
174
+ # and _output_.
175
+ #
176
+ def initialize( input = $stdin, output = $stdout,
177
+ wrap_at = nil, page_at = nil, indent_size=3, indent_level=0 )
178
+ @input = input
179
+ @output = output
180
+
181
+ @multi_indent = true
182
+ @indent_size = indent_size
183
+ @indent_level = indent_level
184
+
185
+ self.wrap_at = wrap_at
186
+ self.page_at = page_at
187
+
188
+ @question = nil
189
+ @answer = nil
190
+ @menu = nil
191
+ @header = nil
192
+ @prompt = nil
193
+ @gather = nil
194
+ @answers = nil
195
+ @key = nil
196
+
197
+ initialize_system_extensions if respond_to?(:initialize_system_extensions)
198
+ end
199
+
200
+ include HighLine::SystemExtensions
201
+
202
+ # The current column setting for wrapping output.
203
+ attr_reader :wrap_at
204
+ # The current row setting for paging output.
205
+ attr_reader :page_at
206
+ # Indentation over multiple lines
207
+ attr_accessor :multi_indent
208
+ # The indentation size
209
+ attr_accessor :indent_size
210
+ # The indentation level
211
+ attr_accessor :indent_level
212
+
213
+ #
214
+ # A shortcut to HighLine.ask() a question that only accepts "yes" or "no"
215
+ # answers ("y" and "n" are allowed) and returns +true+ or +false+
216
+ # (+true+ for "yes"). If provided a +true+ value, _character_ will cause
217
+ # HighLine to fetch a single character response. A block can be provided
218
+ # to further configure the question as in HighLine.ask()
219
+ #
220
+ # Raises EOFError if input is exhausted.
221
+ #
222
+ def agree( yes_or_no_question, character = nil )
223
+ ask(yes_or_no_question, lambda { |yn| yn.downcase[0] == ?y}) do |q|
224
+ q.validate = /\Ay(?:es)?|no?\Z/i
225
+ q.responses[:not_valid] = 'Please enter "yes" or "no".'
226
+ q.responses[:ask_on_error] = :question
227
+ q.character = character
228
+
229
+ yield q if block_given?
230
+ end
231
+ end
232
+
233
+ #
234
+ # This method is the primary interface for user input. Just provide a
235
+ # _question_ to ask the user, the _answer_type_ you want returned, and
236
+ # optionally a code block setting up details of how you want the question
237
+ # handled. See HighLine.say() for details on the format of _question_, and
238
+ # HighLine::Question for more information about _answer_type_ and what's
239
+ # valid in the code block.
240
+ #
241
+ # If <tt>@question</tt> is set before ask() is called, parameters are
242
+ # ignored and that object (must be a HighLine::Question) is used to drive
243
+ # the process instead.
244
+ #
245
+ # Raises EOFError if input is exhausted.
246
+ #
247
+ def ask( question, answer_type = String, &details ) # :yields: question
248
+ @question ||= Question.new(question, answer_type, &details)
249
+
250
+ return gather if @question.gather
251
+
252
+ # readline() needs to handle its own output, but readline only supports
253
+ # full line reading. Therefore if @question.echo is anything but true,
254
+ # the prompt will not be issued. And we have to account for that now.
255
+ # Also, JRuby-1.7's ConsoleReader.readLine() needs to be passed the prompt
256
+ # to handle line editing properly.
257
+ say(@question) unless ((JRUBY or @question.readline) and @question.echo == true)
258
+ begin
259
+ @answer = @question.answer_or_default(get_response)
260
+ unless @question.valid_answer?(@answer)
261
+ explain_error(:not_valid)
262
+ raise QuestionError
263
+ end
264
+
265
+ @answer = @question.convert(@answer)
266
+
267
+ if @question.in_range?(@answer)
268
+ if @question.confirm
269
+ # need to add a layer of scope to ask a question inside a
270
+ # question, without destroying instance data
271
+ context_change = self.class.new(@input, @output, @wrap_at, @page_at, @indent_size, @indent_level)
272
+ if @question.confirm == true
273
+ confirm_question = "Are you sure? "
274
+ else
275
+ # evaluate ERb under initial scope, so it will have
276
+ # access to @question and @answer
277
+ template = ERB.new(@question.confirm, nil, "%")
278
+ confirm_question = template.result(binding)
279
+ end
280
+ unless context_change.agree(confirm_question)
281
+ explain_error(nil)
282
+ raise QuestionError
283
+ end
284
+ end
285
+
286
+ @answer
287
+ else
288
+ explain_error(:not_in_range)
289
+ raise QuestionError
290
+ end
291
+ rescue QuestionError
292
+ retry
293
+ rescue ArgumentError, NameError => error
294
+ raise if error.is_a?(NoMethodError)
295
+ if error.message =~ /ambiguous/
296
+ # the assumption here is that OptionParser::Completion#complete
297
+ # (used for ambiguity resolution) throws exceptions containing
298
+ # the word 'ambiguous' whenever resolution fails
299
+ explain_error(:ambiguous_completion)
300
+ else
301
+ explain_error(:invalid_type)
302
+ end
303
+ retry
304
+ rescue Question::NoAutoCompleteMatch
305
+ explain_error(:no_completion)
306
+ retry
307
+ ensure
308
+ @question = nil # Reset Question object.
309
+ end
310
+ end
311
+
312
+ #
313
+ # This method is HighLine's menu handler. For simple usage, you can just
314
+ # pass all the menu items you wish to display. At that point, choose() will
315
+ # build and display a menu, walk the user through selection, and return
316
+ # their choice among the provided items. You might use this in a case
317
+ # statement for quick and dirty menus.
318
+ #
319
+ # However, choose() is capable of much more. If provided, a block will be
320
+ # passed a HighLine::Menu object to configure. Using this method, you can
321
+ # customize all the details of menu handling from index display, to building
322
+ # a complete shell-like menuing system. See HighLine::Menu for all the
323
+ # methods it responds to.
324
+ #
325
+ # Raises EOFError if input is exhausted.
326
+ #
327
+ def choose( *items, &details )
328
+ @menu = @question = Menu.new(&details)
329
+ @menu.choices(*items) unless items.empty?
330
+
331
+ # Set auto-completion
332
+ @menu.completion = @menu.options
333
+ # Set _answer_type_ so we can double as the Question for ask().
334
+ @menu.answer_type = if @menu.shell
335
+ lambda do |command| # shell-style selection
336
+ first_word = command.to_s.split.first || ""
337
+
338
+ options = @menu.options
339
+ options.extend(OptionParser::Completion)
340
+ answer = options.complete(first_word)
341
+
342
+ if answer.nil?
343
+ raise Question::NoAutoCompleteMatch
344
+ end
345
+
346
+ [answer.last, command.sub(/^\s*#{first_word}\s*/, "")]
347
+ end
348
+ else
349
+ @menu.options # normal menu selection, by index or name
350
+ end
351
+
352
+ # Provide hooks for ERb layouts.
353
+ @header = @menu.header
354
+ @prompt = @menu.prompt
355
+
356
+ if @menu.shell
357
+ selected = ask("Ignored", @menu.answer_type)
358
+ @menu.select(self, *selected)
359
+ else
360
+ selected = ask("Ignored", @menu.answer_type)
361
+ @menu.select(self, selected)
362
+ end
363
+ end
364
+
365
+ #
366
+ # This method provides easy access to ANSI color sequences, without the user
367
+ # needing to remember to CLEAR at the end of each sequence. Just pass the
368
+ # _string_ to color, followed by a list of _colors_ you would like it to be
369
+ # affected by. The _colors_ can be HighLine class constants, or symbols
370
+ # (:blue for BLUE, for example). A CLEAR will automatically be embedded to
371
+ # the end of the returned String.
372
+ #
373
+ # This method returns the original _string_ unchanged if HighLine::use_color?
374
+ # is +false+.
375
+ #
376
+ def self.color( string, *colors )
377
+ return string unless self.use_color?
378
+ Style(*colors).color(string)
379
+ end
380
+
381
+ # In case you just want the color code, without the embedding and the CLEAR
382
+ def self.color_code(*colors)
383
+ Style(*colors).code
384
+ end
385
+
386
+ # Works as an instance method, same as the class method
387
+ def color_code(*colors)
388
+ self.class.color_code(*colors)
389
+ end
390
+
391
+ # Works as an instance method, same as the class method
392
+ def color(*args)
393
+ self.class.color(*args)
394
+ end
395
+
396
+ # Remove color codes from a string
397
+ def self.uncolor(string)
398
+ Style.uncolor(string)
399
+ end
400
+
401
+ # Works as an instance method, same as the class method
402
+ def uncolor(string)
403
+ self.class.uncolor(string)
404
+ end
405
+
406
+ #
407
+ # This method is a utility for quickly and easily laying out lists. It can
408
+ # be accessed within ERb replacements of any text that will be sent to the
409
+ # user.
410
+ #
411
+ # The only required parameter is _items_, which should be the Array of items
412
+ # to list. A specified _mode_ controls how that list is formed and _option_
413
+ # has different effects, depending on the _mode_. Recognized modes are:
414
+ #
415
+ # <tt>:columns_across</tt>:: _items_ will be placed in columns,
416
+ # flowing from left to right. If given,
417
+ # _option_ is the number of columns to be
418
+ # used. When absent, columns will be
419
+ # determined based on _wrap_at_ or a
420
+ # default of 80 characters.
421
+ # <tt>:columns_down</tt>:: Identical to <tt>:columns_across</tt>,
422
+ # save flow goes down.
423
+ # <tt>:uneven_columns_across</tt>:: Like <tt>:columns_across</tt> but each
424
+ # column is sized independently.
425
+ # <tt>:uneven_columns_down</tt>:: Like <tt>:columns_down</tt> but each
426
+ # column is sized independently.
427
+ # <tt>:inline</tt>:: All _items_ are placed on a single line.
428
+ # The last two _items_ are separated by
429
+ # _option_ or a default of " or ". All
430
+ # other _items_ are separated by ", ".
431
+ # <tt>:rows</tt>:: The default mode. Each of the _items_ is
432
+ # placed on its own line. The _option_
433
+ # parameter is ignored in this mode.
434
+ #
435
+ # Each member of the _items_ Array is passed through ERb and thus can contain
436
+ # their own expansions. Color escape expansions do not contribute to the
437
+ # final field width.
438
+ #
439
+ def list( items, mode = :rows, option = nil )
440
+ items = items.to_ary.map do |item|
441
+ if item.nil?
442
+ ""
443
+ else
444
+ ERB.new(item, nil, "%").result(binding)
445
+ end
446
+ end
447
+
448
+ if items.empty?
449
+ ""
450
+ else
451
+ case mode
452
+ when :inline
453
+ option = " or " if option.nil?
454
+
455
+ if items.size == 1
456
+ items.first
457
+ else
458
+ items[0..-2].join(", ") + "#{option}#{items.last}"
459
+ end
460
+ when :columns_across, :columns_down
461
+ max_length = actual_length(
462
+ items.max { |a, b| actual_length(a) <=> actual_length(b) }
463
+ )
464
+
465
+ if option.nil?
466
+ limit = @wrap_at || 80
467
+ option = (limit + 2) / (max_length + 2)
468
+ end
469
+
470
+ items = items.map do |item|
471
+ pad = max_length + (item.to_s.length - actual_length(item))
472
+ "%-#{pad}s" % item
473
+ end
474
+ row_count = (items.size / option.to_f).ceil
475
+
476
+ if mode == :columns_across
477
+ rows = Array.new(row_count) { Array.new }
478
+ items.each_with_index do |item, index|
479
+ rows[index / option] << item
480
+ end
481
+
482
+ rows.map { |row| row.join(" ") + "\n" }.join
483
+ else
484
+ columns = Array.new(option) { Array.new }
485
+ items.each_with_index do |item, index|
486
+ columns[index / row_count] << item
487
+ end
488
+
489
+ list = ""
490
+ columns.first.size.times do |index|
491
+ list << columns.map { |column| column[index] }.
492
+ compact.join(" ") + "\n"
493
+ end
494
+ list
495
+ end
496
+ when :uneven_columns_across
497
+ if option.nil?
498
+ limit = @wrap_at || 80
499
+ items.size.downto(1) do |column_count|
500
+ row_count = (items.size / column_count.to_f).ceil
501
+ rows = Array.new(row_count) { Array.new }
502
+ items.each_with_index do |item, index|
503
+ rows[index / column_count] << item
504
+ end
505
+
506
+ widths = Array.new(column_count, 0)
507
+ rows.each do |row|
508
+ row.each_with_index do |field, column|
509
+ size = actual_length(field)
510
+ widths[column] = size if size > widths[column]
511
+ end
512
+ end
513
+
514
+ if column_count == 1 or
515
+ widths.inject(0) { |sum, n| sum + n + 2 } <= limit + 2
516
+ return rows.map { |row|
517
+ row.zip(widths).map { |field, i|
518
+ "%-#{i + (field.to_s.length - actual_length(field))}s" % field
519
+ }.join(" ") + "\n"
520
+ }.join
521
+ end
522
+ end
523
+ else
524
+ row_count = (items.size / option.to_f).ceil
525
+ rows = Array.new(row_count) { Array.new }
526
+ items.each_with_index do |item, index|
527
+ rows[index / option] << item
528
+ end
529
+
530
+ widths = Array.new(option, 0)
531
+ rows.each do |row|
532
+ row.each_with_index do |field, column|
533
+ size = actual_length(field)
534
+ widths[column] = size if size > widths[column]
535
+ end
536
+ end
537
+
538
+ return rows.map { |row|
539
+ row.zip(widths).map { |field, i|
540
+ "%-#{i + (field.to_s.length - actual_length(field))}s" % field
541
+ }.join(" ") + "\n"
542
+ }.join
543
+ end
544
+ when :uneven_columns_down
545
+ if option.nil?
546
+ limit = @wrap_at || 80
547
+ items.size.downto(1) do |column_count|
548
+ row_count = (items.size / column_count.to_f).ceil
549
+ columns = Array.new(column_count) { Array.new }
550
+ items.each_with_index do |item, index|
551
+ columns[index / row_count] << item
552
+ end
553
+
554
+ widths = Array.new(column_count, 0)
555
+ columns.each_with_index do |column, i|
556
+ column.each do |field|
557
+ size = actual_length(field)
558
+ widths[i] = size if size > widths[i]
559
+ end
560
+ end
561
+
562
+ if column_count == 1 or
563
+ widths.inject(0) { |sum, n| sum + n + 2 } <= limit + 2
564
+ list = ""
565
+ columns.first.size.times do |index|
566
+ list << columns.zip(widths).map { |column, width|
567
+ field = column[index]
568
+ "%-#{width + (field.to_s.length - actual_length(field))}s" %
569
+ field
570
+ }.compact.join(" ").strip + "\n"
571
+ end
572
+ return list
573
+ end
574
+ end
575
+ else
576
+ row_count = (items.size / option.to_f).ceil
577
+ columns = Array.new(option) { Array.new }
578
+ items.each_with_index do |item, index|
579
+ columns[index / row_count] << item
580
+ end
581
+
582
+ widths = Array.new(option, 0)
583
+ columns.each_with_index do |column, i|
584
+ column.each do |field|
585
+ size = actual_length(field)
586
+ widths[i] = size if size > widths[i]
587
+ end
588
+ end
589
+
590
+ list = ""
591
+ columns.first.size.times do |index|
592
+ list << columns.zip(widths).map { |column, width|
593
+ field = column[index]
594
+ "%-#{width + (field.to_s.length - actual_length(field))}s" % field
595
+ }.compact.join(" ").strip + "\n"
596
+ end
597
+ return list
598
+ end
599
+ else
600
+ items.map { |i| "#{i}\n" }.join
601
+ end
602
+ end
603
+ end
604
+
605
+ #
606
+ # The basic output method for HighLine objects. If the provided _statement_
607
+ # ends with a space or tab character, a newline will not be appended (output
608
+ # will be flush()ed). All other cases are passed straight to Kernel.puts().
609
+ #
610
+ # The _statement_ parameter is processed as an ERb template, supporting
611
+ # embedded Ruby code. The template is evaluated with a binding inside
612
+ # the HighLine instance, providing easy access to the ANSI color constants
613
+ # and the HighLine.color() method.
614
+ #
615
+ def say( statement )
616
+ statement = statement.to_str
617
+ return unless statement.length > 0
618
+
619
+ # Allow non-ascii menu prompts in ruby > 1.9.2. ERB eval the menu statement
620
+ # with the environment's default encoding(usually utf8)
621
+ statement.force_encoding(Encoding.default_external) if defined?(Encoding) && Encoding.default_external
622
+
623
+ template = ERB.new(statement, nil, "%")
624
+ statement = template.result(binding)
625
+
626
+ statement = wrap(statement) unless @wrap_at.nil?
627
+ statement = page_print(statement) unless @page_at.nil?
628
+
629
+ statement = statement.gsub(/\n(?!$)/,"\n#{indentation}") if @multi_indent
630
+
631
+ # Don't add a newline if statement ends with whitespace, OR
632
+ # if statement ends with whitespace before a color escape code.
633
+ if /[ \t](\e\[\d+(;\d+)*m)?\Z/ =~ statement
634
+ @output.print(indentation+statement)
635
+ @output.flush
636
+ else
637
+ @output.puts(indentation+statement)
638
+ end
639
+ end
640
+
641
+ #
642
+ # Set to an integer value to cause HighLine to wrap output lines at the
643
+ # indicated character limit. When +nil+, the default, no wrapping occurs. If
644
+ # set to <tt>:auto</tt>, HighLine will attempt to determine the columns
645
+ # available for the <tt>@output</tt> or use a sensible default.
646
+ #
647
+ def wrap_at=( setting )
648
+ @wrap_at = setting == :auto ? output_cols : setting
649
+ end
650
+
651
+ #
652
+ # Set to an integer value to cause HighLine to page output lines over the
653
+ # indicated line limit. When +nil+, the default, no paging occurs. If
654
+ # set to <tt>:auto</tt>, HighLine will attempt to determine the rows available
655
+ # for the <tt>@output</tt> or use a sensible default.
656
+ #
657
+ def page_at=( setting )
658
+ @page_at = setting == :auto ? output_rows - 2 : setting
659
+ end
660
+
661
+ #
662
+ # Outputs indentation with current settings
663
+ #
664
+ def indentation
665
+ return ' '*@indent_size*@indent_level
666
+ end
667
+
668
+ #
669
+ # Executes block or outputs statement with indentation
670
+ #
671
+ def indent(increase=1, statement=nil, multiline=nil)
672
+ @indent_level += increase
673
+ multi = @multi_indent
674
+ @multi_indent = multiline unless multiline.nil?
675
+ if block_given?
676
+ yield self
677
+ else
678
+ say(statement)
679
+ end
680
+ @multi_indent = multi
681
+ @indent_level -= increase
682
+ end
683
+
684
+ #
685
+ # Outputs newline
686
+ #
687
+ def newline
688
+ @output.puts
689
+ end
690
+
691
+ #
692
+ # Returns the number of columns for the console, or a default it they cannot
693
+ # be determined.
694
+ #
695
+ def output_cols
696
+ return 80 unless @output.tty?
697
+ terminal_size.first
698
+ rescue
699
+ return 80
700
+ end
701
+
702
+ #
703
+ # Returns the number of rows for the console, or a default if they cannot be
704
+ # determined.
705
+ #
706
+ def output_rows
707
+ return 24 unless @output.tty?
708
+ terminal_size.last
709
+ rescue
710
+ return 24
711
+ end
712
+
713
+ private
714
+
715
+ #
716
+ # A helper method for sending the output stream and error and repeat
717
+ # of the question.
718
+ #
719
+ def explain_error( error )
720
+ say(@question.responses[error]) unless error.nil?
721
+ if @question.responses[:ask_on_error] == :question
722
+ say(@question)
723
+ elsif @question.responses[:ask_on_error]
724
+ say(@question.responses[:ask_on_error])
725
+ end
726
+ end
727
+
728
+ #
729
+ # Collects an Array/Hash full of answers as described in
730
+ # HighLine::Question.gather().
731
+ #
732
+ # Raises EOFError if input is exhausted.
733
+ #
734
+ def gather( )
735
+ original_question = @question
736
+ original_question_string = @question.question
737
+ original_gather = @question.gather
738
+
739
+ verify_match = @question.verify_match
740
+ @question.gather = false
741
+
742
+ begin # when verify_match is set this loop will repeat until unique_answers == 1
743
+ @answers = [ ]
744
+ @gather = original_gather
745
+ original_question.question = original_question_string
746
+
747
+ case @gather
748
+ when Integer
749
+ @answers << ask(@question)
750
+ @gather -= 1
751
+
752
+ original_question.question = ""
753
+ until @gather.zero?
754
+ @question = original_question
755
+ @answers << ask(@question)
756
+ @gather -= 1
757
+ end
758
+ when ::String, Regexp
759
+ @answers << ask(@question)
760
+
761
+ original_question.question = ""
762
+ until (@gather.is_a?(::String) and @answers.last.to_s == @gather) or
763
+ (@gather.is_a?(Regexp) and @answers.last.to_s =~ @gather)
764
+ @question = original_question
765
+ @answers << ask(@question)
766
+ end
767
+
768
+ @answers.pop
769
+ when Hash
770
+ @answers = { }
771
+ @gather.keys.sort.each do |key|
772
+ @question = original_question
773
+ @key = key
774
+ @answers[key] = ask(@question)
775
+ end
776
+ end
777
+
778
+ if verify_match && (unique_answers(@answers).size > 1)
779
+ @question = original_question
780
+ explain_error(:mismatch)
781
+ else
782
+ verify_match = false
783
+ end
784
+
785
+ end while verify_match
786
+
787
+ original_question.verify_match ? @answer : @answers
788
+ end
789
+
790
+ #
791
+ # A helper method used by HighLine::Question.verify_match
792
+ # for finding whether a list of answers match or differ
793
+ # from each other.
794
+ #
795
+ def unique_answers(list = @answers)
796
+ (list.respond_to?(:values) ? list.values : list).uniq
797
+ end
798
+
799
+ #
800
+ # Read a line of input from the input stream and process whitespace as
801
+ # requested by the Question object.
802
+ #
803
+ # If Question's _readline_ property is set, that library will be used to
804
+ # fetch input. *WARNING*: This ignores the currently set input stream.
805
+ #
806
+ # Raises EOFError if input is exhausted.
807
+ #
808
+ def get_line( )
809
+ if @question.readline
810
+ require "readline" # load only if needed
811
+
812
+ # capture say()'s work in a String to feed to readline()
813
+ old_output = @output
814
+ @output = StringIO.new
815
+ say(@question)
816
+ question = @output.string
817
+ @output = old_output
818
+
819
+ # prep auto-completion
820
+ Readline.completion_proc = lambda do |string|
821
+ @question.selection.grep(/\A#{Regexp.escape(string)}/)
822
+ end
823
+
824
+ # work-around ugly readline() warnings
825
+ old_verbose = $VERBOSE
826
+ $VERBOSE = nil
827
+ raw_answer = Readline.readline(question, true)
828
+ if raw_answer.nil?
829
+ if @@track_eof
830
+ raise EOFError, "The input stream is exhausted."
831
+ else
832
+ raw_answer = String.new # Never return nil
833
+ end
834
+ end
835
+ answer = @question.change_case(
836
+ @question.remove_whitespace(raw_answer))
837
+ $VERBOSE = old_verbose
838
+
839
+ answer
840
+ else
841
+ if JRUBY
842
+ raw_answer = @java_console.readLine(@question.question, nil)
843
+ else
844
+ raise EOFError, "The input stream is exhausted." if @@track_eof and
845
+ @input.eof?
846
+ raw_answer = @input.gets
847
+ end
848
+
849
+ @question.change_case(@question.remove_whitespace(raw_answer))
850
+ end
851
+ end
852
+
853
+ #
854
+ # Return a line or character of input, as requested for this question.
855
+ # Character input will be returned as a single character String,
856
+ # not an Integer.
857
+ #
858
+ # This question's _first_answer_ will be returned instead of input, if set.
859
+ #
860
+ # Raises EOFError if input is exhausted.
861
+ #
862
+ def get_response( )
863
+ return @question.first_answer if @question.first_answer?
864
+
865
+ if @question.character.nil?
866
+ if @question.echo == true and @question.limit.nil?
867
+ get_line
868
+ else
869
+ raw_no_echo_mode
870
+
871
+ line = ""
872
+ backspace_limit = 0
873
+ begin
874
+
875
+ while character = get_character(@input)
876
+ # honor backspace and delete
877
+ if character == 127 or character == 8
878
+ line.slice!(-1, 1)
879
+ backspace_limit -= 1
880
+ else
881
+ line << character.chr
882
+ backspace_limit = line.size
883
+ end
884
+ # looking for carriage return (decimal 13) or
885
+ # newline (decimal 10) in raw input
886
+ break if character == 13 or character == 10
887
+ if @question.echo != false
888
+ if character == 127 or character == 8
889
+ # only backspace if we have characters on the line to
890
+ # eliminate, otherwise we'll tromp over the prompt
891
+ if backspace_limit >= 0 then
892
+ @output.print("\b#{HighLine.Style(:erase_char).code}")
893
+ else
894
+ # do nothing
895
+ end
896
+ else
897
+ if @question.echo == true
898
+ @output.print(character.chr)
899
+ else
900
+ @output.print(@question.echo)
901
+ end
902
+ end
903
+ @output.flush
904
+ end
905
+ break if @question.limit and line.size == @question.limit
906
+ end
907
+ ensure
908
+ restore_mode
909
+ end
910
+ if @question.overwrite
911
+ @output.print("\r#{HighLine.Style(:erase_line).code}")
912
+ @output.flush
913
+ else
914
+ say("\n")
915
+ end
916
+
917
+ @question.change_case(@question.remove_whitespace(line))
918
+ end
919
+ else
920
+ raw_no_echo_mode
921
+ begin
922
+ if @question.character == :getc
923
+ response = @input.getbyte.chr
924
+ else
925
+ response = get_character(@input).chr
926
+ if @question.overwrite
927
+ @output.print("\r#{HighLine.Style(:erase_line).code}")
928
+ @output.flush
929
+ else
930
+ echo = if @question.echo == true
931
+ response
932
+ elsif @question.echo != false
933
+ @question.echo
934
+ else
935
+ ""
936
+ end
937
+ say("#{echo}\n")
938
+ end
939
+ end
940
+ ensure
941
+ restore_mode
942
+ end
943
+ @question.change_case(response)
944
+ end
945
+ end
946
+
947
+ #
948
+ # Page print a series of at most _page_at_ lines for _output_. After each
949
+ # page is printed, HighLine will pause until the user presses enter/return
950
+ # then display the next page of data.
951
+ #
952
+ # Note that the final page of _output_ is *not* printed, but returned
953
+ # instead. This is to support any special handling for the final sequence.
954
+ #
955
+ def page_print( output )
956
+ lines = output.scan(/[^\n]*\n?/)
957
+ while lines.size > @page_at
958
+ @output.puts lines.slice!(0...@page_at).join
959
+ @output.puts
960
+ # Return last line if user wants to abort paging
961
+ return (["...\n"] + lines.slice(-2,1)).join unless continue_paging?
962
+ end
963
+ return lines.join
964
+ end
965
+
966
+ #
967
+ # Ask user if they wish to continue paging output. Allows them to type "q" to
968
+ # cancel the paging process.
969
+ #
970
+ def continue_paging?
971
+ command = HighLine.new(@input, @output).ask(
972
+ "-- press enter/return to continue or q to stop -- "
973
+ ) { |q| q.character = true }
974
+ command !~ /\A[qQ]\Z/ # Only continue paging if Q was not hit.
975
+ end
976
+
977
+ #
978
+ # Wrap a sequence of _lines_ at _wrap_at_ characters per line. Existing
979
+ # newlines will not be affected by this process, but additional newlines
980
+ # may be added.
981
+ #
982
+ def wrap( text )
983
+ wrapped = [ ]
984
+ text.each_line do |line|
985
+ # take into account color escape sequences when wrapping
986
+ wrap_at = @wrap_at + (line.length - actual_length(line))
987
+ while line =~ /([^\n]{#{wrap_at + 1},})/
988
+ search = $1.dup
989
+ replace = $1.dup
990
+ if index = replace.rindex(" ", wrap_at)
991
+ replace[index, 1] = "\n"
992
+ replace.sub!(/\n[ \t]+/, "\n")
993
+ line.sub!(search, replace)
994
+ else
995
+ line[$~.begin(1) + wrap_at, 0] = "\n"
996
+ end
997
+ end
998
+ wrapped << line
999
+ end
1000
+ return wrapped.join
1001
+ end
1002
+
1003
+ #
1004
+ # Returns the length of the passed +string_with_escapes+, minus and color
1005
+ # sequence escapes.
1006
+ #
1007
+ def actual_length( string_with_escapes )
1008
+ string_with_escapes.to_s.gsub(/\e\[\d{1,2}m/, "").length
1009
+ end
1010
+ end
1011
+
1012
+ require "highline/string_extensions"