brakeman 3.7.2 → 5.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1614) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGES.md +1385 -0
  3. data/FEATURES +1 -1
  4. data/README.md +62 -17
  5. data/bin/brakeman +2 -0
  6. data/bundle/load.rb +15 -14
  7. data/bundle/ruby/3.1.0/gems/haml-5.2.2/CHANGELOG.md +1505 -0
  8. data/bundle/ruby/3.1.0/gems/haml-5.2.2/FAQ.md +147 -0
  9. data/bundle/ruby/3.1.0/gems/haml-5.2.2/Gemfile +16 -0
  10. data/bundle/ruby/3.1.0/gems/haml-5.2.2/MIT-LICENSE +20 -0
  11. data/bundle/ruby/3.1.0/gems/haml-5.2.2/README.md +216 -0
  12. data/bundle/ruby/3.1.0/gems/haml-5.2.2/REFERENCE.md +1380 -0
  13. data/bundle/ruby/3.1.0/gems/haml-5.2.2/TODO +24 -0
  14. data/bundle/ruby/3.1.0/gems/haml-5.2.2/haml.gemspec +45 -0
  15. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_builder.rb +219 -0
  16. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_compiler.rb +237 -0
  17. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_parser.rb +150 -0
  18. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/buffer.rb +182 -0
  19. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/compiler.rb +330 -0
  20. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/engine.rb +238 -0
  21. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/error.rb +65 -0
  22. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/escapable.rb +77 -0
  23. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/exec.rb +347 -0
  24. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/filters.rb +399 -0
  25. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/generator.rb +42 -0
  26. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_extensions.rb +60 -0
  27. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_mods.rb +132 -0
  28. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_xss_mods.rb +60 -0
  29. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/safe_erubi_template.rb +20 -0
  30. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/safe_erubis_template.rb +33 -0
  31. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/xss_mods.rb +114 -0
  32. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers.rb +709 -0
  33. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/options.rb +273 -0
  34. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/parser.rb +856 -0
  35. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/plugin.rb +54 -0
  36. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/railtie.rb +53 -0
  37. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/sass_rails_filter.rb +47 -0
  38. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/template/options.rb +27 -0
  39. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/template.rb +39 -0
  40. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/temple_engine.rb +124 -0
  41. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/temple_line_counter.rb +30 -0
  42. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/util.rb +258 -0
  43. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/version.rb +5 -0
  44. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml.rb +25 -0
  45. data/bundle/ruby/3.1.0/gems/haml-5.2.2/yard/default/fulldoc/html/css/common.sass +15 -0
  46. data/bundle/ruby/3.1.0/gems/haml-5.2.2/yard/default/layout/html/footer.erb +12 -0
  47. data/bundle/ruby/3.1.0/gems/highline-2.1.0/Changelog.md +626 -0
  48. data/bundle/ruby/3.1.0/gems/highline-2.1.0/Gemfile +19 -0
  49. data/bundle/ruby/3.1.0/gems/highline-2.1.0/README.md +201 -0
  50. data/bundle/ruby/3.1.0/gems/highline-2.1.0/highline.gemspec +35 -0
  51. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/builtin_styles.rb +129 -0
  52. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/color_scheme.rb +151 -0
  53. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/compatibility.rb +23 -0
  54. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/custom_errors.rb +57 -0
  55. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/import.rb +48 -0
  56. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/io_console_compatible.rb +37 -0
  57. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/list.rb +177 -0
  58. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/list_renderer.rb +261 -0
  59. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/menu/item.rb +32 -0
  60. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/menu.rb +576 -0
  61. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/paginator.rb +52 -0
  62. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/question/answer_converter.rb +103 -0
  63. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/question.rb +630 -0
  64. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/question_asker.rb +150 -0
  65. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/simulate.rb +59 -0
  66. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/statement.rb +88 -0
  67. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/string.rb +36 -0
  68. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/string_extensions.rb +130 -0
  69. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/style.rb +325 -0
  70. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/template_renderer.rb +62 -0
  71. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/terminal/io_console.rb +36 -0
  72. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/terminal/ncurses.rb +38 -0
  73. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/terminal/unix_stty.rb +51 -0
  74. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/terminal.rb +190 -0
  75. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/version.rb +6 -0
  76. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline/wrapper.rb +53 -0
  77. data/bundle/ruby/3.1.0/gems/highline-2.1.0/lib/highline.rb +650 -0
  78. data/bundle/ruby/3.1.0/gems/parallel-1.22.1/MIT-LICENSE.txt +20 -0
  79. data/bundle/ruby/3.1.0/gems/parallel-1.22.1/lib/parallel/processor_count.rb +44 -0
  80. data/bundle/ruby/3.1.0/gems/parallel-1.22.1/lib/parallel/version.rb +4 -0
  81. data/bundle/ruby/3.1.0/gems/parallel-1.22.1/lib/parallel.rb +612 -0
  82. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/LICENSE.txt +22 -0
  83. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/NEWS.md +178 -0
  84. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/README.md +48 -0
  85. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/attlistdecl.rb +63 -0
  86. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/attribute.rb +205 -0
  87. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/cdata.rb +68 -0
  88. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/child.rb +97 -0
  89. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/comment.rb +80 -0
  90. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/doctype.rb +311 -0
  91. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/document.rb +451 -0
  92. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/dtd/attlistdecl.rb +11 -0
  93. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/dtd/dtd.rb +47 -0
  94. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/dtd/elementdecl.rb +18 -0
  95. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/dtd/entitydecl.rb +57 -0
  96. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/dtd/notationdecl.rb +40 -0
  97. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/element.rb +2599 -0
  98. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/encoding.rb +51 -0
  99. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/entity.rb +171 -0
  100. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/formatters/default.rb +116 -0
  101. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/formatters/pretty.rb +142 -0
  102. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/formatters/transitive.rb +58 -0
  103. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/functions.rb +447 -0
  104. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/instruction.rb +79 -0
  105. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/light/node.rb +188 -0
  106. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/namespace.rb +59 -0
  107. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/node.rb +76 -0
  108. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/output.rb +30 -0
  109. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parent.rb +166 -0
  110. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parseexception.rb +52 -0
  111. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/baseparser.rb +694 -0
  112. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/lightparser.rb +59 -0
  113. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/pullparser.rb +197 -0
  114. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/sax2parser.rb +273 -0
  115. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/streamparser.rb +61 -0
  116. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/treeparser.rb +101 -0
  117. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/ultralightparser.rb +57 -0
  118. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/parsers/xpathparser.rb +689 -0
  119. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/quickpath.rb +266 -0
  120. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/rexml.rb +37 -0
  121. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/sax2listener.rb +98 -0
  122. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/security.rb +28 -0
  123. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/source.rb +298 -0
  124. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/streamlistener.rb +93 -0
  125. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/text.rb +424 -0
  126. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/undefinednamespaceexception.rb +9 -0
  127. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/validation/relaxng.rb +539 -0
  128. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/validation/validation.rb +144 -0
  129. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/validation/validationexception.rb +10 -0
  130. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/xmldecl.rb +130 -0
  131. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/xmltokens.rb +85 -0
  132. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/xpath.rb +81 -0
  133. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml/xpath_parser.rb +974 -0
  134. data/bundle/ruby/3.1.0/gems/rexml-3.2.5/lib/rexml.rb +3 -0
  135. data/bundle/ruby/3.1.0/gems/ruby2ruby-2.4.4/History.rdoc +435 -0
  136. data/bundle/ruby/3.1.0/gems/ruby2ruby-2.4.4/lib/ruby2ruby.rb +1309 -0
  137. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/History.rdoc +1307 -0
  138. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/Manifest.txt +46 -0
  139. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/README.rdoc +112 -0
  140. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/compare/normalize.rb +218 -0
  141. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/debugging.md +190 -0
  142. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/gauntlet.md +107 -0
  143. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/rp_extensions.rb +53 -0
  144. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/rp_stringscanner.rb +33 -0
  145. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby20_parser.rb +10973 -0
  146. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby20_parser.y +2683 -0
  147. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby21_parser.rb +10980 -0
  148. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby21_parser.y +2700 -0
  149. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby22_parser.rb +11123 -0
  150. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby22_parser.y +2711 -0
  151. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby23_parser.rb +11132 -0
  152. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby23_parser.y +2713 -0
  153. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby24_parser.rb +11231 -0
  154. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby24_parser.y +2721 -0
  155. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby25_parser.rb +11231 -0
  156. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby25_parser.y +2721 -0
  157. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby26_parser.rb +11253 -0
  158. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby26_parser.y +2736 -0
  159. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby27_parser.rb +12996 -0
  160. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby27_parser.y +3336 -0
  161. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby30_parser.rb +13258 -0
  162. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby30_parser.y +3459 -0
  163. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby31_parser.rb +13638 -0
  164. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby31_parser.y +3493 -0
  165. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby3_parser.yy +3548 -0
  166. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_lexer.rb +1151 -0
  167. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_lexer.rex +185 -0
  168. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_lexer.rex.rb +399 -0
  169. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_lexer_strings.rb +638 -0
  170. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_parser.rb +98 -0
  171. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_parser.yy +3477 -0
  172. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/lib/ruby_parser_extras.rb +1872 -0
  173. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/tools/munge.rb +250 -0
  174. data/bundle/ruby/3.1.0/gems/ruby_parser-3.19.2/tools/ripper.rb +44 -0
  175. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/History.rdoc +6 -0
  176. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/Manifest.txt +19 -0
  177. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/README.rdoc +54 -0
  178. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.rb +5794 -0
  179. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.y +1909 -0
  180. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.rb +6186 -0
  181. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.y +2117 -0
  182. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rb +1412 -0
  183. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex +179 -0
  184. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex.rb +323 -0
  185. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser.rb +30 -0
  186. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser_extras.rb +1388 -0
  187. data/bundle/ruby/3.1.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy.rb +5 -0
  188. data/bundle/ruby/3.1.0/gems/safe_yaml-1.0.5/CHANGES.md +154 -0
  189. data/bundle/ruby/3.1.0/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/date.rb +37 -0
  190. data/bundle/ruby/3.1.0/gems/safe_yaml-1.0.5/lib/safe_yaml/store.rb +39 -0
  191. data/bundle/ruby/3.1.0/gems/safe_yaml-1.0.5/lib/safe_yaml/version.rb +3 -0
  192. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/History.rdoc +454 -0
  193. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/Manifest.txt +15 -0
  194. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/lib/pt_testcase.rb +3137 -0
  195. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/lib/sexp.rb +391 -0
  196. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/lib/sexp_matcher.rb +1100 -0
  197. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/lib/sexp_processor.rb +754 -0
  198. data/bundle/ruby/3.1.0/gems/sexp_processor-4.16.1/lib/strict_sexp.rb +148 -0
  199. data/bundle/ruby/3.1.0/gems/slim-4.1.0/CHANGES +460 -0
  200. data/bundle/ruby/3.1.0/gems/slim-4.1.0/Gemfile +70 -0
  201. data/bundle/ruby/3.1.0/gems/slim-4.1.0/LICENSE +21 -0
  202. data/bundle/ruby/3.1.0/gems/slim-4.1.0/README.jp.md +1289 -0
  203. data/bundle/ruby/3.1.0/gems/slim-4.1.0/README.md +1290 -0
  204. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/command.rb +128 -0
  205. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/embedded.rb +248 -0
  206. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/engine.rb +39 -0
  207. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/filter.rb +30 -0
  208. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/grammar.rb +23 -0
  209. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/logic_less/context.rb +127 -0
  210. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/parser.rb +548 -0
  211. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/smart/parser.rb +34 -0
  212. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/splat/builder.rb +107 -0
  213. data/bundle/ruby/3.1.0/gems/slim-4.1.0/lib/slim/version.rb +5 -0
  214. data/bundle/ruby/3.1.0/gems/slim-4.1.0/slim.gemspec +24 -0
  215. data/bundle/ruby/3.1.0/gems/temple-0.8.2/CHANGES +260 -0
  216. data/bundle/ruby/3.1.0/gems/temple-0.8.2/EXPRESSIONS.md +262 -0
  217. data/bundle/ruby/3.1.0/gems/temple-0.8.2/README.md +267 -0
  218. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/filters/static_analyzer.rb +30 -0
  219. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/filters/string_splitter.rb +130 -0
  220. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/mixins/dispatcher.rb +161 -0
  221. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/static_analyzer.rb +77 -0
  222. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/templates/rails.rb +26 -0
  223. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple/version.rb +3 -0
  224. data/bundle/ruby/3.1.0/gems/temple-0.8.2/lib/temple.rb +67 -0
  225. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/commonmarker.rb +88 -0
  226. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/csv.rb +65 -0
  227. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/erb.rb +63 -0
  228. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/haml.rb +86 -0
  229. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/pandoc.rb +57 -0
  230. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/redcarpet.rb +86 -0
  231. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/rst-pandoc.rb +23 -0
  232. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/sass.rb +78 -0
  233. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt/template.rb +308 -0
  234. data/bundle/ruby/3.1.0/gems/tilt-2.0.11/lib/tilt.rb +167 -0
  235. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/CHANGELOG.md +137 -0
  236. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/MIT-LICENSE.txt +22 -0
  237. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/README.md +124 -0
  238. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/data/display_width.marshal.gz +0 -0
  239. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/constants.rb +8 -0
  240. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/index.rb +12 -0
  241. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width.rb +51 -0
  242. data/lib/brakeman/app_tree.rb +96 -24
  243. data/lib/brakeman/call_index.rb +63 -21
  244. data/lib/brakeman/checks/base_check.rb +117 -121
  245. data/lib/brakeman/checks/check_basic_auth.rb +8 -4
  246. data/lib/brakeman/checks/check_basic_auth_timing_attack.rb +4 -3
  247. data/lib/brakeman/checks/check_content_tag.rb +37 -22
  248. data/lib/brakeman/checks/check_cookie_serialization.rb +23 -0
  249. data/lib/brakeman/checks/check_create_with.rb +10 -8
  250. data/lib/brakeman/checks/check_cross_site_scripting.rb +31 -23
  251. data/lib/brakeman/checks/check_csrf_token_forgery_cve.rb +29 -0
  252. data/lib/brakeman/checks/check_default_routes.rb +18 -10
  253. data/lib/brakeman/checks/check_deserialize.rb +75 -5
  254. data/lib/brakeman/checks/check_detailed_exceptions.rb +10 -8
  255. data/lib/brakeman/checks/check_digest_dos.rb +8 -7
  256. data/lib/brakeman/checks/check_divide_by_zero.rb +43 -0
  257. data/lib/brakeman/checks/check_dynamic_finders.rb +4 -3
  258. data/lib/brakeman/checks/check_eol_rails.rb +23 -0
  259. data/lib/brakeman/checks/check_eol_ruby.rb +26 -0
  260. data/lib/brakeman/checks/check_escape_function.rb +5 -4
  261. data/lib/brakeman/checks/check_evaluation.rb +3 -3
  262. data/lib/brakeman/checks/check_execute.rb +136 -18
  263. data/lib/brakeman/checks/check_file_access.rb +33 -7
  264. data/lib/brakeman/checks/check_file_disclosure.rb +5 -4
  265. data/lib/brakeman/checks/check_filter_skipping.rb +5 -4
  266. data/lib/brakeman/checks/check_force_ssl.rb +28 -0
  267. data/lib/brakeman/checks/check_forgery_setting.rb +10 -6
  268. data/lib/brakeman/checks/check_header_dos.rb +8 -7
  269. data/lib/brakeman/checks/check_i18n_xss.rb +9 -8
  270. data/lib/brakeman/checks/check_jruby_xml.rb +7 -8
  271. data/lib/brakeman/checks/check_json_encoding.rb +9 -8
  272. data/lib/brakeman/checks/check_json_entity_escape.rb +40 -0
  273. data/lib/brakeman/checks/check_json_parsing.rb +25 -21
  274. data/lib/brakeman/checks/check_link_to.rb +11 -10
  275. data/lib/brakeman/checks/check_link_to_href.rb +49 -37
  276. data/lib/brakeman/checks/check_mail_to.rb +8 -7
  277. data/lib/brakeman/checks/check_mass_assignment.rb +49 -18
  278. data/lib/brakeman/checks/check_mime_type_dos.rb +6 -5
  279. data/lib/brakeman/checks/check_model_attr_accessible.rb +9 -8
  280. data/lib/brakeman/checks/check_model_attributes.rb +20 -56
  281. data/lib/brakeman/checks/check_model_serialize.rb +7 -6
  282. data/lib/brakeman/checks/check_nested_attributes.rb +7 -6
  283. data/lib/brakeman/checks/check_nested_attributes_bypass.rb +8 -7
  284. data/lib/brakeman/checks/check_number_to_currency.rb +13 -11
  285. data/lib/brakeman/checks/check_page_caching_cve.rb +38 -0
  286. data/lib/brakeman/checks/check_pathname.rb +48 -0
  287. data/lib/brakeman/checks/check_permit_attributes.rb +44 -0
  288. data/lib/brakeman/checks/check_quote_table_name.rb +6 -5
  289. data/lib/brakeman/checks/check_redirect.rb +91 -34
  290. data/lib/brakeman/checks/check_regex_dos.rb +7 -6
  291. data/lib/brakeman/checks/check_render.rb +24 -8
  292. data/lib/brakeman/checks/check_render_dos.rb +4 -3
  293. data/lib/brakeman/checks/check_render_inline.rb +8 -6
  294. data/lib/brakeman/checks/check_response_splitting.rb +4 -3
  295. data/lib/brakeman/checks/check_reverse_tabnabbing.rb +59 -0
  296. data/lib/brakeman/checks/check_route_dos.rb +4 -3
  297. data/lib/brakeman/checks/check_safe_buffer_manipulation.rb +5 -4
  298. data/lib/brakeman/checks/check_sanitize_config_cve.rb +120 -0
  299. data/lib/brakeman/checks/check_sanitize_methods.rb +57 -20
  300. data/lib/brakeman/checks/check_secrets.rb +5 -4
  301. data/lib/brakeman/checks/check_select_tag.rb +5 -4
  302. data/lib/brakeman/checks/check_select_vulnerability.rb +6 -5
  303. data/lib/brakeman/checks/check_send.rb +2 -2
  304. data/lib/brakeman/checks/check_session_manipulation.rb +5 -5
  305. data/lib/brakeman/checks/check_session_settings.rb +25 -19
  306. data/lib/brakeman/checks/check_simple_format.rb +15 -8
  307. data/lib/brakeman/checks/check_single_quotes.rb +19 -14
  308. data/lib/brakeman/checks/check_skip_before_filter.rb +12 -10
  309. data/lib/brakeman/checks/check_sprockets_path_traversal.rb +40 -0
  310. data/lib/brakeman/checks/check_sql.rb +125 -67
  311. data/lib/brakeman/checks/check_sql_cves.rb +8 -6
  312. data/lib/brakeman/checks/check_ssl_verify.rb +2 -1
  313. data/lib/brakeman/checks/check_strip_tags.rb +23 -18
  314. data/lib/brakeman/checks/check_symbol_dos.rb +14 -5
  315. data/lib/brakeman/checks/check_symbol_dos_cve.rb +4 -3
  316. data/lib/brakeman/checks/check_template_injection.rb +33 -0
  317. data/lib/brakeman/checks/check_translate_bug.rb +13 -12
  318. data/lib/brakeman/checks/check_unsafe_reflection.rb +11 -5
  319. data/lib/brakeman/checks/check_unsafe_reflection_methods.rb +69 -0
  320. data/lib/brakeman/checks/check_unscoped_find.rb +29 -4
  321. data/lib/brakeman/checks/check_validation_regex.rb +4 -3
  322. data/lib/brakeman/checks/check_verb_confusion.rb +76 -0
  323. data/lib/brakeman/checks/check_weak_hash.rb +28 -26
  324. data/lib/brakeman/checks/check_weak_rsa_key.rb +112 -0
  325. data/lib/brakeman/checks/check_without_protection.rb +4 -3
  326. data/lib/brakeman/checks/check_xml_dos.rb +6 -5
  327. data/lib/brakeman/checks/check_yaml_parsing.rb +17 -23
  328. data/lib/brakeman/checks/eol_check.rb +49 -0
  329. data/lib/brakeman/checks.rb +23 -15
  330. data/lib/brakeman/codeclimate/engine_configuration.rb +97 -0
  331. data/lib/brakeman/commandline.rb +27 -3
  332. data/lib/brakeman/differ.rb +16 -33
  333. data/lib/brakeman/file_parser.rb +61 -23
  334. data/lib/brakeman/file_path.rb +85 -0
  335. data/lib/brakeman/format/style.css +8 -0
  336. data/lib/brakeman/messages.rb +220 -0
  337. data/lib/brakeman/options.rb +76 -7
  338. data/lib/brakeman/parsers/haml_embedded.rb +44 -0
  339. data/lib/brakeman/parsers/slim_embedded.rb +44 -0
  340. data/lib/brakeman/parsers/template_parser.rb +42 -11
  341. data/lib/brakeman/processor.rb +5 -6
  342. data/lib/brakeman/processors/alias_processor.rb +425 -147
  343. data/lib/brakeman/processors/base_processor.rb +15 -16
  344. data/lib/brakeman/processors/config_processor.rb +4 -1
  345. data/lib/brakeman/processors/controller_alias_processor.rb +22 -51
  346. data/lib/brakeman/processors/controller_processor.rb +10 -14
  347. data/lib/brakeman/processors/erb_template_processor.rb +1 -1
  348. data/lib/brakeman/processors/gem_processor.rb +42 -3
  349. data/lib/brakeman/processors/haml_template_processor.rb +108 -123
  350. data/lib/brakeman/processors/lib/call_conversion_helper.rb +102 -0
  351. data/lib/brakeman/processors/lib/file_type_detector.rb +64 -0
  352. data/lib/brakeman/processors/lib/find_all_calls.rb +70 -17
  353. data/lib/brakeman/processors/lib/find_call.rb +3 -64
  354. data/lib/brakeman/processors/lib/module_helper.rb +8 -8
  355. data/lib/brakeman/processors/lib/processor_helper.rb +3 -3
  356. data/lib/brakeman/processors/lib/rails2_config_processor.rb +4 -4
  357. data/lib/brakeman/processors/lib/rails2_route_processor.rb +10 -10
  358. data/lib/brakeman/processors/lib/rails3_config_processor.rb +19 -19
  359. data/lib/brakeman/processors/lib/rails3_route_processor.rb +4 -4
  360. data/lib/brakeman/processors/lib/rails4_config_processor.rb +19 -0
  361. data/lib/brakeman/processors/lib/render_helper.rb +13 -6
  362. data/lib/brakeman/processors/lib/render_path.rb +32 -0
  363. data/lib/brakeman/processors/library_processor.rb +24 -7
  364. data/lib/brakeman/processors/model_processor.rb +36 -5
  365. data/lib/brakeman/processors/output_processor.rb +6 -1
  366. data/lib/brakeman/processors/slim_template_processor.rb +16 -0
  367. data/lib/brakeman/processors/template_alias_processor.rb +36 -4
  368. data/lib/brakeman/processors/template_processor.rb +14 -10
  369. data/lib/brakeman/report/ignore/config.rb +12 -5
  370. data/lib/brakeman/report/ignore/interactive.rb +5 -5
  371. data/lib/brakeman/report/pager.rb +113 -0
  372. data/lib/brakeman/report/report_base.rb +65 -165
  373. data/lib/brakeman/report/report_codeclimate.rb +10 -1
  374. data/lib/brakeman/report/report_csv.rb +40 -44
  375. data/lib/brakeman/report/report_github.rb +31 -0
  376. data/lib/brakeman/report/report_hash.rb +1 -1
  377. data/lib/brakeman/report/report_html.rb +36 -33
  378. data/lib/brakeman/report/report_json.rb +1 -3
  379. data/lib/brakeman/report/report_junit.rb +104 -0
  380. data/lib/brakeman/report/report_markdown.rb +13 -7
  381. data/lib/brakeman/report/report_sarif.rb +133 -0
  382. data/lib/brakeman/report/report_sonar.rb +38 -0
  383. data/lib/brakeman/report/report_table.rb +173 -0
  384. data/lib/brakeman/report/report_tabs.rb +4 -2
  385. data/lib/brakeman/report/report_text.rb +64 -28
  386. data/lib/brakeman/report/templates/controller_warnings.html.erb +2 -0
  387. data/lib/brakeman/report/templates/ignored_warnings.html.erb +2 -0
  388. data/lib/brakeman/report/templates/model_warnings.html.erb +2 -0
  389. data/lib/brakeman/report/templates/security_warnings.html.erb +2 -0
  390. data/lib/brakeman/report/templates/view_warnings.html.erb +2 -0
  391. data/lib/brakeman/report.rb +33 -9
  392. data/lib/brakeman/rescanner.rb +29 -24
  393. data/lib/brakeman/scanner.rb +90 -46
  394. data/lib/brakeman/tracker/collection.rb +62 -11
  395. data/lib/brakeman/tracker/config.rb +191 -25
  396. data/lib/brakeman/tracker/constants.rb +10 -8
  397. data/lib/brakeman/tracker/controller.rb +1 -1
  398. data/lib/brakeman/tracker/method_info.rb +70 -0
  399. data/lib/brakeman/tracker.rb +81 -16
  400. data/lib/brakeman/util.rb +114 -183
  401. data/lib/brakeman/version.rb +1 -1
  402. data/lib/brakeman/warning.rb +101 -43
  403. data/lib/brakeman/warning_codes.rb +27 -0
  404. data/lib/brakeman.rb +97 -28
  405. data/lib/ruby_parser/bm_sexp.rb +59 -10
  406. data/lib/ruby_parser/bm_sexp_processor.rb +1 -0
  407. metadata +463 -1220
  408. data/CHANGES +0 -985
  409. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/Makefile +0 -6
  410. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/bench.rb +0 -313
  411. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/bench_context.yaml +0 -141
  412. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/templates/_footer.html +0 -4
  413. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/templates/_header.html +0 -52
  414. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/templates/bench_erb.rhtml +0 -29
  415. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/templates/bench_erubis.rhtml +0 -29
  416. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/benchmark/templates/bench_eruby.rhtml +0 -29
  417. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/bin/erubis +0 -10
  418. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc/docstyle.css +0 -209
  419. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc/users-guide.html +0 -3551
  420. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/ActionView/TemplateHandlers/ErubisHandler.html +0 -209
  421. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/ActionView.html +0 -105
  422. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/ERB.html +0 -101
  423. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayBufferEnhancer.html +0 -175
  424. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayBufferEruby.html +0 -120
  425. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayEnhancer.html +0 -174
  426. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayEruby.html +0 -120
  427. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Basic/Converter.html +0 -327
  428. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Basic/Engine.html +0 -130
  429. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Basic.html +0 -112
  430. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/BiPatternEnhancer.html +0 -215
  431. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/BiPatternEruby.html +0 -120
  432. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/CGenerator.html +0 -386
  433. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/CommandOptionError.html +0 -113
  434. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Context.html +0 -344
  435. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Converter.html +0 -283
  436. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/CppGenerator.html +0 -382
  437. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/DeleteIndentEnhancer.html +0 -150
  438. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/DeleteIndentEruby.html +0 -120
  439. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Ec.html +0 -126
  440. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Ecpp.html +0 -126
  441. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Ejava.html +0 -126
  442. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Ejavascript.html +0 -126
  443. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Engine.html +0 -305
  444. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Eperl.html +0 -126
  445. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Ephp.html +0 -126
  446. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ErboutEnhancer.html +0 -175
  447. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ErboutEruby.html +0 -120
  448. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ErubisError.html +0 -117
  449. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Eruby.html +0 -132
  450. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapeEnhancer.html +0 -165
  451. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEc.html +0 -120
  452. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEcpp.html +0 -120
  453. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEjava.html +0 -120
  454. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEjavascript.html +0 -120
  455. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEperl.html +0 -120
  456. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEphp.html +0 -120
  457. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEruby.html +0 -127
  458. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/EscapedEscheme.html +0 -120
  459. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Escheme.html +0 -126
  460. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Evaluator.html +0 -212
  461. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/FastEruby.html +0 -131
  462. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Generator.html +0 -416
  463. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/HeaderFooterEnhancer.html +0 -267
  464. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/HeaderFooterEruby.html +0 -120
  465. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Helpers/RailsFormHelper.html +0 -787
  466. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Helpers/RailsHelper/TemplateConverter.html +0 -213
  467. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Helpers/RailsHelper.html +0 -349
  468. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Helpers.html +0 -116
  469. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/InterpolationEnhancer.html +0 -305
  470. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/InterpolationEruby.html +0 -120
  471. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/JavaGenerator.html +0 -359
  472. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/JavascriptGenerator.html +0 -386
  473. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Main.html +0 -341
  474. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/NoCodeEnhancer.html +0 -249
  475. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/NoCodeEruby.html +0 -120
  476. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/NoTextEnhancer.html +0 -159
  477. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/NoTextEruby.html +0 -120
  478. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/NotSupportedError.html +0 -119
  479. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/OptimizedEruby.html +0 -163
  480. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/OptimizedGenerator.html +0 -439
  481. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/OptimizedXmlEruby.html +0 -163
  482. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Converter.html +0 -266
  483. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Ec.html +0 -166
  484. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Ecpp.html +0 -166
  485. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Ejava.html +0 -166
  486. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Ejavascript.html +0 -166
  487. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Engine.html +0 -122
  488. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Eperl.html +0 -166
  489. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Ephp.html +0 -166
  490. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Eruby.html +0 -155
  491. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/Escheme.html +0 -166
  492. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI/TinyEruby.html +0 -293
  493. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PI.html +0 -125
  494. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PercentLineEnhancer.html +0 -163
  495. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PercentLineEruby.html +0 -120
  496. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PerlGenerator.html +0 -344
  497. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PhpGenerator.html +0 -350
  498. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrefixedLineEnhancer.html +0 -210
  499. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrefixedLineEruby.html +0 -120
  500. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PreprocessingEruby.html +0 -183
  501. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PreprocessingHelper.html +0 -212
  502. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrintEnabledEnhancer.html +0 -212
  503. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrintEnabledEruby.html +0 -120
  504. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrintOutEnhancer.html +0 -244
  505. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrintOutEruby.html +0 -120
  506. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/PrintOutSimplifiedEruby.html +0 -121
  507. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/RubyEvaluator.html +0 -227
  508. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/RubyGenerator.html +0 -328
  509. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/SchemeGenerator.html +0 -382
  510. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/SimplifiedEruby.html +0 -120
  511. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/SimplifyEnhancer.html +0 -191
  512. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StdoutEnhancer.html +0 -173
  513. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StdoutEruby.html +0 -120
  514. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StdoutSimplifiedEruby.html +0 -121
  515. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StringBufferEnhancer.html +0 -174
  516. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StringBufferEruby.html +0 -120
  517. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/StringIOEruby.html +0 -120
  518. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/TinyEruby.html +0 -298
  519. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/XmlEruby.html +0 -130
  520. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis/XmlHelper.html +0 -255
  521. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Erubis.html +0 -362
  522. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/classes/Kernel.html +0 -155
  523. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/created.rid +0 -1
  524. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/README_txt.html +0 -247
  525. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/context_rb.html +0 -107
  526. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/converter_rb.html +0 -114
  527. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/ec_rb.html +0 -115
  528. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/ecpp_rb.html +0 -115
  529. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/ejava_rb.html +0 -115
  530. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/ejavascript_rb.html +0 -115
  531. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/enhanced_rb.html +0 -115
  532. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/eperl_rb.html +0 -115
  533. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/ephp_rb.html +0 -115
  534. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/eruby_rb.html +0 -115
  535. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/escheme_rb.html +0 -115
  536. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine/optimized_rb.html +0 -114
  537. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/engine_rb.html +0 -117
  538. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/enhancer_rb.html +0 -107
  539. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/error_rb.html +0 -107
  540. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/evaluator_rb.html +0 -115
  541. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/generator_rb.html +0 -114
  542. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/helper_rb.html +0 -107
  543. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/helpers/rails_form_helper_rb.html +0 -107
  544. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/helpers/rails_helper_rb.html +0 -116
  545. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/local-setting_rb.html +0 -107
  546. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/main_rb.html +0 -129
  547. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/preprocessing_rb.html +0 -114
  548. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/tiny_rb.html +0 -107
  549. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis/util_rb.html +0 -107
  550. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/files/erubis_rb.html +0 -118
  551. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/fr_class_index.html +0 -129
  552. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/fr_file_index.html +0 -53
  553. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/fr_method_index.html +0 -265
  554. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/index.html +0 -24
  555. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/doc-api/rdoc-style.css +0 -208
  556. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/Makefile +0 -58
  557. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.ec +0 -42
  558. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.ecpp +0 -33
  559. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.ejava +0 -45
  560. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.ejs +0 -16
  561. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.eperl +0 -16
  562. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.ephp +0 -17
  563. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.eruby +0 -15
  564. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/basic/example.escheme +0 -26
  565. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/Makefile +0 -54
  566. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.ec +0 -42
  567. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.ejava +0 -45
  568. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.ejs +0 -16
  569. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.eperl +0 -16
  570. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.ephp +0 -17
  571. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.eruby +0 -15
  572. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/examples/pi/example.escheme +0 -26
  573. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/assert-text-equal.rb +0 -44
  574. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/Example.ejava +0 -55
  575. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/array_example.result +0 -9
  576. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/arraybuffer_example.result +0 -9
  577. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/bipattern-example.rhtml +0 -4
  578. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/bipattern_example.result +0 -6
  579. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/bufvar-example.rb +0 -10
  580. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/bufvar-example.result +0 -17
  581. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/context.rb +0 -6
  582. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/context.yaml +0 -8
  583. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/def_method.rb +0 -14
  584. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/def_method.result +0 -3
  585. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/escape_example.result +0 -9
  586. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.ec +0 -27
  587. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.ecpp +0 -30
  588. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.ejs +0 -20
  589. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.eperl +0 -18
  590. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.ephp +0 -18
  591. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.eruby +0 -6
  592. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example.escheme +0 -28
  593. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example1.eruby +0 -6
  594. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example1.rb +0 -17
  595. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example1.result +0 -16
  596. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example10.rb +0 -4
  597. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example10.result +0 -17
  598. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example10.xhtml +0 -14
  599. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example10_x.result +0 -17
  600. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11.php +0 -20
  601. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11.result +0 -23
  602. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11.rhtml +0 -21
  603. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11_C.result +0 -10
  604. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11_N.result +0 -16
  605. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11_U.result +0 -16
  606. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example11_php.result +0 -15
  607. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example1_x.result +0 -9
  608. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example2.eruby +0 -7
  609. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example2.rb +0 -10
  610. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example2.result +0 -27
  611. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example2_trim.result +0 -10
  612. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example2_x.result +0 -10
  613. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example3.eruby +0 -6
  614. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example3.rb +0 -10
  615. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example31.result +0 -22
  616. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example32.result +0 -4
  617. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example3_e.result +0 -8
  618. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example4.eruby +0 -3
  619. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example4.rb +0 -11
  620. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example4.result +0 -10
  621. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example4_x.result +0 -5
  622. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example5.eruby +0 -6
  623. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example5.rb +0 -16
  624. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example5.result +0 -7
  625. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example6.rb +0 -12
  626. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example6.result +0 -7
  627. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example7.eruby +0 -8
  628. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example71.result +0 -13
  629. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example72.result +0 -13
  630. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example8.eruby +0 -6
  631. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example8_ruby.result +0 -7
  632. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example8_yaml.result +0 -7
  633. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example9.eruby +0 -3
  634. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example9.rb +0 -8
  635. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example9.result +0 -9
  636. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example91.result +0 -5
  637. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example92.result +0 -4
  638. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_c.result +0 -32
  639. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_java.result +0 -56
  640. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_js.result +0 -22
  641. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_perl.result +0 -20
  642. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_php.result +0 -19
  643. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_scheme.result +0 -30
  644. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/example_scheme_display.result +0 -29
  645. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/fasteruby-example.rb +0 -8
  646. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/fasteruby-example.result +0 -18
  647. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/fasteruby.rb +0 -11
  648. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/fasteruby.result +0 -38
  649. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/fasteruby.rhtml +0 -15
  650. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/headerfooter-example.eruby +0 -9
  651. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/headerfooter-example2.rb +0 -8
  652. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/headerfooter-example2.rhtml +0 -10
  653. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/headerfooter_example.result +0 -11
  654. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/headerfooter_example2.result +0 -13
  655. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/interpolation_example.result +0 -9
  656. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/main_program1.rb +0 -8
  657. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/main_program1.result +0 -6
  658. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/main_program2.rb +0 -8
  659. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/main_program2.result +0 -6
  660. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/nocode-example.eruby +0 -14
  661. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/nocode-php.result +0 -20
  662. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/nocode_example.result +0 -15
  663. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/normal-eruby-test.eruby +0 -9
  664. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/normal_eruby_test.result +0 -11
  665. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/notext-example.eruby +0 -14
  666. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/notext-example.php +0 -19
  667. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/notext-php.result +0 -20
  668. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/notext_example.result +0 -16
  669. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/percentline-example.rhtml +0 -6
  670. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/percentline_example.result +0 -9
  671. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/prefixedline-example.rb +0 -9
  672. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/prefixedline-example.rhtml +0 -6
  673. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/prefixedline_example.result +0 -9
  674. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/printenable_example.result +0 -4
  675. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/printenabled-example.eruby +0 -3
  676. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/printenabled-example.rb +0 -8
  677. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/printstatement_example.result +0 -8
  678. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/simplify_example.result +0 -9
  679. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/stderr.log +0 -3
  680. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/stdout_exmple.result +0 -9
  681. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/stringbuffer_example.result +0 -9
  682. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/tail_260.result +0 -4
  683. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/tailnewline.rhtml +0 -3
  684. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/template1.rhtml +0 -4
  685. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/data/users-guide/template2.rhtml +0 -4
  686. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-engines.rb +0 -425
  687. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-enhancers.rb +0 -646
  688. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-erubis.rb +0 -887
  689. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-index-cgi.rb +0 -191
  690. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-main.rb +0 -752
  691. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test-users-guide.rb +0 -73
  692. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/test.rb +0 -45
  693. data/bundle/ruby/2.3.0/gems/erubis-2.7.0/test/testutil.rb +0 -111
  694. data/bundle/ruby/2.3.0/gems/haml-4.0.7/CHANGELOG.md +0 -1363
  695. data/bundle/ruby/2.3.0/gems/haml-4.0.7/FAQ.md +0 -157
  696. data/bundle/ruby/2.3.0/gems/haml-4.0.7/MIT-LICENSE +0 -20
  697. data/bundle/ruby/2.3.0/gems/haml-4.0.7/README.md +0 -173
  698. data/bundle/ruby/2.3.0/gems/haml-4.0.7/REFERENCE.md +0 -1294
  699. data/bundle/ruby/2.3.0/gems/haml-4.0.7/Rakefile +0 -134
  700. data/bundle/ruby/2.3.0/gems/haml-4.0.7/bin/haml +0 -9
  701. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/buffer.rb +0 -345
  702. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/compiler.rb +0 -540
  703. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/engine.rb +0 -245
  704. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/error.rb +0 -61
  705. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/exec.rb +0 -329
  706. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/filters.rb +0 -404
  707. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers/action_view_extensions.rb +0 -58
  708. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers/action_view_mods.rb +0 -147
  709. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers/action_view_xss_mods.rb +0 -58
  710. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers/safe_erubis_template.rb +0 -29
  711. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers/xss_mods.rb +0 -104
  712. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/helpers.rb +0 -664
  713. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/options.rb +0 -279
  714. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/parser.rb +0 -764
  715. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/railtie.rb +0 -22
  716. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/sass_rails_filter.rb +0 -33
  717. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/template/options.rb +0 -16
  718. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/template/plugin.rb +0 -41
  719. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/template.rb +0 -32
  720. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/util.rb +0 -377
  721. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml/version.rb +0 -3
  722. data/bundle/ruby/2.3.0/gems/haml-4.0.7/lib/haml.rb +0 -23
  723. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/engine_test.rb +0 -2013
  724. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/erb/_av_partial_1.erb +0 -12
  725. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/erb/_av_partial_2.erb +0 -8
  726. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/erb/action_view.erb +0 -62
  727. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/erb/standard.erb +0 -55
  728. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/filters_test.rb +0 -254
  729. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/gemfiles/Gemfile.rails-3.0.x +0 -5
  730. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/gemfiles/Gemfile.rails-3.1.x +0 -6
  731. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/gemfiles/Gemfile.rails-3.2.x +0 -5
  732. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/gemfiles/Gemfile.rails-4.0.x +0 -5
  733. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/LICENSE +0 -14
  734. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/README.md +0 -106
  735. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/lua_haml_spec.lua +0 -38
  736. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/perl_haml_test.pl +0 -81
  737. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/ruby_haml_test.rb +0 -23
  738. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/haml-spec/tests.json +0 -660
  739. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/helper_test.rb +0 -583
  740. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/markaby/standard.mab +0 -52
  741. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/mocks/article.rb +0 -6
  742. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/parser_test.rb +0 -105
  743. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/content_for_layout.xhtml +0 -12
  744. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/eval_suppressed.xhtml +0 -9
  745. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/helpers.xhtml +0 -70
  746. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/helpful.xhtml +0 -10
  747. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/just_stuff.xhtml +0 -70
  748. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/list.xhtml +0 -12
  749. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/nuke_inner_whitespace.xhtml +0 -40
  750. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/nuke_outer_whitespace.xhtml +0 -148
  751. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/original_engine.xhtml +0 -20
  752. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/partial_layout.xhtml +0 -5
  753. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/partial_layout_erb.xhtml +0 -5
  754. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/partials.xhtml +0 -21
  755. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/render_layout.xhtml +0 -3
  756. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/silent_script.xhtml +0 -74
  757. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/standard.xhtml +0 -162
  758. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/tag_parsing.xhtml +0 -23
  759. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/very_basic.xhtml +0 -5
  760. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/results/whitespace_handling.xhtml +0 -90
  761. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/template_test.rb +0 -354
  762. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_av_partial_1.haml +0 -9
  763. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_av_partial_1_ugly.haml +0 -9
  764. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_av_partial_2.haml +0 -5
  765. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_av_partial_2_ugly.haml +0 -5
  766. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_layout.erb +0 -3
  767. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_layout_for_partial.haml +0 -3
  768. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_partial.haml +0 -8
  769. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_text_area.haml +0 -3
  770. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/_text_area_helper.html.haml +0 -4
  771. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/action_view.haml +0 -47
  772. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/action_view_ugly.haml +0 -47
  773. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/breakage.haml +0 -8
  774. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/content_for_layout.haml +0 -8
  775. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/eval_suppressed.haml +0 -11
  776. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/helpers.haml +0 -55
  777. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/helpful.haml +0 -11
  778. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/just_stuff.haml +0 -85
  779. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/list.haml +0 -12
  780. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/nuke_inner_whitespace.haml +0 -32
  781. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/nuke_outer_whitespace.haml +0 -144
  782. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/original_engine.haml +0 -17
  783. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/partial_layout.haml +0 -3
  784. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/partial_layout_erb.erb +0 -4
  785. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/partialize.haml +0 -1
  786. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/partials.haml +0 -12
  787. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/render_layout.haml +0 -2
  788. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/silent_script.haml +0 -45
  789. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/standard.haml +0 -43
  790. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/standard_ugly.haml +0 -43
  791. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/tag_parsing.haml +0 -21
  792. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/very_basic.haml +0 -4
  793. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/templates/whitespace_handling.haml +0 -87
  794. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/test_helper.rb +0 -81
  795. data/bundle/ruby/2.3.0/gems/haml-4.0.7/test/util_test.rb +0 -63
  796. data/bundle/ruby/2.3.0/gems/highline-1.7.8/Changelog.md +0 -415
  797. data/bundle/ruby/2.3.0/gems/highline-1.7.8/Gemfile +0 -9
  798. data/bundle/ruby/2.3.0/gems/highline-1.7.8/INSTALL +0 -59
  799. data/bundle/ruby/2.3.0/gems/highline-1.7.8/README.rdoc +0 -74
  800. data/bundle/ruby/2.3.0/gems/highline-1.7.8/Rakefile +0 -30
  801. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/ansi_colors.rb +0 -38
  802. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/asking_for_arrays.rb +0 -18
  803. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/basic_usage.rb +0 -75
  804. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/color_scheme.rb +0 -32
  805. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/get_character.rb +0 -12
  806. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/limit.rb +0 -12
  807. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/menus.rb +0 -65
  808. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/overwrite.rb +0 -19
  809. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/page_and_wrap.rb +0 -322
  810. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/password.rb +0 -7
  811. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/repeat_entry.rb +0 -21
  812. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/trapping_eof.rb +0 -22
  813. data/bundle/ruby/2.3.0/gems/highline-1.7.8/examples/using_readline.rb +0 -17
  814. data/bundle/ruby/2.3.0/gems/highline-1.7.8/highline.gemspec +0 -37
  815. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/color_scheme.rb +0 -134
  816. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/compatibility.rb +0 -16
  817. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/import.rb +0 -41
  818. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/menu.rb +0 -381
  819. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/question.rb +0 -480
  820. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/simulate.rb +0 -48
  821. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/string_extensions.rb +0 -111
  822. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/style.rb +0 -192
  823. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/system_extensions.rb +0 -254
  824. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline/version.rb +0 -4
  825. data/bundle/ruby/2.3.0/gems/highline-1.7.8/lib/highline.rb +0 -1048
  826. data/bundle/ruby/2.3.0/gems/highline-1.7.8/setup.rb +0 -1360
  827. data/bundle/ruby/2.3.0/gems/highline-1.7.8/site/highline.css +0 -65
  828. data/bundle/ruby/2.3.0/gems/highline-1.7.8/site/images/logo.png +0 -0
  829. data/bundle/ruby/2.3.0/gems/highline-1.7.8/site/index.html +0 -58
  830. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/string_methods.rb +0 -32
  831. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_color_scheme.rb +0 -96
  832. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_highline.rb +0 -1402
  833. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_import.rb +0 -52
  834. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_menu.rb +0 -439
  835. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_simulator.rb +0 -23
  836. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_string_extension.rb +0 -33
  837. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_string_highline.rb +0 -38
  838. data/bundle/ruby/2.3.0/gems/highline-1.7.8/test/tc_style.rb +0 -578
  839. data/bundle/ruby/2.3.0/gems/ruby2ruby-2.4.0/History.rdoc +0 -406
  840. data/bundle/ruby/2.3.0/gems/ruby2ruby-2.4.0/Rakefile +0 -93
  841. data/bundle/ruby/2.3.0/gems/ruby2ruby-2.4.0/bin/r2r_show +0 -33
  842. data/bundle/ruby/2.3.0/gems/ruby2ruby-2.4.0/lib/ruby2ruby.rb +0 -1260
  843. data/bundle/ruby/2.3.0/gems/ruby2ruby-2.4.0/test/test_ruby2ruby.rb +0 -846
  844. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/History.rdoc +0 -962
  845. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/Manifest.txt +0 -34
  846. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/README.rdoc +0 -105
  847. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/Rakefile +0 -247
  848. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/bin/ruby_parse +0 -96
  849. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/bin/ruby_parse_extract_error +0 -156
  850. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/compare/normalize.rb +0 -146
  851. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/rp_extensions.rb +0 -81
  852. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/rp_stringscanner.rb +0 -64
  853. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby18_parser.rb +0 -5793
  854. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby18_parser.y +0 -1908
  855. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby19_parser.rb +0 -6179
  856. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby19_parser.y +0 -2116
  857. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby20_parser.rb +0 -6687
  858. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby20_parser.y +0 -2345
  859. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby21_parser.rb +0 -6762
  860. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby21_parser.y +0 -2362
  861. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby22_parser.rb +0 -6811
  862. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby22_parser.y +0 -2376
  863. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby23_parser.rb +0 -6819
  864. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby23_parser.y +0 -2378
  865. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby24_parser.rb +0 -6819
  866. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby24_parser.y +0 -2378
  867. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_lexer.rb +0 -1340
  868. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_lexer.rex +0 -177
  869. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_lexer.rex.rb +0 -323
  870. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_parser.rb +0 -86
  871. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_parser.yy +0 -2475
  872. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/lib/ruby_parser_extras.rb +0 -1382
  873. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/test/test_ruby_lexer.rb +0 -2877
  874. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/test/test_ruby_parser.rb +0 -3766
  875. data/bundle/ruby/2.3.0/gems/ruby_parser-3.10.1/test/test_ruby_parser_extras.rb +0 -226
  876. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/CHANGES.md +0 -149
  877. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/Rakefile +0 -26
  878. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/bin/safe_yaml +0 -75
  879. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/lib/safe_yaml/parse/date.rb +0 -35
  880. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/lib/safe_yaml/version.rb +0 -3
  881. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/exploit.1.9.2.yaml +0 -2
  882. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/exploit.1.9.3.yaml +0 -2
  883. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/issue48.txt +0 -20
  884. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/issue49.yml +0 -0
  885. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/libyaml_checker_spec.rb +0 -69
  886. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/psych_resolver_spec.rb +0 -10
  887. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/resolver_specs.rb +0 -278
  888. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/safe_yaml_spec.rb +0 -731
  889. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/spec_helper.rb +0 -42
  890. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/support/exploitable_back_door.rb +0 -29
  891. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/syck_resolver_spec.rb +0 -10
  892. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/transform/base64_spec.rb +0 -11
  893. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/transform/to_date_spec.rb +0 -60
  894. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/transform/to_float_spec.rb +0 -42
  895. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/transform/to_integer_spec.rb +0 -64
  896. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/transform/to_symbol_spec.rb +0 -51
  897. data/bundle/ruby/2.3.0/gems/safe_yaml-1.0.4/spec/yaml_spec.rb +0 -15
  898. data/bundle/ruby/2.3.0/gems/sass-3.4.25/CODE_OF_CONDUCT.md +0 -10
  899. data/bundle/ruby/2.3.0/gems/sass-3.4.25/CONTRIBUTING.md +0 -148
  900. data/bundle/ruby/2.3.0/gems/sass-3.4.25/MIT-LICENSE +0 -20
  901. data/bundle/ruby/2.3.0/gems/sass-3.4.25/README.md +0 -227
  902. data/bundle/ruby/2.3.0/gems/sass-3.4.25/REVISION +0 -1
  903. data/bundle/ruby/2.3.0/gems/sass-3.4.25/Rakefile +0 -453
  904. data/bundle/ruby/2.3.0/gems/sass-3.4.25/VERSION +0 -1
  905. data/bundle/ruby/2.3.0/gems/sass-3.4.25/VERSION_DATE +0 -1
  906. data/bundle/ruby/2.3.0/gems/sass-3.4.25/VERSION_NAME +0 -1
  907. data/bundle/ruby/2.3.0/gems/sass-3.4.25/bin/sass +0 -13
  908. data/bundle/ruby/2.3.0/gems/sass-3.4.25/bin/sass-convert +0 -12
  909. data/bundle/ruby/2.3.0/gems/sass-3.4.25/bin/scss +0 -13
  910. data/bundle/ruby/2.3.0/gems/sass-3.4.25/extra/sass-spec-ref.sh +0 -32
  911. data/bundle/ruby/2.3.0/gems/sass-3.4.25/extra/update_watch.rb +0 -13
  912. data/bundle/ruby/2.3.0/gems/sass-3.4.25/init.rb +0 -18
  913. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores/base.rb +0 -88
  914. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores/chain.rb +0 -34
  915. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores/filesystem.rb +0 -60
  916. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores/memory.rb +0 -46
  917. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores/null.rb +0 -25
  918. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/cache_stores.rb +0 -15
  919. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/callbacks.rb +0 -67
  920. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/css.rb +0 -408
  921. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/deprecation.rb +0 -55
  922. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/engine.rb +0 -1226
  923. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/environment.rb +0 -215
  924. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/error.rb +0 -198
  925. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/exec/base.rb +0 -199
  926. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/exec/sass_convert.rb +0 -283
  927. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/exec/sass_scss.rb +0 -440
  928. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/exec.rb +0 -9
  929. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/features.rb +0 -47
  930. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/importers/base.rb +0 -182
  931. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/importers/deprecated_path.rb +0 -51
  932. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/importers/filesystem.rb +0 -219
  933. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/importers.rb +0 -23
  934. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/logger/base.rb +0 -36
  935. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/logger/delayed.rb +0 -50
  936. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/logger/log_level.rb +0 -45
  937. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/logger.rb +0 -17
  938. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/media.rb +0 -210
  939. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/compiler.rb +0 -582
  940. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/configuration.rb +0 -134
  941. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/generic.rb +0 -15
  942. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/merb.rb +0 -48
  943. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/rack.rb +0 -60
  944. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/rails.rb +0 -47
  945. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin/staleness_checker.rb +0 -199
  946. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/plugin.rb +0 -134
  947. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/railtie.rb +0 -10
  948. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/repl.rb +0 -57
  949. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/root.rb +0 -7
  950. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/css_lexer.rb +0 -33
  951. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/css_parser.rb +0 -33
  952. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/css_variable_warning.rb +0 -52
  953. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/functions.rb +0 -2693
  954. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/lexer.rb +0 -464
  955. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/parser.rb +0 -832
  956. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/funcall.rb +0 -313
  957. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/interpolation.rb +0 -223
  958. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/list_literal.rb +0 -104
  959. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/literal.rb +0 -49
  960. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/map_literal.rb +0 -64
  961. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/node.rb +0 -127
  962. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/operation.rb +0 -156
  963. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/selector.rb +0 -26
  964. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/string_interpolation.rb +0 -125
  965. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/unary_operation.rb +0 -69
  966. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree/variable.rb +0 -57
  967. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/tree.rb +0 -16
  968. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/arg_list.rb +0 -36
  969. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/base.rb +0 -241
  970. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/bool.rb +0 -35
  971. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/color.rb +0 -698
  972. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/helpers.rb +0 -272
  973. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/list.rb +0 -113
  974. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/map.rb +0 -70
  975. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/null.rb +0 -44
  976. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/number.rb +0 -563
  977. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value/string.rb +0 -138
  978. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script/value.rb +0 -11
  979. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/script.rb +0 -66
  980. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/scss/css_parser.rb +0 -56
  981. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/scss/parser.rb +0 -1254
  982. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/scss/rx.rb +0 -140
  983. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/scss/static_parser.rb +0 -373
  984. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/scss.rb +0 -14
  985. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/abstract_sequence.rb +0 -111
  986. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/comma_sequence.rb +0 -191
  987. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/pseudo.rb +0 -266
  988. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/sequence.rb +0 -636
  989. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/simple.rb +0 -117
  990. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector/simple_sequence.rb +0 -344
  991. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/selector.rb +0 -323
  992. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/shared.rb +0 -76
  993. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/source/map.rb +0 -213
  994. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/source/position.rb +0 -39
  995. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/source/range.rb +0 -41
  996. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/stack.rb +0 -120
  997. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/supports.rb +0 -225
  998. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/at_root_node.rb +0 -83
  999. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/charset_node.rb +0 -22
  1000. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/comment_node.rb +0 -82
  1001. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/content_node.rb +0 -9
  1002. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/css_import_node.rb +0 -68
  1003. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/debug_node.rb +0 -18
  1004. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/directive_node.rb +0 -59
  1005. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/each_node.rb +0 -24
  1006. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/error_node.rb +0 -18
  1007. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/extend_node.rb +0 -43
  1008. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/for_node.rb +0 -36
  1009. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/function_node.rb +0 -44
  1010. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/if_node.rb +0 -52
  1011. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/import_node.rb +0 -75
  1012. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/keyframe_rule_node.rb +0 -15
  1013. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/media_node.rb +0 -48
  1014. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/mixin_def_node.rb +0 -38
  1015. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/mixin_node.rb +0 -52
  1016. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/node.rb +0 -240
  1017. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/prop_node.rb +0 -170
  1018. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/return_node.rb +0 -19
  1019. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/root_node.rb +0 -44
  1020. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/rule_node.rb +0 -155
  1021. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/supports_node.rb +0 -38
  1022. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/trace_node.rb +0 -33
  1023. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/variable_node.rb +0 -36
  1024. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/base.rb +0 -72
  1025. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/check_nesting.rb +0 -173
  1026. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/convert.rb +0 -351
  1027. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/cssize.rb +0 -373
  1028. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/deep_copy.rb +0 -107
  1029. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/extend.rb +0 -70
  1030. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/perform.rb +0 -564
  1031. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/set_options.rb +0 -139
  1032. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/visitors/to_css.rb +0 -409
  1033. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/warn_node.rb +0 -18
  1034. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/tree/while_node.rb +0 -18
  1035. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/cross_platform_random.rb +0 -19
  1036. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/multibyte_string_scanner.rb +0 -155
  1037. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/normalized_map.rb +0 -129
  1038. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/ordered_hash.rb +0 -192
  1039. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/subset_map.rb +0 -109
  1040. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util/test.rb +0 -9
  1041. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/util.rb +0 -1375
  1042. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass/version.rb +0 -124
  1043. data/bundle/ruby/2.3.0/gems/sass-3.4.25/lib/sass.rb +0 -109
  1044. data/bundle/ruby/2.3.0/gems/sass-3.4.25/rails/init.rb +0 -1
  1045. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/cache_test.rb +0 -131
  1046. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/callbacks_test.rb +0 -61
  1047. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/compiler_test.rb +0 -236
  1048. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/conversion_test.rb +0 -2188
  1049. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/css2sass_test.rb +0 -526
  1050. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/css_variable_test.rb +0 -132
  1051. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/data/hsl-rgb.txt +0 -319
  1052. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/encoding_test.rb +0 -219
  1053. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/engine_test.rb +0 -3447
  1054. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/exec_test.rb +0 -96
  1055. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/extend_test.rb +0 -1733
  1056. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/fixtures/test_staleness_check_across_importers.css +0 -1
  1057. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/fixtures/test_staleness_check_across_importers.scss +0 -1
  1058. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/functions_test.rb +0 -1977
  1059. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/importer_test.rb +0 -421
  1060. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/logger_test.rb +0 -58
  1061. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/mock_importer.rb +0 -49
  1062. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_results/more1.css +0 -9
  1063. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_results/more1_with_line_comments.css +0 -26
  1064. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_results/more_import.css +0 -29
  1065. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_templates/_more_partial.sass +0 -2
  1066. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_templates/more1.sass +0 -23
  1067. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/more_templates/more_import.sass +0 -11
  1068. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/plugin_test.rb +0 -556
  1069. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/alt.css +0 -4
  1070. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/basic.css +0 -9
  1071. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/cached_import_option.css +0 -3
  1072. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/compact.css +0 -5
  1073. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/complex.css +0 -86
  1074. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/compressed.css +0 -1
  1075. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/expanded.css +0 -19
  1076. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/filename_fn.css +0 -3
  1077. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/if.css +0 -3
  1078. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/import.css +0 -31
  1079. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/import_charset.css +0 -5
  1080. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/import_charset_1_8.css +0 -5
  1081. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/import_charset_ibm866.css +0 -5
  1082. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/import_content.css +0 -1
  1083. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/line_numbers.css +0 -49
  1084. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/mixins.css +0 -95
  1085. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/multiline.css +0 -24
  1086. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/nested.css +0 -22
  1087. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/options.css +0 -1
  1088. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/parent_ref.css +0 -13
  1089. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/script.css +0 -16
  1090. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/scss_import.css +0 -31
  1091. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/scss_importee.css +0 -2
  1092. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/subdir/nested_subdir/nested_subdir.css +0 -1
  1093. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/subdir/subdir.css +0 -3
  1094. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/units.css +0 -11
  1095. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/warn.css +0 -0
  1096. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/results/warn_imported.css +0 -0
  1097. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/script_conversion_test.rb +0 -357
  1098. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/script_test.rb +0 -1431
  1099. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/scss/css_test.rb +0 -1281
  1100. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/scss/rx_test.rb +0 -160
  1101. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/scss/scss_test.rb +0 -4205
  1102. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/scss/test_helper.rb +0 -37
  1103. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/source_map_test.rb +0 -1055
  1104. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/superselector_test.rb +0 -210
  1105. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_cached_import_option_partial.scss +0 -1
  1106. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_double_import_loop2.sass +0 -1
  1107. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_filename_fn_import.scss +0 -11
  1108. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_imported_charset_ibm866.sass +0 -4
  1109. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_imported_charset_utf8.sass +0 -4
  1110. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_imported_content.sass +0 -3
  1111. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_partial.sass +0 -2
  1112. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/_same_name_different_partiality.scss +0 -1
  1113. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/alt.sass +0 -16
  1114. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/basic.sass +0 -23
  1115. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/bork1.sass +0 -2
  1116. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/bork2.sass +0 -2
  1117. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/bork3.sass +0 -2
  1118. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/bork4.sass +0 -2
  1119. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/bork5.sass +0 -3
  1120. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/cached_import_option.scss +0 -3
  1121. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/compact.sass +0 -17
  1122. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/complex.sass +0 -305
  1123. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/compressed.sass +0 -15
  1124. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/double_import_loop1.sass +0 -1
  1125. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/expanded.sass +0 -17
  1126. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/filename_fn.scss +0 -18
  1127. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/if.sass +0 -11
  1128. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/import.sass +0 -12
  1129. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/import_charset.sass +0 -9
  1130. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/import_charset_1_8.sass +0 -6
  1131. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/import_charset_ibm866.sass +0 -11
  1132. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/import_content.sass +0 -4
  1133. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/importee.less +0 -2
  1134. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/importee.sass +0 -19
  1135. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/line_numbers.sass +0 -13
  1136. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/mixin_bork.sass +0 -5
  1137. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/mixins.sass +0 -76
  1138. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/multiline.sass +0 -20
  1139. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested.sass +0 -25
  1140. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_bork1.sass +0 -2
  1141. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_bork2.sass +0 -2
  1142. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_bork3.sass +0 -2
  1143. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_bork4.sass +0 -2
  1144. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_import.sass +0 -2
  1145. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/nested_mixin_bork.sass +0 -6
  1146. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/options.sass +0 -2
  1147. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/parent_ref.sass +0 -25
  1148. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/same_name_different_ext.sass +0 -2
  1149. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/same_name_different_ext.scss +0 -1
  1150. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/same_name_different_partiality.scss +0 -1
  1151. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/script.sass +0 -101
  1152. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/scss_import.scss +0 -12
  1153. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/scss_importee.scss +0 -1
  1154. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/single_import_loop.sass +0 -1
  1155. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/subdir/import_up1.scss +0 -1
  1156. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/subdir/import_up2.scss +0 -1
  1157. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +0 -2
  1158. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +0 -3
  1159. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/subdir/subdir.sass +0 -6
  1160. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/units.sass +0 -11
  1161. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/warn.sass +0 -3
  1162. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/templates/warn_imported.sass +0 -4
  1163. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/test_helper.rb +0 -8
  1164. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/util/multibyte_string_scanner_test.rb +0 -155
  1165. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/util/normalized_map_test.rb +0 -51
  1166. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/util/subset_map_test.rb +0 -91
  1167. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/util_test.rb +0 -438
  1168. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass/value_helpers_test.rb +0 -179
  1169. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/sass-spec.yml +0 -3
  1170. data/bundle/ruby/2.3.0/gems/sass-3.4.25/test/test_helper.rb +0 -110
  1171. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/CHANGELOG.md +0 -1
  1172. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/CONTRIBUTING.md +0 -38
  1173. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/Gemfile +0 -20
  1174. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/Guardfile +0 -8
  1175. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/LICENSE +0 -20
  1176. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/README.md +0 -349
  1177. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/Rakefile +0 -5
  1178. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/Vagrantfile +0 -96
  1179. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapter.rb +0 -327
  1180. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapters/bsd.rb +0 -75
  1181. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapters/darwin.rb +0 -48
  1182. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapters/linux.rb +0 -81
  1183. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapters/polling.rb +0 -58
  1184. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/adapters/windows.rb +0 -91
  1185. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/directory_record.rb +0 -406
  1186. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/listener.rb +0 -323
  1187. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/turnstile.rb +0 -32
  1188. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen/version.rb +0 -3
  1189. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/lib/listen.rb +0 -54
  1190. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/listen.gemspec +0 -28
  1191. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapter_spec.rb +0 -149
  1192. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapters/bsd_spec.rb +0 -36
  1193. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapters/darwin_spec.rb +0 -37
  1194. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapters/linux_spec.rb +0 -47
  1195. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapters/polling_spec.rb +0 -68
  1196. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/adapters/windows_spec.rb +0 -30
  1197. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/directory_record_spec.rb +0 -1250
  1198. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/listener_spec.rb +0 -258
  1199. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen/turnstile_spec.rb +0 -56
  1200. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/listen_spec.rb +0 -67
  1201. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/spec_helper.rb +0 -25
  1202. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/support/adapter_helper.rb +0 -666
  1203. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/support/directory_record_helper.rb +0 -57
  1204. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/support/fixtures_helper.rb +0 -29
  1205. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/support/listeners_helper.rb +0 -179
  1206. data/bundle/ruby/2.3.0/gems/sass-3.4.25/vendor/listen/spec/support/platform_helper.rb +0 -15
  1207. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/History.txt +0 -348
  1208. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/Manifest.txt +0 -14
  1209. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/Rakefile +0 -16
  1210. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/lib/pt_testcase.rb +0 -3123
  1211. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/lib/sexp.rb +0 -1414
  1212. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/lib/sexp_processor.rb +0 -754
  1213. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/lib/strict_sexp.rb +0 -126
  1214. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/test/test_composite_sexp_processor.rb +0 -66
  1215. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/test/test_environment.rb +0 -94
  1216. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/test/test_sexp.rb +0 -1630
  1217. data/bundle/ruby/2.3.0/gems/sexp_processor-4.10.0/test/test_sexp_processor.rb +0 -399
  1218. data/bundle/ruby/2.3.0/gems/slim-3.0.7/CHANGES +0 -431
  1219. data/bundle/ruby/2.3.0/gems/slim-3.0.7/Gemfile +0 -69
  1220. data/bundle/ruby/2.3.0/gems/slim-3.0.7/LICENSE +0 -21
  1221. data/bundle/ruby/2.3.0/gems/slim-3.0.7/README.jp.md +0 -1230
  1222. data/bundle/ruby/2.3.0/gems/slim-3.0.7/README.md +0 -1230
  1223. data/bundle/ruby/2.3.0/gems/slim-3.0.7/Rakefile +0 -100
  1224. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/context.rb +0 -11
  1225. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/profile-parser.rb +0 -10
  1226. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/profile-render.rb +0 -12
  1227. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/run-benchmarks.rb +0 -126
  1228. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/run-diffbench.rb +0 -21
  1229. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/view.erb +0 -23
  1230. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/view.haml +0 -18
  1231. data/bundle/ruby/2.3.0/gems/slim-3.0.7/benchmarks/view.slim +0 -17
  1232. data/bundle/ruby/2.3.0/gems/slim-3.0.7/bin/slimrb +0 -6
  1233. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/include.md +0 -20
  1234. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/jp/include.md +0 -20
  1235. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/jp/logic_less.md +0 -137
  1236. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/jp/smart.md +0 -102
  1237. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/jp/translator.md +0 -28
  1238. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/logic_less.md +0 -137
  1239. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/smart.md +0 -103
  1240. data/bundle/ruby/2.3.0/gems/slim-3.0.7/doc/translator.md +0 -28
  1241. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/command.rb +0 -128
  1242. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/embedded.rb +0 -273
  1243. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/engine.rb +0 -39
  1244. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/filter.rb +0 -30
  1245. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/grammar.rb +0 -20
  1246. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/logic_less/context.rb +0 -127
  1247. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/parser.rb +0 -537
  1248. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/smart/parser.rb +0 -36
  1249. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/splat/builder.rb +0 -101
  1250. data/bundle/ruby/2.3.0/gems/slim-3.0.7/lib/slim/version.rb +0 -5
  1251. data/bundle/ruby/2.3.0/gems/slim-3.0.7/slim.gemspec +0 -24
  1252. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/helper.rb +0 -211
  1253. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_code_blocks.rb +0 -183
  1254. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_code_escaping.rb +0 -150
  1255. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_code_evaluation.rb +0 -180
  1256. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_code_output.rb +0 -168
  1257. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_code_structure.rb +0 -186
  1258. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_commands.rb +0 -223
  1259. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_embedded_engines.rb +0 -242
  1260. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_encoding.rb +0 -28
  1261. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_erb_converter.rb +0 -67
  1262. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_html_attributes.rb +0 -268
  1263. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_html_escaping.rb +0 -65
  1264. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_html_structure.rb +0 -553
  1265. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_parser_errors.rb +0 -148
  1266. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_pretty.rb +0 -166
  1267. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_ruby_errors.rb +0 -207
  1268. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_slim_template.rb +0 -77
  1269. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_tabs.rb +0 -169
  1270. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_text_interpolation.rb +0 -79
  1271. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_thread_options.rb +0 -18
  1272. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/core/test_unicode.rb +0 -16
  1273. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/include/files/recursive.slim +0 -1
  1274. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/include/files/slimfile.slim +0 -3
  1275. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/include/files/subdir/test.slim +0 -1
  1276. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/include/files/textfile +0 -1
  1277. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/include/test_include.rb +0 -24
  1278. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/literate/TESTS.md +0 -1290
  1279. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/literate/helper.rb +0 -15
  1280. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/literate/run.rb +0 -92
  1281. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/logic_less/test_logic_less.rb +0 -295
  1282. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/Rakefile +0 -7
  1283. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/controllers/application_controller.rb +0 -2
  1284. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/controllers/entries_controller.rb +0 -5
  1285. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/controllers/slim_controller.rb +0 -40
  1286. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/helpers/application_helper.rb +0 -5
  1287. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/models/entry.rb +0 -16
  1288. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/entries/edit.html.slim +0 -3
  1289. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/layouts/application.html.slim +0 -10
  1290. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/_partial.html.slim +0 -1
  1291. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/content_for.html.slim +0 -7
  1292. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/erb.html.erb +0 -1
  1293. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/form_for.html.slim +0 -2
  1294. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/helper.html.slim +0 -4
  1295. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/integers.html.slim +0 -1
  1296. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/no_layout.html.slim +0 -1
  1297. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/normal.html.slim +0 -1
  1298. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/partial.html.slim +0 -2
  1299. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/splat.html.slim +0 -2
  1300. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/thread_options.html.slim +0 -1
  1301. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/variables.html.slim +0 -1
  1302. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/app/views/slim/xml.slim +0 -1
  1303. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/application.rb +0 -44
  1304. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/boot.rb +0 -10
  1305. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/environment.rb +0 -5
  1306. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/environments/test.rb +0 -34
  1307. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/initializers/backtrace_silencers.rb +0 -7
  1308. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/initializers/inflections.rb +0 -10
  1309. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/initializers/mime_types.rb +0 -5
  1310. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/initializers/secret_token.rb +0 -7
  1311. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/initializers/session_store.rb +0 -8
  1312. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/locales/en.yml +0 -5
  1313. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config/routes.rb +0 -60
  1314. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/config.ru +0 -4
  1315. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/script/rails +0 -6
  1316. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/test/helper.rb +0 -31
  1317. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/rails/test/test_slim.rb +0 -90
  1318. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/smart/test_smart_text.rb +0 -296
  1319. data/bundle/ruby/2.3.0/gems/slim-3.0.7/test/translator/test_translator.rb +0 -76
  1320. data/bundle/ruby/2.3.0/gems/temple-0.7.7/CHANGES +0 -240
  1321. data/bundle/ruby/2.3.0/gems/temple-0.7.7/EXPRESSIONS.md +0 -261
  1322. data/bundle/ruby/2.3.0/gems/temple-0.7.7/README.md +0 -267
  1323. data/bundle/ruby/2.3.0/gems/temple-0.7.7/Rakefile +0 -25
  1324. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/filters/static_analyzer.rb +0 -87
  1325. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/filters/string_splitter.rb +0 -130
  1326. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/mixins/dispatcher.rb +0 -160
  1327. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/templates/rails.rb +0 -26
  1328. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/version.rb +0 -3
  1329. data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple.rb +0 -66
  1330. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_code_merger.rb +0 -38
  1331. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_control_flow.rb +0 -90
  1332. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_dynamic_inliner.rb +0 -95
  1333. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_eraser.rb +0 -55
  1334. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_escapable.rb +0 -49
  1335. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_multi_flattener.rb +0 -33
  1336. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_static_analyzer.rb +0 -23
  1337. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_static_merger.rb +0 -41
  1338. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_string_splitter.rb +0 -18
  1339. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/helper.rb +0 -30
  1340. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/html/test_attribute_merger.rb +0 -76
  1341. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/html/test_attribute_remover.rb +0 -43
  1342. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/html/test_attribute_sorter.rb +0 -48
  1343. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/html/test_fast.rb +0 -97
  1344. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/html/test_pretty.rb +0 -55
  1345. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/mixins/test_dispatcher.rb +0 -70
  1346. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/mixins/test_grammar_dsl.rb +0 -86
  1347. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_engine.rb +0 -189
  1348. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_erb.rb +0 -61
  1349. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_filter.rb +0 -29
  1350. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_generator.rb +0 -158
  1351. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_grammar.rb +0 -47
  1352. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_map.rb +0 -39
  1353. data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/test_utils.rb +0 -39
  1354. data/bundle/ruby/2.3.0/gems/terminal-table-1.8.0/Rakefile +0 -15
  1355. data/bundle/ruby/2.3.0/gems/terminal-table-1.8.0/examples/examples.rb +0 -83
  1356. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/CHANGELOG.md +0 -127
  1357. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/Gemfile +0 -65
  1358. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/HACKING +0 -16
  1359. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/README.md +0 -233
  1360. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/Rakefile +0 -106
  1361. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/bin/tilt +0 -122
  1362. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/docs/TEMPLATES.md +0 -555
  1363. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/docs/common.css +0 -14
  1364. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/commonmarker.rb +0 -21
  1365. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/csv.rb +0 -65
  1366. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/erb.rb +0 -57
  1367. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/haml.rb +0 -86
  1368. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/pandoc.rb +0 -49
  1369. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/redcarpet.rb +0 -83
  1370. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/rst-pandoc.rb +0 -18
  1371. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/sass.rb +0 -41
  1372. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt/template.rb +0 -302
  1373. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/lib/tilt.rb +0 -166
  1374. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/man/index.txt +0 -2
  1375. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/man/tilt.1.ronn +0 -59
  1376. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/locals.mab +0 -1
  1377. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/markaby.mab +0 -1
  1378. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/markaby_other_static.mab +0 -1
  1379. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/render_twice.mab +0 -1
  1380. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/scope.mab +0 -1
  1381. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/markaby/yielding.mab +0 -2
  1382. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/mytemplate.rb +0 -2
  1383. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/test_helper.rb +0 -64
  1384. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_asciidoctor_test.rb +0 -50
  1385. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_babeltemplate.rb +0 -33
  1386. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_blueclothtemplate_test.rb +0 -33
  1387. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_buildertemplate_test.rb +0 -72
  1388. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_cache_test.rb +0 -43
  1389. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_coffeescripttemplate_test.rb +0 -141
  1390. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_commonmarkertemplate_test.rb +0 -20
  1391. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_compilesite_test.rb +0 -51
  1392. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_creoletemplate_test.rb +0 -24
  1393. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_csv_test.rb +0 -77
  1394. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_erbtemplate_test.rb +0 -239
  1395. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_erubistemplate_test.rb +0 -151
  1396. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_erubitemplate_test.rb +0 -158
  1397. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_etannitemplate_test.rb +0 -174
  1398. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_hamltemplate_test.rb +0 -166
  1399. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_kramdown_test.rb +0 -20
  1400. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_lesstemplate_test.less +0 -1
  1401. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_lesstemplate_test.rb +0 -42
  1402. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_liquidtemplate_test.rb +0 -87
  1403. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_livescripttemplate_test.rb +0 -37
  1404. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_mapping_test.rb +0 -232
  1405. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_markaby_test.rb +0 -88
  1406. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_markdown_test.rb +0 -186
  1407. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_marukutemplate_test.rb +0 -36
  1408. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_metadata_test.rb +0 -42
  1409. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_nokogiritemplate_test.rb +0 -87
  1410. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_pandoctemplate_test.rb +0 -67
  1411. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_prawntemplate.prawn +0 -1
  1412. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_prawntemplate_test.rb +0 -75
  1413. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_radiustemplate_test.rb +0 -75
  1414. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_rdiscounttemplate_test.rb +0 -43
  1415. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_rdoctemplate_test.rb +0 -29
  1416. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_redcarpettemplate_test.rb +0 -54
  1417. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_redclothtemplate_test.rb +0 -36
  1418. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_rstpandoctemplate_test.rb +0 -32
  1419. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_sasstemplate_test.rb +0 -41
  1420. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_sigil_test.rb +0 -41
  1421. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_stringtemplate_test.rb +0 -171
  1422. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_template_test.rb +0 -314
  1423. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_test.rb +0 -60
  1424. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_typescript_test.rb +0 -38
  1425. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_wikiclothtemplate_test.rb +0 -32
  1426. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/test/tilt_yajltemplate_test.rb +0 -101
  1427. data/bundle/ruby/2.3.0/gems/tilt-2.0.8/tilt.gemspec +0 -130
  1428. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/CHANGELOG.md +0 -96
  1429. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/MIT-LICENSE.txt +0 -22
  1430. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/README.md +0 -120
  1431. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/Rakefile +0 -64
  1432. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/data/display_width.marshal.gz +0 -0
  1433. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/lib/unicode/display_width/constants.rb +0 -8
  1434. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/lib/unicode/display_width/index.rb +0 -7
  1435. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/lib/unicode/display_width.rb +0 -51
  1436. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/spec/display_width_spec.rb +0 -156
  1437. data/bundle/ruby/2.3.0/gems/unicode-display_width-1.3.0/unicode-display_width.gemspec +0 -18
  1438. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/CHANGES.txt +0 -0
  1439. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/MIT-LICENSE +0 -0
  1440. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/README.txt +0 -0
  1441. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/contrib/erubis +0 -0
  1442. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/contrib/erubis-run.rb +0 -0
  1443. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/contrib/inline-require +0 -0
  1444. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/context.rb +0 -0
  1445. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/converter.rb +0 -0
  1446. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ec.rb +0 -0
  1447. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ecpp.rb +0 -0
  1448. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ejava.rb +0 -0
  1449. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ejavascript.rb +0 -0
  1450. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/enhanced.rb +0 -0
  1451. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/eperl.rb +0 -0
  1452. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb +0 -0
  1453. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/eruby.rb +0 -0
  1454. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/escheme.rb +0 -0
  1455. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/optimized.rb +0 -0
  1456. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine.rb +0 -0
  1457. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/enhancer.rb +0 -0
  1458. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/error.rb +0 -0
  1459. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/evaluator.rb +0 -0
  1460. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/generator.rb +0 -0
  1461. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helper.rb +0 -0
  1462. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_form_helper.rb +0 -0
  1463. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_helper.rb +0 -0
  1464. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/local-setting.rb +0 -0
  1465. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/main.rb +0 -0
  1466. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/preprocessing.rb +0 -0
  1467. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/tiny.rb +0 -0
  1468. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/util.rb +0 -0
  1469. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis.rb +0 -0
  1470. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/erubis-2.7.0/setup.rb +0 -0
  1471. /data/bundle/ruby/{2.3.0/gems/highline-1.7.8 → 3.1.0/gems/highline-2.1.0}/AUTHORS +0 -0
  1472. /data/bundle/ruby/{2.3.0/gems/highline-1.7.8 → 3.1.0/gems/highline-2.1.0}/COPYING +0 -0
  1473. /data/bundle/ruby/{2.3.0/gems/highline-1.7.8 → 3.1.0/gems/highline-2.1.0}/LICENSE +0 -0
  1474. /data/bundle/ruby/{2.3.0/gems/highline-1.7.8 → 3.1.0/gems/highline-2.1.0}/TODO +0 -0
  1475. /data/bundle/ruby/{2.3.0/gems/ruby2ruby-2.4.0 → 3.1.0/gems/ruby2ruby-2.4.4}/Manifest.txt +0 -0
  1476. /data/bundle/ruby/{2.3.0/gems/ruby2ruby-2.4.0 → 3.1.0/gems/ruby2ruby-2.4.4}/README.rdoc +0 -0
  1477. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/Gemfile +0 -0
  1478. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/LICENSE.txt +0 -0
  1479. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/README.md +0 -0
  1480. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/bundle_install_all_ruby_versions.sh +0 -0
  1481. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/deep.rb +0 -0
  1482. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/libyaml_checker.rb +0 -0
  1483. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/load.rb +0 -0
  1484. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/parse/hexadecimal.rb +0 -0
  1485. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/parse/sexagesimal.rb +0 -0
  1486. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/psych_handler.rb +0 -0
  1487. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/psych_resolver.rb +0 -0
  1488. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/resolver.rb +0 -0
  1489. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/safe_to_ruby_visitor.rb +0 -0
  1490. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/syck_hack.rb +0 -0
  1491. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/syck_node_monkeypatch.rb +0 -0
  1492. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/syck_resolver.rb +0 -0
  1493. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_boolean.rb +0 -0
  1494. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_date.rb +0 -0
  1495. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_float.rb +0 -0
  1496. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_integer.rb +0 -0
  1497. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_nil.rb +0 -0
  1498. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/to_symbol.rb +0 -0
  1499. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform/transformation_map.rb +0 -0
  1500. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml/transform.rb +0 -0
  1501. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/lib/safe_yaml.rb +0 -0
  1502. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/run_specs_all_ruby_versions.sh +0 -0
  1503. /data/bundle/ruby/{2.3.0/gems/safe_yaml-1.0.4 → 3.1.0/gems/safe_yaml-1.0.5}/safe_yaml.gemspec +0 -0
  1504. /data/bundle/ruby/{2.3.0/gems/sexp_processor-4.10.0/README.txt → 3.1.0/gems/sexp_processor-4.16.1/README.rdoc} +0 -0
  1505. /data/bundle/ruby/{2.3.0/gems/sexp_processor-4.10.0 → 3.1.0/gems/sexp_processor-4.16.1}/lib/composite_sexp_processor.rb +0 -0
  1506. /data/bundle/ruby/{2.3.0/gems/sexp_processor-4.10.0 → 3.1.0/gems/sexp_processor-4.16.1}/lib/unique.rb +0 -0
  1507. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/code_attributes.rb +0 -0
  1508. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/controls.rb +0 -0
  1509. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/do_inserter.rb +0 -0
  1510. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/end_inserter.rb +0 -0
  1511. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/erb_converter.rb +0 -0
  1512. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/include.rb +0 -0
  1513. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/interpolation.rb +0 -0
  1514. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/logic_less/filter.rb +0 -0
  1515. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/logic_less.rb +0 -0
  1516. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/smart/escaper.rb +0 -0
  1517. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/smart/filter.rb +0 -0
  1518. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/smart.rb +0 -0
  1519. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/splat/filter.rb +0 -0
  1520. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/template.rb +0 -0
  1521. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim/translator.rb +0 -0
  1522. /data/bundle/ruby/{2.3.0/gems/slim-3.0.7 → 3.1.0/gems/slim-4.1.0}/lib/slim.rb +0 -0
  1523. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/Gemfile +0 -0
  1524. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/LICENSE +0 -0
  1525. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/engine.rb +0 -0
  1526. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/erb/engine.rb +0 -0
  1527. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/erb/parser.rb +0 -0
  1528. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/erb/template.rb +0 -0
  1529. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/erb/trimming.rb +0 -0
  1530. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/exceptions.rb +0 -0
  1531. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filter.rb +0 -0
  1532. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/code_merger.rb +0 -0
  1533. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/control_flow.rb +0 -0
  1534. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/dynamic_inliner.rb +0 -0
  1535. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/encoding.rb +0 -0
  1536. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/eraser.rb +0 -0
  1537. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/escapable.rb +0 -0
  1538. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/multi_flattener.rb +0 -0
  1539. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/remove_bom.rb +0 -0
  1540. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/static_merger.rb +0 -0
  1541. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/filters/validator.rb +0 -0
  1542. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generator.rb +0 -0
  1543. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generators/array.rb +0 -0
  1544. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generators/array_buffer.rb +0 -0
  1545. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generators/erb.rb +0 -0
  1546. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generators/rails_output_buffer.rb +0 -0
  1547. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/generators/string_buffer.rb +0 -0
  1548. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/grammar.rb +0 -0
  1549. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/attribute_merger.rb +0 -0
  1550. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/attribute_remover.rb +0 -0
  1551. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/attribute_sorter.rb +0 -0
  1552. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/dispatcher.rb +0 -0
  1553. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/fast.rb +0 -0
  1554. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/filter.rb +0 -0
  1555. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/pretty.rb +0 -0
  1556. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/html/safe.rb +0 -0
  1557. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/map.rb +0 -0
  1558. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/mixins/engine_dsl.rb +0 -0
  1559. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/mixins/grammar_dsl.rb +0 -0
  1560. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/mixins/options.rb +0 -0
  1561. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/mixins/template.rb +0 -0
  1562. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/parser.rb +0 -0
  1563. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/templates/tilt.rb +0 -0
  1564. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/templates.rb +0 -0
  1565. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/lib/temple/utils.rb +0 -0
  1566. /data/bundle/ruby/{2.3.0/gems/temple-0.7.7 → 3.1.0/gems/temple-0.8.2}/temple.gemspec +0 -0
  1567. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/Gemfile +0 -0
  1568. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/History.rdoc +0 -0
  1569. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/LICENSE.txt +0 -0
  1570. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/Manifest +0 -0
  1571. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/README.rdoc +0 -0
  1572. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/Todo.rdoc +0 -0
  1573. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/cell.rb +0 -0
  1574. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/import.rb +0 -0
  1575. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/row.rb +0 -0
  1576. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/separator.rb +0 -0
  1577. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/style.rb +0 -0
  1578. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/table.rb +0 -0
  1579. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/table_helper.rb +0 -0
  1580. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table/version.rb +0 -0
  1581. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/lib/terminal-table.rb +0 -0
  1582. /data/bundle/ruby/{2.3.0 → 3.1.0}/gems/terminal-table-1.8.0/terminal-table.gemspec +0 -0
  1583. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/COPYING +0 -0
  1584. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/asciidoc.rb +0 -0
  1585. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/babel.rb +0 -0
  1586. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/bluecloth.rb +0 -0
  1587. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/builder.rb +0 -0
  1588. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/coffee.rb +0 -0
  1589. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/creole.rb +0 -0
  1590. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/dummy.rb +0 -0
  1591. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/erubi.rb +0 -0
  1592. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/erubis.rb +0 -0
  1593. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/etanni.rb +0 -0
  1594. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/kramdown.rb +0 -0
  1595. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/less.rb +0 -0
  1596. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/liquid.rb +0 -0
  1597. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/livescript.rb +0 -0
  1598. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/mapping.rb +0 -0
  1599. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/markaby.rb +0 -0
  1600. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/maruku.rb +0 -0
  1601. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/nokogiri.rb +0 -0
  1602. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/plain.rb +0 -0
  1603. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/prawn.rb +0 -0
  1604. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/radius.rb +0 -0
  1605. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/rdiscount.rb +0 -0
  1606. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/rdoc.rb +0 -0
  1607. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/redcloth.rb +0 -0
  1608. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/sigil.rb +0 -0
  1609. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/string.rb +0 -0
  1610. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/typescript.rb +0 -0
  1611. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/wikicloth.rb +0 -0
  1612. /data/bundle/ruby/{2.3.0/gems/tilt-2.0.8 → 3.1.0/gems/tilt-2.0.11}/lib/tilt/yajl.rb +0 -0
  1613. /data/bundle/ruby/{2.3.0/gems/unicode-display_width-1.3.0 → 3.1.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/no_string_ext.rb +0 -0
  1614. /data/bundle/ruby/{2.3.0/gems/unicode-display_width-1.3.0 → 3.1.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/string_ext.rb +0 -0
@@ -0,0 +1,3477 @@
1
+ # -*- racc -*-
2
+
3
+ #if V==20
4
+ class Ruby20Parser
5
+ #elif V==21
6
+ class Ruby21Parser
7
+ #elif V == 22
8
+ class Ruby22Parser
9
+ #elif V == 23
10
+ class Ruby23Parser
11
+ #elif V == 24
12
+ class Ruby24Parser
13
+ #elif V == 25
14
+ class Ruby25Parser
15
+ #elif V == 26
16
+ class Ruby26Parser
17
+ #elif V == 27
18
+ class Ruby27Parser
19
+ #else
20
+ fail "version not specified or supported on code generation"
21
+ #endif
22
+
23
+ token kCLASS kMODULE kDEF kUNDEF kBEGIN kRESCUE kENSURE kEND kIF kUNLESS
24
+ kTHEN kELSIF kELSE kCASE kWHEN kWHILE kUNTIL kFOR kBREAK kNEXT
25
+ kREDO kRETRY kIN kDO kDO_COND kDO_BLOCK kDO_LAMBDA kRETURN kYIELD kSUPER
26
+ kSELF kNIL kTRUE kFALSE kAND kOR kNOT kIF_MOD kUNLESS_MOD kWHILE_MOD
27
+ kUNTIL_MOD kRESCUE_MOD kALIAS kDEFINED klBEGIN klEND k__LINE__
28
+ k__FILE__ k__ENCODING__ tIDENTIFIER tFID tGVAR tIVAR tCONSTANT
29
+ tLABEL tCVAR tNTH_REF tBACK_REF tSTRING_CONTENT tINTEGER tFLOAT
30
+ tREGEXP_END tUPLUS tUMINUS tUMINUS_NUM tPOW tCMP tEQ tEQQ tNEQ
31
+ tGEQ tLEQ tANDOP tOROP tMATCH tNMATCH tDOT tDOT2 tDOT3 tAREF
32
+ tASET tLSHFT tRSHFT tCOLON2 tCOLON3 tOP_ASGN tASSOC tLPAREN
33
+ tLPAREN2 tRPAREN tLPAREN_ARG tLBRACK tLBRACK2 tRBRACK tLBRACE
34
+ tLBRACE_ARG tSTAR tSTAR2 tAMPER tAMPER2 tTILDE tPERCENT tDIVIDE
35
+ tPLUS tMINUS tLT tGT tPIPE tBANG tCARET tLCURLY tRCURLY
36
+ tBACK_REF2 tSYMBEG tSTRING_BEG tXSTRING_BEG tREGEXP_BEG
37
+ tWORDS_BEG tQWORDS_BEG tSTRING_DBEG tSTRING_DVAR tSTRING_END
38
+ tSTRING tSYMBOL tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
39
+ tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
40
+ #if V >= 21
41
+ tRATIONAL tIMAGINARY
42
+ #endif
43
+ #if V >= 22
44
+ tLABEL_END
45
+ #endif
46
+ #if V >= 23
47
+ tLONELY
48
+ #endif
49
+ #if V >= 26
50
+ tBDOT2 tBDOT3
51
+ #endif
52
+
53
+ preclow
54
+ nonassoc tLOWEST
55
+ nonassoc tLBRACE_ARG
56
+ nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
57
+ left kOR kAND
58
+ right kNOT
59
+ nonassoc kDEFINED
60
+ right tEQL tOP_ASGN
61
+ left kRESCUE_MOD
62
+ right tEH tCOLON
63
+ nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
64
+ left tOROP
65
+ left tANDOP
66
+ nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
67
+ left tGT tGEQ tLT tLEQ
68
+ left tPIPE tCARET
69
+ left tAMPER2
70
+ left tLSHFT tRSHFT
71
+ left tPLUS tMINUS
72
+ left tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
73
+ right tUMINUS_NUM tUMINUS
74
+ right tPOW
75
+ right tBANG tTILDE tUPLUS
76
+ prechigh
77
+
78
+ rule
79
+
80
+ program: {
81
+ self.lexer.lex_state = EXPR_BEG
82
+ }
83
+ top_compstmt
84
+ {
85
+ result = new_compstmt val
86
+
87
+ lexer.cond.pop # local_pop
88
+ lexer.cmdarg.pop
89
+ }
90
+
91
+ top_compstmt: top_stmts opt_terms
92
+ {
93
+ stmt, _ = val
94
+ result = stmt
95
+ }
96
+
97
+ top_stmts: none
98
+ | top_stmt
99
+ | top_stmts terms top_stmt
100
+ {
101
+ result = self.block_append val[0], val[2]
102
+ }
103
+ | error top_stmt
104
+
105
+ top_stmt: stmt
106
+ | klBEGIN
107
+ {
108
+ if (self.in_def || self.in_single > 0) then
109
+ debug 11
110
+ yyerror "BEGIN in method"
111
+ end
112
+ self.env.extend
113
+ }
114
+ begin_block
115
+ {
116
+ (_, lineno), _, iter = val
117
+ iter.line lineno
118
+
119
+ (_, preexe,) = iter
120
+ preexe.line lineno
121
+
122
+ result = iter
123
+ }
124
+
125
+ begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
126
+ {
127
+ _, line, stmt, _ = val
128
+ result = new_iter s(:preexe).line(line), 0, stmt
129
+ }
130
+
131
+ bodystmt: compstmt opt_rescue k_else
132
+ {
133
+ res = _values[-2]
134
+ # TODO: move down to main match so I can just use val
135
+
136
+ #if V >= 26
137
+ yyerror "else without rescue is useless" unless res
138
+ #else
139
+ warn "else without rescue is useless" unless res
140
+ #endif
141
+ }
142
+ compstmt
143
+ opt_ensure
144
+ {
145
+ body, resc, _, _, els, ens = val
146
+
147
+ result = new_body [body, resc, els, ens]
148
+ }
149
+ | compstmt opt_rescue opt_ensure
150
+ {
151
+ body, resc, ens = val
152
+
153
+ result = new_body [body, resc, nil, ens]
154
+ }
155
+
156
+ compstmt: stmts opt_terms
157
+ {
158
+ result = new_compstmt val
159
+ }
160
+
161
+ stmts: none
162
+ | stmt_or_begin # TODO: newline_node ?
163
+ | stmts terms stmt_or_begin
164
+ {
165
+ result = self.block_append val[0], val[2]
166
+ }
167
+ | error stmt
168
+ {
169
+ result = val[1]
170
+ debug 12
171
+ }
172
+
173
+ stmt_or_begin: stmt
174
+ | klBEGIN
175
+ {
176
+ yyerror "BEGIN is permitted only at toplevel"
177
+ }
178
+ begin_block
179
+ {
180
+ result = val[2] # wtf?
181
+ }
182
+
183
+ stmt: kALIAS fitem
184
+ {
185
+ lexer.lex_state = EXPR_FNAME
186
+ }
187
+ fitem
188
+ {
189
+ (_, line), lhs, _, rhs = val
190
+ result = s(:alias, lhs, rhs).line(line).line line
191
+ }
192
+ | kALIAS tGVAR tGVAR
193
+ {
194
+ (_, line), (lhs, _), (rhs, _) = val
195
+ result = s(:valias, lhs.to_sym, rhs.to_sym).line line
196
+ }
197
+ | kALIAS tGVAR tBACK_REF
198
+ {
199
+ (_, line), (lhs, _), (rhs, _) = val
200
+ result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
201
+ }
202
+ | kALIAS tGVAR tNTH_REF
203
+ {
204
+ yyerror "can't make alias for the number variables"
205
+ }
206
+ | kUNDEF undef_list
207
+ {
208
+ result = val[1]
209
+ }
210
+ | stmt kIF_MOD expr_value
211
+ {
212
+ t, _, c = val
213
+ result = new_if c, t, nil
214
+ }
215
+ | stmt kUNLESS_MOD expr_value
216
+ {
217
+ f, _, c = val
218
+ result = new_if c, nil, f
219
+ }
220
+ | stmt kWHILE_MOD expr_value
221
+ {
222
+ e, _, c = val
223
+ result = new_while e, c, true
224
+ }
225
+ | stmt kUNTIL_MOD expr_value
226
+ {
227
+ e, _, c = val
228
+ result = new_until e, c, true
229
+ }
230
+ | stmt kRESCUE_MOD stmt
231
+ {
232
+ body, _, resbody = val
233
+
234
+ resbody = new_resbody s(:array).line(resbody.line), resbody
235
+ result = new_rescue body, resbody
236
+ }
237
+ | klEND tLCURLY compstmt tRCURLY
238
+ {
239
+ (_, line), _, stmt, _ = val
240
+
241
+ if (self.in_def || self.in_single > 0) then
242
+ debug 13
243
+ yyerror "END in method; use at_exit"
244
+ end
245
+
246
+ result = new_iter s(:postexe).line(line), 0, stmt
247
+ }
248
+ | command_asgn
249
+ | mlhs tEQL command_call
250
+ {
251
+ result = new_masgn val[0], val[2], :wrap
252
+ }
253
+ | lhs tEQL mrhs
254
+ {
255
+ lhs, _, rhs = val
256
+ result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
257
+ }
258
+ #if V == 20
259
+ | mlhs tEQL arg_value
260
+ {
261
+ result = new_masgn val[0], val[2], :wrap
262
+ }
263
+ #endif
264
+ #if V >= 27
265
+ | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
266
+ {
267
+ # unwraps s(:to_ary, rhs)
268
+ lhs, _, (_, rhs), _, resbody = val
269
+
270
+ resbody = new_resbody s(:array).line(resbody.line), resbody
271
+
272
+ result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
273
+ }
274
+ #endif
275
+ #if V == 20
276
+ | mlhs tEQL mrhs
277
+ #else
278
+ | mlhs tEQL mrhs_arg
279
+ #endif
280
+ {
281
+ result = new_masgn val[0], val[2]
282
+ }
283
+ | expr
284
+
285
+ command_asgn: lhs tEQL command_rhs
286
+ {
287
+ result = new_assign val[0], val[2]
288
+ }
289
+ # | lhs tEQL command_asgn
290
+ # {
291
+ # result = new_assign val[0], val[2]
292
+ # }
293
+ | var_lhs tOP_ASGN command_rhs
294
+ {
295
+ result = new_op_asgn val
296
+ }
297
+ | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
298
+ {
299
+ result = new_op_asgn1 val
300
+ }
301
+ | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
302
+ {
303
+ prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
304
+
305
+ result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
306
+ result.sexp_type = :safe_op_asgn if call_op == '&.'
307
+ result.line prim.line
308
+ }
309
+ | primary_value call_op tCONSTANT tOP_ASGN command_rhs
310
+ {
311
+ prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
312
+
313
+ result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
314
+ result.sexp_type = :safe_op_asgn if call_op == '&.'
315
+ result.line prim.line
316
+ }
317
+ | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
318
+ {
319
+ lhs1, _, (lhs2, line), (id, _), rhs = val
320
+
321
+ result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
322
+ }
323
+ | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
324
+ {
325
+ lhs1, _, (lhs2, line), (id, _), rhs = val
326
+
327
+ result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
328
+ }
329
+ | backref tOP_ASGN command_rhs
330
+ {
331
+ self.backref_assign_error val[0]
332
+ }
333
+
334
+ command_rhs: command_call =tOP_ASGN
335
+ {
336
+ expr, = val
337
+ result = value_expr expr
338
+ }
339
+ #if V >= 24
340
+ | command_call kRESCUE_MOD stmt
341
+ {
342
+ expr, (_, line), resbody = val
343
+
344
+ expr = value_expr expr
345
+ ary = s(:array).line line
346
+ result = new_rescue(expr, new_resbody(ary, resbody))
347
+ }
348
+ #endif
349
+ | command_asgn
350
+
351
+ expr: command_call
352
+ | expr kAND expr
353
+ {
354
+ lhs, _, rhs = val
355
+ result = logical_op :and, lhs, rhs
356
+ }
357
+ | expr kOR expr
358
+ {
359
+ lhs, _, rhs = val
360
+ result = logical_op :or, lhs, rhs
361
+ }
362
+ | kNOT opt_nl expr
363
+ {
364
+ (_, line), _, expr = val
365
+ result = new_call(expr, :"!").line line
366
+ # REFACTOR: call_uni_op
367
+ }
368
+ | tBANG command_call
369
+ {
370
+ _, cmd = val
371
+ result = new_call(cmd, :"!").line cmd.line
372
+ # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
373
+ # REFACTOR: call_uni_op -- see parse26.y
374
+ }
375
+ #if V >= 27
376
+ | arg
377
+ kIN
378
+ {
379
+ # TODO? value_expr($1);
380
+ self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
381
+ self.lexer.command_start = false
382
+ result = self.in_kwarg
383
+ self.in_kwarg = true
384
+ self.env.extend
385
+ }
386
+ p_expr
387
+ {
388
+ self.env.unextend
389
+
390
+ expr, _, old_kwarg, pat = val
391
+
392
+ expr = value_expr expr
393
+
394
+ self.in_kwarg = old_kwarg
395
+ pat_in = new_in pat, nil, nil, expr.line
396
+ result = new_case expr, pat_in, expr.line
397
+ }
398
+ #endif
399
+ | arg =tLBRACE_ARG
400
+
401
+ expr_value: expr
402
+ {
403
+ result = value_expr(val[0])
404
+ }
405
+
406
+ expr_value_do: {
407
+ lexer.cond.push true
408
+ }
409
+ expr_value do
410
+ {
411
+ lexer.cond.pop
412
+ }
413
+ {
414
+ _, expr, _, _ = val
415
+ result = expr
416
+ }
417
+
418
+ command_call: command
419
+ | block_command
420
+
421
+ block_command: block_call
422
+ | block_call call_op2 operation2 command_args
423
+ {
424
+ blk, _, (msg, _line), args = val
425
+ result = new_call(blk, msg.to_sym, args).line blk.line
426
+ }
427
+
428
+ cmd_brace_block: tLBRACE_ARG
429
+ {
430
+ # self.env.extend(:dynamic)
431
+ result = self.lexer.lineno
432
+ }
433
+ brace_body tRCURLY
434
+ {
435
+ _, line, body, _ = val
436
+
437
+ result = body
438
+ result.line line
439
+
440
+ # self.env.unextend
441
+ }
442
+
443
+ fcall: operation
444
+ {
445
+ (msg, line), = val
446
+ result = new_call(nil, msg.to_sym).line line
447
+ }
448
+
449
+ command: fcall command_args =tLOWEST
450
+ {
451
+ call, args = val
452
+ result = call.concat args.sexp_body
453
+ }
454
+ | fcall command_args cmd_brace_block
455
+ {
456
+ call, args, block = val
457
+
458
+ result = call.concat args.sexp_body
459
+
460
+ if block then
461
+ block_dup_check result, block
462
+
463
+ result, operation = block, result
464
+ result.insert 1, operation
465
+ end
466
+ }
467
+ | primary_value call_op operation2 command_args =tLOWEST
468
+ {
469
+ lhs, callop, (op, _), args = val
470
+
471
+ result = new_call lhs, op.to_sym, args, callop
472
+ result.line lhs.line
473
+ }
474
+ | primary_value call_op operation2 command_args cmd_brace_block
475
+ {
476
+ recv, _, (msg, _line), args, block = val
477
+ call = new_call recv, msg.to_sym, args, val[1]
478
+
479
+ block_dup_check call, block
480
+
481
+ block.insert 1, call
482
+ result = block
483
+ }
484
+ | primary_value tCOLON2 operation2 command_args =tLOWEST
485
+ {
486
+ lhs, _, (id, line), args = val
487
+
488
+ result = new_call lhs, id.to_sym, args
489
+ result.line line
490
+ }
491
+ | primary_value tCOLON2 operation2 command_args cmd_brace_block
492
+ {
493
+ recv, _, (msg, _line), args, block = val
494
+ call = new_call recv, msg.to_sym, args
495
+
496
+ block_dup_check call, block
497
+
498
+ block.insert 1, call
499
+ result = block
500
+ }
501
+ | kSUPER command_args
502
+ {
503
+ result = new_super val[1]
504
+ }
505
+ | kYIELD command_args
506
+ {
507
+ (_, line), args = val
508
+ result = new_yield args
509
+ result.line line # TODO: push to new_yield
510
+ }
511
+ | k_return call_args
512
+ {
513
+ line = val[0].last
514
+ result = s(:return, ret_args(val[1])).line(line)
515
+ }
516
+ | kBREAK call_args
517
+ {
518
+ (_, line), args = val
519
+ result = s(:break, ret_args(args)).line line
520
+ }
521
+ | kNEXT call_args
522
+ {
523
+ line = val[0].last
524
+ result = s(:next, ret_args(val[1])).line(line)
525
+ }
526
+
527
+ mlhs: mlhs_basic
528
+ | tLPAREN mlhs_inner rparen
529
+ {
530
+ result = val[1]
531
+ }
532
+
533
+ mlhs_inner: mlhs_basic
534
+ | tLPAREN mlhs_inner rparen
535
+ {
536
+ _, arg, _ = val
537
+ l = arg.line
538
+
539
+ result = s(:masgn, s(:array, arg).line(l)).line l
540
+ }
541
+
542
+ mlhs_basic: mlhs_head
543
+ {
544
+ head, = val
545
+ result = s(:masgn, head).line head.line
546
+ }
547
+ | mlhs_head mlhs_item
548
+ {
549
+ lhs, rhs = val
550
+ result = s(:masgn, lhs << rhs.compact).line lhs.line
551
+ }
552
+ | mlhs_head tSTAR mlhs_node
553
+ {
554
+ head, _, tail = val
555
+ head << s(:splat, tail).line(tail.line)
556
+ result = s(:masgn, head).line head.line
557
+ }
558
+ | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
559
+ {
560
+ ary1, _, splat, _, ary2 = val
561
+
562
+ result = list_append ary1, s(:splat, splat).line(splat.line)
563
+ result.concat ary2.sexp_body
564
+ result = s(:masgn, result).line result.line
565
+ }
566
+ | mlhs_head tSTAR
567
+ {
568
+ head, _ = val
569
+ l = head.line
570
+ result = s(:masgn, head << s(:splat).line(l)).line l
571
+ }
572
+ | mlhs_head tSTAR tCOMMA mlhs_post
573
+ {
574
+ head, _, _, post = val
575
+ ary = list_append head, s(:splat).line(head.line)
576
+ ary.concat post.sexp_body
577
+ result = s(:masgn, ary).line ary.line
578
+ }
579
+ | tSTAR mlhs_node
580
+ {
581
+ _, node = val
582
+ l = node.line
583
+ splat = s(:splat, node).line l
584
+ ary = s(:array, splat).line l
585
+ result = s(:masgn, ary).line l
586
+ }
587
+ | tSTAR mlhs_node tCOMMA mlhs_post
588
+ {
589
+ _, node, _, post = val
590
+
591
+ splat = s(:splat, node).line node.line
592
+ ary = s(:array, splat).line splat.line
593
+ ary.concat post.sexp_body
594
+ result = s(:masgn, ary).line ary.line
595
+ }
596
+ | tSTAR
597
+ {
598
+ l = lexer.lineno
599
+ result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
600
+ }
601
+ | tSTAR tCOMMA mlhs_post
602
+ {
603
+ _, _, post = val
604
+ l = post.line
605
+
606
+ splat = s(:splat).line l
607
+ ary = s(:array, splat, *post.sexp_body).line l
608
+ result = s(:masgn, ary).line l
609
+ }
610
+
611
+ mlhs_item: mlhs_node
612
+ | tLPAREN mlhs_inner rparen
613
+ {
614
+ result = val[1]
615
+ }
616
+
617
+ mlhs_head: mlhs_item tCOMMA
618
+ {
619
+ lhs, _ = val
620
+ result = s(:array, lhs).line lhs.line
621
+ }
622
+ | mlhs_head mlhs_item tCOMMA
623
+ {
624
+ result = val[0] << val[1].compact
625
+ }
626
+
627
+ mlhs_post: mlhs_item
628
+ {
629
+ item, = val
630
+ result = s(:array, item).line item.line
631
+ }
632
+ | mlhs_post tCOMMA mlhs_item
633
+ {
634
+ result = list_append val[0], val[2]
635
+ }
636
+
637
+ mlhs_node: user_variable
638
+ {
639
+ result = self.assignable val[0]
640
+ }
641
+ | keyword_variable
642
+ {
643
+ result = self.assignable val[0]
644
+ }
645
+ | primary_value tLBRACK2 opt_call_args rbracket
646
+ {
647
+ result = self.aryset val[0], val[2]
648
+ }
649
+ | primary_value call_op tIDENTIFIER
650
+ {
651
+ lhs, call_op, (id, _line) = val
652
+
653
+ result = new_attrasgn lhs, id, call_op
654
+ }
655
+ | primary_value tCOLON2 tIDENTIFIER
656
+ {
657
+ recv, _, (id, _line) = val
658
+ result = new_attrasgn recv, id
659
+ }
660
+ | primary_value call_op tCONSTANT
661
+ {
662
+ lhs, call_op, (id, _line) = val
663
+
664
+ result = new_attrasgn lhs, id, call_op
665
+ }
666
+ | primary_value tCOLON2 tCONSTANT
667
+ {
668
+ if (self.in_def || self.in_single > 0) then
669
+ debug 14
670
+ yyerror "dynamic constant assignment"
671
+ end
672
+
673
+ expr, _, (id, _line) = val
674
+ l = expr.line
675
+
676
+ result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
677
+ }
678
+ | tCOLON3 tCONSTANT
679
+ {
680
+ if (self.in_def || self.in_single > 0) then
681
+ debug 15
682
+ yyerror "dynamic constant assignment"
683
+ end
684
+
685
+ _, (id, l) = val
686
+
687
+ result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
688
+ }
689
+ | backref
690
+ {
691
+ ref, = val
692
+
693
+ self.backref_assign_error ref
694
+ }
695
+
696
+ lhs: user_variable
697
+ {
698
+ var, = val
699
+
700
+ result = self.assignable var
701
+ }
702
+ | keyword_variable
703
+ {
704
+ var, = val
705
+
706
+ result = self.assignable var
707
+
708
+ debug 16
709
+ }
710
+ | primary_value tLBRACK2 opt_call_args rbracket
711
+ {
712
+ lhs, _, args, _ = val
713
+
714
+ result = self.aryset lhs, args
715
+ }
716
+ | primary_value call_op tIDENTIFIER # REFACTOR
717
+ {
718
+ lhs, op, (id, _line) = val
719
+
720
+ result = new_attrasgn lhs, id, op
721
+ }
722
+ | primary_value tCOLON2 tIDENTIFIER
723
+ {
724
+ lhs, _, (id, _line) = val
725
+
726
+ result = new_attrasgn lhs, id
727
+ }
728
+ | primary_value call_op tCONSTANT # REFACTOR?
729
+ {
730
+ lhs, call_op, (id, _line) = val
731
+
732
+ result = new_attrasgn lhs, id, call_op
733
+ }
734
+ | primary_value tCOLON2 tCONSTANT
735
+ {
736
+ expr, _, (id, _line) = val
737
+
738
+ if (self.in_def || self.in_single > 0) then
739
+ debug 17
740
+ yyerror "dynamic constant assignment"
741
+ end
742
+
743
+ l = expr.line
744
+ result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
745
+ }
746
+ | tCOLON3 tCONSTANT
747
+ {
748
+ _, (id, l) = val
749
+
750
+ if (self.in_def || self.in_single > 0) then
751
+ debug 18
752
+ yyerror "dynamic constant assignment"
753
+ end
754
+
755
+ result = s(:const, s(:colon3, id.to_sym).line(l)).line l
756
+ }
757
+ | backref
758
+ {
759
+ self.backref_assign_error val[0]
760
+ }
761
+
762
+ cname: tIDENTIFIER
763
+ {
764
+ yyerror "class/module name must be CONSTANT"
765
+ }
766
+ | tCONSTANT
767
+
768
+ cpath: tCOLON3 cname
769
+ {
770
+ result = wrap :colon3, val[1]
771
+ }
772
+ | cname
773
+ {
774
+ (id, line), = val
775
+ result = [id.to_sym, line] # TODO: sexp?
776
+ }
777
+ | primary_value tCOLON2 cname
778
+ {
779
+ pval, _, (name, _line) = val
780
+
781
+ result = s(:colon2, pval, name.to_sym)
782
+ result.line pval.line
783
+ }
784
+
785
+ fname: tIDENTIFIER | tCONSTANT | tFID
786
+ | op
787
+ {
788
+ lexer.lex_state = EXPR_END
789
+ }
790
+
791
+ | reswords
792
+
793
+ fitem: fname
794
+ {
795
+ result = wrap :lit, val[0]
796
+ }
797
+ | symbol
798
+
799
+ undef_list: fitem
800
+ {
801
+ result = new_undef val[0]
802
+ }
803
+ |
804
+ undef_list tCOMMA
805
+ {
806
+ lexer.lex_state = EXPR_FNAME
807
+ }
808
+ fitem
809
+ {
810
+ result = new_undef val[0], val[3]
811
+ }
812
+
813
+ op: tPIPE | tCARET | tAMPER2 | tCMP | tEQ | tEQQ
814
+ | tMATCH | tNMATCH | tGT | tGEQ | tLT | tLEQ
815
+ | tNEQ | tLSHFT | tRSHFT | tPLUS | tMINUS | tSTAR2
816
+ | tSTAR | tDIVIDE | tPERCENT | tPOW | tDSTAR | tBANG | tTILDE
817
+ | tUPLUS | tUMINUS | tAREF | tASET | tBACK_REF2
818
+
819
+ reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
820
+ | kALIAS | kAND | kBEGIN | kBREAK | kCASE
821
+ | kCLASS | kDEF | kDEFINED | kDO | kELSE
822
+ | kELSIF | kEND | kENSURE | kFALSE | kFOR
823
+ | kIN | kMODULE | kNEXT | kNIL | kNOT
824
+ | kOR | kREDO | kRESCUE | kRETRY | kRETURN
825
+ | kSELF | kSUPER | kTHEN | kTRUE | kUNDEF
826
+ | kWHEN | kYIELD | kIF | kUNLESS | kWHILE
827
+ | kUNTIL
828
+
829
+ arg: lhs tEQL arg_rhs
830
+ {
831
+ result = new_assign val[0], val[2]
832
+ }
833
+ | var_lhs tOP_ASGN arg_rhs
834
+ {
835
+ result = new_op_asgn val
836
+ }
837
+ | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
838
+ {
839
+ result = new_op_asgn1 val
840
+ }
841
+ | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
842
+ {
843
+ result = new_op_asgn2 val
844
+ }
845
+ | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
846
+ {
847
+ result = new_op_asgn2 val
848
+ }
849
+ | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
850
+ {
851
+ lhs, _, (id, _line), (op, _), rhs = val
852
+
853
+ result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
854
+ }
855
+ | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
856
+ {
857
+ lhs1, _, (lhs2, _line), op, rhs = val
858
+
859
+ lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
860
+ result = new_const_op_asgn [lhs, op, rhs]
861
+ }
862
+ | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
863
+ {
864
+ _, lhs, op, rhs = val
865
+
866
+ lhs = wrap :colon3, lhs
867
+ result = new_const_op_asgn [lhs, op, rhs]
868
+ }
869
+ | backref tOP_ASGN arg_rhs
870
+ {
871
+ # TODO: lhs = var_field val[0]
872
+ asgn = new_op_asgn val
873
+ result = self.backref_assign_error asgn
874
+ }
875
+ | arg tDOT2 arg
876
+ {
877
+ v1, v2 = val[0], val[2]
878
+ if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
879
+ result = s(:lit, (v1.last)..(v2.last)).line v1.line
880
+ else
881
+ result = s(:dot2, v1, v2).line v1.line
882
+ end
883
+ }
884
+ | arg tDOT3 arg
885
+ {
886
+ v1, v2 = val[0], val[2]
887
+ if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
888
+ result = s(:lit, (v1.last)...(v2.last)).line v1.line
889
+ else
890
+ result = s(:dot3, v1, v2).line v1.line
891
+ end
892
+ }
893
+ #if V >= 26
894
+ | arg tDOT2
895
+ {
896
+ v1, _ = val
897
+ v2 = nil
898
+
899
+ result = s(:dot2, v1, v2).line v1.line
900
+ }
901
+ | arg tDOT3
902
+ {
903
+ v1, _ = val
904
+ v2 = nil
905
+
906
+ result = s(:dot3, v1, v2).line v1.line
907
+ }
908
+ #endif
909
+
910
+ #if V >= 27
911
+ | tBDOT2 arg
912
+ {
913
+ _, v2, = val
914
+ v1 = nil
915
+
916
+ result = s(:dot2, v1, v2).line v2.line
917
+ }
918
+ | tBDOT3 arg
919
+ {
920
+ _, v2 = val
921
+ v1 = nil
922
+
923
+ result = s(:dot3, v1, v2).line v2.line
924
+ }
925
+ #endif
926
+
927
+ | arg tPLUS arg
928
+ {
929
+ result = new_call val[0], :+, argl(val[2])
930
+ }
931
+ | arg tMINUS arg
932
+ {
933
+ result = new_call val[0], :-, argl(val[2])
934
+ }
935
+ | arg tSTAR2 arg # TODO: rename
936
+ {
937
+ result = new_call val[0], :*, argl(val[2])
938
+ }
939
+ | arg tDIVIDE arg
940
+ {
941
+ result = new_call val[0], :"/", argl(val[2])
942
+ }
943
+ | arg tPERCENT arg
944
+ {
945
+ result = new_call val[0], :"%", argl(val[2])
946
+ }
947
+ | arg tPOW arg
948
+ {
949
+ result = new_call val[0], :**, argl(val[2])
950
+ }
951
+ #if V == 20
952
+ | tUMINUS_NUM tINTEGER tPOW arg
953
+ {
954
+ _, (num, line), _, arg = val
955
+ lit = s(:lit, num).line line
956
+ result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
957
+ }
958
+ | tUMINUS_NUM tFLOAT tPOW arg
959
+ #else
960
+ | tUMINUS_NUM simple_numeric tPOW arg
961
+ #endif
962
+ {
963
+ _, (num, line), _, arg = val
964
+ lit = s(:lit, num).line line
965
+ result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
966
+
967
+ #if V == 20
968
+ ## TODO: why is this 2.0 only?
969
+ debug 19
970
+ #endif
971
+ }
972
+ | tUPLUS arg
973
+ {
974
+ result = new_call val[1], :"+@"
975
+ }
976
+ | tUMINUS arg
977
+ {
978
+ result = new_call val[1], :"-@"
979
+ }
980
+ | arg tPIPE arg
981
+ {
982
+ result = new_call val[0], :"|", argl(val[2])
983
+ }
984
+ | arg tCARET arg
985
+ {
986
+ result = new_call val[0], :"^", argl(val[2])
987
+ }
988
+ | arg tAMPER2 arg
989
+ {
990
+ result = new_call val[0], :"&", argl(val[2])
991
+ }
992
+ | arg tCMP arg
993
+ {
994
+ result = new_call val[0], :"<=>", argl(val[2])
995
+ }
996
+ | rel_expr =tCMP
997
+ | arg tEQ arg
998
+ {
999
+ result = new_call val[0], :"==", argl(val[2])
1000
+ }
1001
+ | arg tEQQ arg
1002
+ {
1003
+ result = new_call val[0], :"===", argl(val[2])
1004
+ }
1005
+ | arg tNEQ arg
1006
+ {
1007
+ result = new_call val[0], :"!=", argl(val[2])
1008
+ }
1009
+ | arg tMATCH arg
1010
+ {
1011
+ lhs, _, rhs = val
1012
+ result = new_match lhs, rhs
1013
+ }
1014
+ | arg tNMATCH arg
1015
+ {
1016
+ lhs, _, rhs = val
1017
+ result = s(:not, new_match(lhs, rhs)).line lhs.line
1018
+ }
1019
+ | tBANG arg
1020
+ {
1021
+ _, arg = val
1022
+ result = new_call arg, :"!"
1023
+ result.line arg.line
1024
+ }
1025
+ | tTILDE arg
1026
+ {
1027
+ result = new_call value_expr(val[1]), :"~"
1028
+ }
1029
+ | arg tLSHFT arg
1030
+ {
1031
+ val[0] = value_expr val[0]
1032
+ val[2] = value_expr val[2]
1033
+ result = new_call val[0], :"\<\<", argl(val[2])
1034
+ }
1035
+ | arg tRSHFT arg
1036
+ {
1037
+ val[0] = value_expr val[0]
1038
+ val[2] = value_expr val[2]
1039
+ result = new_call val[0], :">>", argl(val[2])
1040
+ }
1041
+ | arg tANDOP arg
1042
+ {
1043
+ result = logical_op :and, val[0], val[2]
1044
+ }
1045
+ | arg tOROP arg
1046
+ {
1047
+ result = logical_op :or, val[0], val[2]
1048
+ }
1049
+ | kDEFINED opt_nl arg
1050
+ {
1051
+ (_, line), _, arg = val
1052
+ result = s(:defined, arg).line line
1053
+ }
1054
+ | arg tEH arg opt_nl tCOLON arg
1055
+ {
1056
+ c, _, t, _, _, f = val
1057
+ result = s(:if, c, t, f).line c.line
1058
+ }
1059
+ | primary
1060
+
1061
+ relop: tGT
1062
+ | tLT
1063
+ | tGEQ
1064
+ | tLEQ
1065
+
1066
+ rel_expr: arg relop arg =tGT
1067
+ {
1068
+ lhs, (op, _), rhs = val
1069
+ result = new_call lhs, op.to_sym, argl(rhs)
1070
+ }
1071
+ | rel_expr relop arg =tGT
1072
+ {
1073
+ lhs, (op, _), rhs = val
1074
+ warn "comparison '%s' after comparison", op
1075
+ result = new_call lhs, op.to_sym, argl(rhs)
1076
+ }
1077
+
1078
+ arg_value: arg
1079
+ {
1080
+ result = value_expr(val[0])
1081
+ }
1082
+
1083
+ aref_args: none
1084
+ | args trailer
1085
+ {
1086
+ result = args [val[0]]
1087
+ }
1088
+ | args tCOMMA assocs trailer
1089
+ {
1090
+ result = args [val[0], array_to_hash(val[2])]
1091
+ }
1092
+ | assocs trailer
1093
+ {
1094
+ result = args [array_to_hash(val[0])]
1095
+ }
1096
+
1097
+ arg_rhs: arg =tOP_ASGN
1098
+ | arg kRESCUE_MOD arg
1099
+ {
1100
+ body, (_, line), resbody = val
1101
+ body = value_expr body
1102
+ resbody = remove_begin resbody
1103
+
1104
+ ary = s(:array).line line
1105
+ result = new_rescue(body, new_resbody(ary, resbody))
1106
+ }
1107
+
1108
+ paren_args: tLPAREN2 opt_call_args rparen
1109
+ {
1110
+ _, args, _ = val
1111
+ result = args
1112
+ }
1113
+ #if V >= 27
1114
+ | tLPAREN2 args tCOMMA args_forward rparen
1115
+ {
1116
+ yyerror "Unexpected ..." unless
1117
+ self.lexer.is_local_id(:"*") &&
1118
+ self.lexer.is_local_id(:"**") &&
1119
+ self.lexer.is_local_id(:"&")
1120
+
1121
+ result = call_args val
1122
+ }
1123
+ | tLPAREN2 args_forward rparen
1124
+ {
1125
+ yyerror "Unexpected ..." unless
1126
+ self.lexer.is_local_id(:"*") &&
1127
+ self.lexer.is_local_id(:"**") &&
1128
+ self.lexer.is_local_id(:"&")
1129
+
1130
+ result = call_args val
1131
+ }
1132
+ #endif
1133
+
1134
+ opt_paren_args: none
1135
+ | paren_args
1136
+
1137
+ opt_call_args: none
1138
+ | call_args
1139
+ | args tCOMMA
1140
+ {
1141
+ result = args val
1142
+ }
1143
+ | args tCOMMA assocs tCOMMA
1144
+ {
1145
+ result = args [val[0], array_to_hash(val[2])]
1146
+ }
1147
+ | assocs tCOMMA
1148
+ {
1149
+ result = args [array_to_hash(val[0])]
1150
+ }
1151
+
1152
+ call_args: command
1153
+ {
1154
+ warning "parenthesize argument(s) for future version"
1155
+ result = call_args val
1156
+ }
1157
+ | args opt_block_arg
1158
+ {
1159
+ result = call_args val
1160
+ }
1161
+ | assocs opt_block_arg
1162
+ {
1163
+ result = call_args [array_to_hash(val[0]), val[1]]
1164
+ }
1165
+ | args tCOMMA assocs opt_block_arg
1166
+ {
1167
+ result = call_args [val[0], array_to_hash(val[2]), val[3]]
1168
+ }
1169
+ | block_arg
1170
+ {
1171
+ result = call_args val
1172
+ }
1173
+
1174
+ command_args: {
1175
+ # parse26.y line 2200
1176
+
1177
+ # If call_args starts with a open paren '(' or
1178
+ # '[', look-ahead reading of the letters calls
1179
+ # CMDARG_PUSH(0), but the push must be done
1180
+ # after CMDARG_PUSH(1). So this code makes them
1181
+ # consistent by first cancelling the premature
1182
+ # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
1183
+ # finally redoing CMDARG_PUSH(0).
1184
+
1185
+ result = yychar = self.last_token_type.first
1186
+ lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
1187
+ lexer.cmdarg.pop if lookahead
1188
+ lexer.cmdarg.push true
1189
+ lexer.cmdarg.push false if lookahead
1190
+ }
1191
+ call_args
1192
+ {
1193
+ yychar, args = val
1194
+
1195
+ # call_args can be followed by tLBRACE_ARG (that
1196
+ # does CMDARG_PUSH(0) in the lexer) but the push
1197
+ # must be done after CMDARG_POP() in the parser.
1198
+ # So this code does CMDARG_POP() to pop 0 pushed
1199
+ # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
1200
+ # by command_args, and CMDARG_PUSH(0) to restore
1201
+ # back the flag set by tLBRACE_ARG.
1202
+
1203
+ lookahead = [:tLBRACE_ARG].include?(yychar)
1204
+ lexer.cmdarg.pop if lookahead
1205
+ lexer.cmdarg.pop
1206
+ lexer.cmdarg.push false if lookahead
1207
+ result = args
1208
+ }
1209
+
1210
+ block_arg: tAMPER arg_value
1211
+ {
1212
+ _, arg = val
1213
+ result = s(:block_pass, arg).line arg.line
1214
+ }
1215
+
1216
+ opt_block_arg: tCOMMA block_arg
1217
+ {
1218
+ result = val[1]
1219
+ }
1220
+ | none
1221
+
1222
+ args: arg_value
1223
+ {
1224
+ arg, = val
1225
+ lineno = arg.line || lexer.lineno # HACK
1226
+
1227
+ result = s(:array, arg).line lineno
1228
+ }
1229
+ | tSTAR arg_value
1230
+ {
1231
+ _, arg = val
1232
+ result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
1233
+ }
1234
+ | args tCOMMA arg_value
1235
+ {
1236
+ args, _, id = val
1237
+ result = self.list_append args, id
1238
+ }
1239
+ | args tCOMMA tSTAR arg_value
1240
+ {
1241
+ # TODO: the line number from tSTAR has been dropped
1242
+ args, _, _, id = val
1243
+ line = lexer.lineno
1244
+ result = self.list_append args, s(:splat, id).line(line)
1245
+ }
1246
+
1247
+ #if V >= 21
1248
+ mrhs_arg: mrhs
1249
+ {
1250
+ result = new_masgn_arg val[0]
1251
+ }
1252
+ | arg_value
1253
+ {
1254
+ result = new_masgn_arg val[0], :wrap
1255
+ }
1256
+
1257
+ #endif
1258
+ mrhs: args tCOMMA arg_value
1259
+ {
1260
+ result = val[0] << val[2]
1261
+ }
1262
+ | args tCOMMA tSTAR arg_value
1263
+ {
1264
+ # TODO: make all tXXXX terminals include lexer.lineno
1265
+ arg, _, _, splat = val
1266
+ result = self.arg_concat arg, splat
1267
+ }
1268
+ | tSTAR arg_value
1269
+ {
1270
+ _, arg = val
1271
+ result = s(:splat, arg).line arg.line
1272
+ }
1273
+
1274
+ primary: literal
1275
+ | strings
1276
+ | xstring
1277
+ | regexp
1278
+ | words
1279
+ | qwords
1280
+ | symbols
1281
+ | qsymbols
1282
+ | var_ref
1283
+ | backref
1284
+ | tFID
1285
+ {
1286
+ (msg, line), = val
1287
+ result = new_call nil, msg.to_sym
1288
+ result.line line
1289
+ }
1290
+ | k_begin
1291
+ {
1292
+ lexer.cmdarg.push false
1293
+ result = self.lexer.lineno
1294
+ }
1295
+ bodystmt k_end
1296
+ {
1297
+ lexer.cmdarg.pop
1298
+ result = new_begin val
1299
+ }
1300
+ | tLPAREN_ARG
1301
+ {
1302
+ lexer.lex_state = EXPR_ENDARG
1303
+ result = lexer.lineno
1304
+ }
1305
+ rparen
1306
+ {
1307
+ _, line, _ = val
1308
+ result = s(:begin).line line
1309
+ }
1310
+ | tLPAREN_ARG
1311
+ stmt
1312
+ {
1313
+ lexer.lex_state = EXPR_ENDARG
1314
+ }
1315
+ rparen
1316
+ {
1317
+ _, stmt, _, _, = val
1318
+ # warning "(...) interpreted as grouped expression"
1319
+ result = stmt
1320
+ }
1321
+ | tLPAREN compstmt tRPAREN
1322
+ {
1323
+ _, stmt, _ = val
1324
+ result = stmt
1325
+ result ||= s(:nil).line lexer.lineno
1326
+ result.paren = true
1327
+ }
1328
+ | primary_value tCOLON2 tCONSTANT
1329
+ {
1330
+ expr, _, (id, _line) = val
1331
+
1332
+ result = s(:colon2, expr, id.to_sym).line expr.line
1333
+ }
1334
+ | tCOLON3 tCONSTANT
1335
+ {
1336
+ result = wrap :colon3, val[1]
1337
+ }
1338
+ | tLBRACK { result = lexer.lineno } aref_args tRBRACK
1339
+ {
1340
+ _, line, args, _ = val
1341
+ result = args || s(:array)
1342
+ result.sexp_type = :array # aref_args is :args
1343
+ result.line line
1344
+ }
1345
+ | tLBRACE
1346
+ {
1347
+ result = self.lexer.lineno
1348
+ }
1349
+ assoc_list tRCURLY
1350
+ {
1351
+ result = new_hash val
1352
+ }
1353
+ | k_return
1354
+ {
1355
+ (_, line), = val
1356
+ result = s(:return).line line
1357
+ }
1358
+ | kYIELD tLPAREN2 call_args rparen
1359
+ {
1360
+ (_, line), _, args, _ = val
1361
+
1362
+ result = new_yield(args).line line
1363
+ }
1364
+ | kYIELD tLPAREN2 rparen
1365
+ {
1366
+ (_, line), _, _ = val
1367
+
1368
+ result = new_yield.line line
1369
+ }
1370
+ | kYIELD
1371
+ {
1372
+ (_, line), = val
1373
+
1374
+ result = new_yield.line line
1375
+ }
1376
+ | kDEFINED opt_nl tLPAREN2 expr rparen
1377
+ {
1378
+ (_, line), _, _, arg, _ = val
1379
+
1380
+ result = s(:defined, arg).line line
1381
+ }
1382
+ | kNOT tLPAREN2 expr rparen
1383
+ {
1384
+ _, _, lhs, _ = val
1385
+ result = new_call lhs, :"!"
1386
+ }
1387
+ | kNOT tLPAREN2 rparen
1388
+ {
1389
+ debug 20
1390
+ }
1391
+ | fcall brace_block
1392
+ {
1393
+ call, iter = val
1394
+
1395
+ iter.insert 1, call
1396
+ result = iter
1397
+ # FIX: probably not: call.line = iter.line
1398
+ }
1399
+ | method_call
1400
+ | method_call brace_block
1401
+ {
1402
+ call, iter = val[0], val[1]
1403
+ block_dup_check call, iter
1404
+ iter.insert 1, call # FIX
1405
+ result = iter
1406
+ }
1407
+ | lambda
1408
+ {
1409
+ expr, = val
1410
+ result = expr
1411
+ }
1412
+ | k_if expr_value then compstmt if_tail k_end
1413
+ {
1414
+ _, c, _, t, f, _ = val
1415
+ result = new_if c, t, f
1416
+ }
1417
+ | k_unless expr_value then compstmt opt_else k_end
1418
+ {
1419
+ _, c, _, t, f, _ = val
1420
+ result = new_if c, f, t
1421
+ }
1422
+ | k_while expr_value_do compstmt k_end
1423
+ {
1424
+ _, cond, body, _ = val
1425
+ result = new_while body, cond, true
1426
+ }
1427
+ | k_until expr_value_do compstmt k_end
1428
+ {
1429
+ _, cond, body, _ = val
1430
+ result = new_until body, cond, true
1431
+ }
1432
+ | k_case expr_value opt_terms case_body k_end
1433
+ {
1434
+ (_, line), expr, _, body, _ = val
1435
+ result = new_case expr, body, line
1436
+ }
1437
+ | k_case opt_terms case_body k_end
1438
+ {
1439
+ (_, line), _, body, _ = val
1440
+ result = new_case nil, body, line
1441
+ }
1442
+ #if V >= 27
1443
+ | k_case expr_value opt_terms p_case_body k_end
1444
+ {
1445
+ (_, line), expr, _, body, _ = val
1446
+
1447
+ result = new_case expr, body, line
1448
+ }
1449
+ #endif
1450
+ | k_for for_var kIN expr_value_do compstmt k_end
1451
+ {
1452
+ _, var, _, iter, body, _ = val
1453
+ result = new_for iter, var, body
1454
+ }
1455
+ | k_class
1456
+ {
1457
+ result = self.lexer.lineno
1458
+ }
1459
+ cpath superclass
1460
+ {
1461
+ if (self.in_def || self.in_single > 0) then
1462
+ yyerror "class definition in method body"
1463
+ end
1464
+ self.env.extend
1465
+ }
1466
+ bodystmt k_end
1467
+ {
1468
+ result = new_class val
1469
+ self.env.unextend
1470
+ self.lexer.ignore_body_comments
1471
+ }
1472
+ | k_class tLSHFT
1473
+ {
1474
+ result = self.lexer.lineno
1475
+ }
1476
+ expr
1477
+ {
1478
+ result = self.in_def
1479
+ self.in_def = false
1480
+ }
1481
+ term
1482
+ {
1483
+ result = self.in_single
1484
+ self.in_single = 0
1485
+ self.env.extend
1486
+ }
1487
+ bodystmt k_end
1488
+ {
1489
+ result = new_sclass val
1490
+ self.env.unextend
1491
+ self.lexer.ignore_body_comments
1492
+ }
1493
+ | k_module
1494
+ {
1495
+ result = self.lexer.lineno
1496
+ }
1497
+ cpath
1498
+ {
1499
+ yyerror "module definition in method body" if
1500
+ self.in_def or self.in_single > 0
1501
+
1502
+ self.env.extend
1503
+ }
1504
+ bodystmt k_end
1505
+ {
1506
+ result = new_module val
1507
+ self.env.unextend
1508
+ self.lexer.ignore_body_comments
1509
+ }
1510
+ | k_def fname
1511
+ {
1512
+ result = self.in_def
1513
+
1514
+ self.in_def = true # group = local_push
1515
+ self.env.extend
1516
+ lexer.cmdarg.push false
1517
+ lexer.cond.push false
1518
+ }
1519
+ f_arglist bodystmt k_end
1520
+ {
1521
+ result, in_def = new_defn val
1522
+
1523
+ lexer.cond.pop # group = local_pop
1524
+ lexer.cmdarg.pop
1525
+ self.env.unextend
1526
+ self.in_def = in_def
1527
+
1528
+ self.lexer.ignore_body_comments
1529
+ }
1530
+ | k_def singleton dot_or_colon
1531
+ {
1532
+ lexer.lex_state = EXPR_FNAME
1533
+ }
1534
+ fname
1535
+ {
1536
+ result = self.in_def
1537
+
1538
+ self.in_single += 1 # TODO: remove?
1539
+
1540
+ self.in_def = true # local_push
1541
+ self.env.extend
1542
+ lexer.cmdarg.push false
1543
+ lexer.cond.push false
1544
+
1545
+ lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
1546
+ }
1547
+ f_arglist bodystmt k_end
1548
+ {
1549
+
1550
+ # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
1551
+ # =>
1552
+ # [kdef, recv, (name, line), in_def, args, body, kend]
1553
+
1554
+ val.delete_at 3
1555
+ val.delete_at 2
1556
+
1557
+ result, in_def = new_defs val
1558
+
1559
+ lexer.cond.pop # group = local_pop
1560
+ lexer.cmdarg.pop
1561
+ self.env.unextend
1562
+ self.in_def = in_def
1563
+
1564
+ self.in_single -= 1
1565
+
1566
+ # TODO: restore cur_arg ? what's cur_arg?
1567
+
1568
+ self.lexer.ignore_body_comments
1569
+ }
1570
+ | kBREAK
1571
+ {
1572
+ (_, line), = val
1573
+ result = s(:break).line line
1574
+ }
1575
+ | kNEXT
1576
+ {
1577
+ (_, line), = val
1578
+ result = s(:next).line line
1579
+ }
1580
+ | kREDO
1581
+ {
1582
+ (_, line), = val
1583
+ result = s(:redo).line line
1584
+ }
1585
+ | kRETRY
1586
+ {
1587
+ (_, line), = val
1588
+ result = s(:retry).line line
1589
+ }
1590
+
1591
+ primary_value: primary
1592
+ {
1593
+ result = value_expr(val[0])
1594
+ }
1595
+
1596
+ # These are really stupid
1597
+ k_begin: kBEGIN
1598
+ k_if: kIF
1599
+ k_unless: kUNLESS
1600
+ k_while: kWHILE
1601
+ k_until: kUNTIL
1602
+ k_case: kCASE
1603
+ k_for: kFOR
1604
+ k_class: kCLASS
1605
+ {
1606
+ self.comments.push self.lexer.comments
1607
+ }
1608
+ k_module: kMODULE
1609
+ {
1610
+ self.comments.push self.lexer.comments
1611
+ }
1612
+ k_def: kDEF
1613
+ {
1614
+ self.comments.push self.lexer.comments
1615
+ }
1616
+ k_do: kDO
1617
+ k_do_block: kDO_BLOCK
1618
+ k_rescue: kRESCUE
1619
+ k_ensure: kENSURE
1620
+ k_when: kWHEN
1621
+ k_else: kELSE
1622
+ k_elsif: kELSIF
1623
+ k_end: kEND
1624
+ k_return: kRETURN
1625
+
1626
+ then: term
1627
+ | kTHEN
1628
+ | term kTHEN
1629
+
1630
+ do: term
1631
+ | kDO_COND
1632
+
1633
+ if_tail: opt_else
1634
+ | k_elsif expr_value then compstmt if_tail
1635
+ {
1636
+ (_, line), c, _, t, rest = val
1637
+
1638
+ result = s(:if, c, t, rest).line line
1639
+ }
1640
+
1641
+ opt_else: none
1642
+ | kELSE compstmt
1643
+ {
1644
+ result = val[1]
1645
+ }
1646
+
1647
+ for_var: lhs
1648
+ | mlhs
1649
+ {
1650
+ val[0].delete_at 1 if val[0][1].nil? # HACK
1651
+ }
1652
+
1653
+ f_marg: f_norm_arg
1654
+ | tLPAREN f_margs rparen
1655
+ {
1656
+ result = val[1]
1657
+ }
1658
+
1659
+ f_marg_list: f_marg
1660
+ {
1661
+ sym, = val
1662
+
1663
+ result = s(:array, sym).line lexer.lineno
1664
+ }
1665
+ | f_marg_list tCOMMA f_marg
1666
+ {
1667
+ result = list_append val[0], val[2]
1668
+ }
1669
+
1670
+ f_margs: f_marg_list
1671
+ {
1672
+ args, = val
1673
+
1674
+ result = block_var args
1675
+ }
1676
+ | f_marg_list tCOMMA f_rest_marg
1677
+ {
1678
+ args, _, rest = val
1679
+
1680
+ result = block_var args, rest
1681
+ }
1682
+ | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
1683
+ {
1684
+ lhs, _, splat, _, rhs = val
1685
+
1686
+ result = block_var lhs, splat, rhs
1687
+ }
1688
+ | f_rest_marg
1689
+ {
1690
+ rest, = val
1691
+
1692
+ result = block_var rest
1693
+ }
1694
+ | f_rest_marg tCOMMA f_marg_list
1695
+ {
1696
+ splat, _, rest = val
1697
+
1698
+ result = block_var splat, rest
1699
+ }
1700
+
1701
+ f_rest_marg: tSTAR f_norm_arg
1702
+ {
1703
+ _, (id, line) = val
1704
+
1705
+ result = args ["*#{id}".to_sym]
1706
+ result.line line
1707
+ }
1708
+ | tSTAR
1709
+ {
1710
+ result = args [:*]
1711
+ result.line lexer.lineno # FIX: tSTAR -> line
1712
+ }
1713
+
1714
+ block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
1715
+ {
1716
+ result = call_args val
1717
+ }
1718
+ | f_block_kwarg opt_f_block_arg
1719
+ {
1720
+ result = call_args val
1721
+ }
1722
+ | f_kwrest opt_f_block_arg
1723
+ {
1724
+ result = call_args val
1725
+ }
1726
+ #if V >= 27
1727
+ | f_no_kwarg opt_f_block_arg
1728
+ {
1729
+ result = args val
1730
+ }
1731
+ #endif
1732
+ | f_block_arg
1733
+ {
1734
+ (id, line), = val
1735
+ result = call_args [id]
1736
+ result.line line
1737
+ }
1738
+
1739
+ opt_block_args_tail: tCOMMA block_args_tail
1740
+ {
1741
+ result = args val
1742
+ }
1743
+ | none
1744
+
1745
+ block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
1746
+ {
1747
+ result = args val
1748
+ }
1749
+ | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
1750
+ {
1751
+ result = args val
1752
+ }
1753
+ | f_arg tCOMMA f_block_optarg opt_block_args_tail
1754
+ {
1755
+ result = args val
1756
+ }
1757
+ | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
1758
+ {
1759
+ result = args val
1760
+ }
1761
+ | f_arg tCOMMA f_rest_arg opt_block_args_tail
1762
+ {
1763
+ result = args val
1764
+ }
1765
+ | f_arg tCOMMA
1766
+ {
1767
+ result = args(val) << nil
1768
+ }
1769
+ | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
1770
+ {
1771
+ result = args val
1772
+ }
1773
+ | f_arg opt_block_args_tail
1774
+ {
1775
+ result = args val
1776
+ }
1777
+ | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
1778
+ {
1779
+ result = args val
1780
+ }
1781
+ | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
1782
+ {
1783
+ result = args val
1784
+ }
1785
+ | f_block_optarg opt_block_args_tail
1786
+ {
1787
+ result = args val
1788
+ }
1789
+ | f_block_optarg tCOMMA f_arg opt_block_args_tail
1790
+ {
1791
+ result = args val
1792
+ }
1793
+ | f_rest_arg opt_block_args_tail
1794
+ {
1795
+ result = args val
1796
+ }
1797
+ | f_rest_arg tCOMMA f_arg opt_block_args_tail
1798
+ {
1799
+ result = args val
1800
+ }
1801
+ | block_args_tail
1802
+ {
1803
+ result = args val
1804
+ }
1805
+
1806
+ opt_block_param: none { result = 0 }
1807
+ | block_param_def
1808
+ {
1809
+ self.lexer.command_start = true
1810
+ }
1811
+
1812
+ block_param_def: tPIPE opt_bv_decl tPIPE
1813
+ {
1814
+ # TODO: current_arg = 0
1815
+ result = args val
1816
+ }
1817
+ | tOROP
1818
+ {
1819
+ result = s(:args).line lexer.lineno
1820
+ }
1821
+ | tPIPE block_param opt_bv_decl tPIPE
1822
+ {
1823
+ # TODO: current_arg = 0
1824
+ result = args val
1825
+ }
1826
+
1827
+ opt_bv_decl: opt_nl
1828
+ | opt_nl tSEMI bv_decls opt_nl
1829
+ {
1830
+ result = args val
1831
+ }
1832
+
1833
+ bv_decls: bvar
1834
+ {
1835
+ result = args val
1836
+ }
1837
+ | bv_decls tCOMMA bvar
1838
+ {
1839
+ result = args val
1840
+ }
1841
+
1842
+ bvar: tIDENTIFIER
1843
+ {
1844
+ result = wrap :shadow, val[0]
1845
+ }
1846
+ | f_bad_arg
1847
+
1848
+ lambda: tLAMBDA
1849
+ {
1850
+ self.env.extend :dynamic
1851
+ result = [lexer.lineno, lexer.lpar_beg]
1852
+ lexer.paren_nest += 1
1853
+ lexer.lpar_beg = lexer.paren_nest
1854
+ }
1855
+ f_larglist
1856
+ {
1857
+ lexer.cmdarg.push false
1858
+ }
1859
+ lambda_body
1860
+ {
1861
+ _, (line, lpar), args, _cmdarg, body = val
1862
+ lexer.lpar_beg = lpar
1863
+
1864
+ lexer.cmdarg.pop
1865
+
1866
+ call = s(:lambda).line line
1867
+ result = new_iter call, args, body
1868
+ result.line line
1869
+ self.env.unextend # TODO: dynapush & dynapop
1870
+ }
1871
+
1872
+ f_larglist: tLPAREN2 f_args opt_bv_decl rparen
1873
+ {
1874
+ result = args val
1875
+ }
1876
+ | f_args
1877
+ {
1878
+ result = val[0]
1879
+ result = 0 if result == s(:args)
1880
+ }
1881
+
1882
+ lambda_body: tLAMBEG compstmt tRCURLY
1883
+ {
1884
+ result = val[1]
1885
+ }
1886
+ | kDO_LAMBDA bodystmt kEND
1887
+ {
1888
+ result = val[1]
1889
+ }
1890
+
1891
+ do_block: k_do_block do_body kEND
1892
+ {
1893
+ (_, line), iter, _ = val
1894
+ result = iter.line line
1895
+ }
1896
+
1897
+ block_call: command do_block
1898
+ {
1899
+ # TODO:
1900
+ ## if (nd_type($1) == NODE_YIELD) {
1901
+ ## compile_error(PARSER_ARG "block given to yield");
1902
+
1903
+ cmd, blk = val
1904
+
1905
+ syntax_error "Both block arg and actual block given." if
1906
+ cmd.block_pass?
1907
+
1908
+ if inverted? val then
1909
+ val = invert_block_call val
1910
+ cmd, blk = val
1911
+ end
1912
+
1913
+ result = blk
1914
+ result.insert 1, cmd
1915
+ }
1916
+ | block_call call_op2 operation2 opt_paren_args
1917
+ {
1918
+ lhs, _, (id, _line), args = val
1919
+
1920
+ result = new_call lhs, id.to_sym, args
1921
+ }
1922
+ | block_call call_op2 operation2 opt_paren_args brace_block
1923
+ {
1924
+ iter1, _, (name, _line), args, iter2 = val
1925
+
1926
+ call = new_call iter1, name.to_sym, args
1927
+ iter2.insert 1, call
1928
+
1929
+ result = iter2
1930
+ }
1931
+ | block_call call_op2 operation2 command_args do_block
1932
+ {
1933
+ iter1, _, (name, _line), args, iter2 = val
1934
+
1935
+ call = new_call iter1, name.to_sym, args
1936
+ iter2.insert 1, call
1937
+
1938
+ result = iter2
1939
+ }
1940
+
1941
+ method_call: fcall paren_args
1942
+ {
1943
+ call, args = val
1944
+
1945
+ result = call.concat args.sexp_body if args
1946
+ }
1947
+ | primary_value call_op operation2 opt_paren_args
1948
+ {
1949
+ recv, call_op, (op, _line), args = val
1950
+
1951
+ result = new_call recv, op.to_sym, args, call_op
1952
+ }
1953
+ | primary_value tCOLON2 operation2 paren_args
1954
+ {
1955
+ recv, _, (op, _line), args = val
1956
+
1957
+ result = new_call recv, op.to_sym, args
1958
+ }
1959
+ | primary_value tCOLON2 operation3
1960
+ {
1961
+ lhs, _, (id, _line) = val
1962
+
1963
+ result = new_call lhs, id.to_sym
1964
+ }
1965
+ | primary_value call_op paren_args
1966
+ {
1967
+ result = new_call val[0], :call, val[2], val[1]
1968
+ }
1969
+ | primary_value tCOLON2 paren_args
1970
+ {
1971
+ result = new_call val[0], :call, val[2]
1972
+ }
1973
+ | kSUPER paren_args
1974
+ {
1975
+ result = new_super val[1]
1976
+ }
1977
+ | kSUPER
1978
+ {
1979
+ result = s(:zsuper).line lexer.lineno
1980
+ }
1981
+ | primary_value tLBRACK2 opt_call_args rbracket
1982
+ {
1983
+ result = new_aref val
1984
+ }
1985
+
1986
+ brace_block: tLCURLY
1987
+ {
1988
+ self.env.extend :dynamic
1989
+ result = self.lexer.lineno
1990
+ }
1991
+ brace_body tRCURLY
1992
+ {
1993
+ _, line, body, _ = val
1994
+
1995
+ result = body
1996
+ result.line line
1997
+
1998
+ self.env.unextend
1999
+ }
2000
+ | k_do
2001
+ {
2002
+ self.env.extend :dynamic
2003
+ result = self.lexer.lineno
2004
+ }
2005
+ do_body kEND
2006
+ {
2007
+ _, line, body, _ = val
2008
+
2009
+ result = body
2010
+ result.line line
2011
+
2012
+ self.env.unextend
2013
+ }
2014
+
2015
+ brace_body: { self.env.extend :dynamic; result = self.lexer.lineno }
2016
+ { result = lexer.cmdarg.store(false) }
2017
+ opt_block_param compstmt
2018
+ {
2019
+ line, cmdarg, param, cmpstmt = val
2020
+
2021
+ result = new_brace_body param, cmpstmt, line
2022
+ self.env.unextend
2023
+ lexer.cmdarg.restore cmdarg
2024
+ lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
2025
+ }
2026
+
2027
+ do_body: { self.env.extend :dynamic; result = self.lexer.lineno }
2028
+ { lexer.cmdarg.push false }
2029
+ opt_block_param
2030
+ #if V >= 25
2031
+ bodystmt
2032
+ #else
2033
+ compstmt
2034
+ #endif
2035
+ {
2036
+ line, _cmdarg, param, cmpstmt = val
2037
+
2038
+ result = new_do_body param, cmpstmt, line
2039
+ lexer.cmdarg.pop
2040
+ self.env.unextend
2041
+ }
2042
+
2043
+ case_args: arg_value
2044
+ {
2045
+ arg, = val
2046
+
2047
+ result = s(:array, arg).line arg.line
2048
+ }
2049
+ | tSTAR arg_value
2050
+ {
2051
+ _, arg = val
2052
+
2053
+ result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
2054
+ }
2055
+ | case_args tCOMMA arg_value
2056
+ {
2057
+ args, _, id = val
2058
+
2059
+ result = self.list_append args, id
2060
+ }
2061
+ | case_args tCOMMA tSTAR arg_value
2062
+ {
2063
+ args, _, _, id = val
2064
+
2065
+ result = self.list_append args, s(:splat, id).line(id.line)
2066
+ }
2067
+
2068
+ case_body: k_when
2069
+ {
2070
+ result = self.lexer.lineno
2071
+ }
2072
+ case_args then compstmt cases
2073
+ {
2074
+ result = new_when(val[2], val[4])
2075
+ result.line val[1]
2076
+ result << val[5] if val[5]
2077
+ }
2078
+
2079
+ cases: opt_else | case_body
2080
+ #if V >= 27
2081
+ ######################################################################
2082
+
2083
+ p_case_body: kIN
2084
+ {
2085
+ self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
2086
+ self.lexer.command_start = false
2087
+ result = self.in_kwarg
2088
+ self.in_kwarg = true
2089
+ push_pvtbl
2090
+ push_pktbl
2091
+ }
2092
+ p_top_expr then
2093
+ {
2094
+ pop_pktbl
2095
+ pop_pvtbl
2096
+ old_kwargs = _values[-3]
2097
+ self.in_kwarg = old_kwargs
2098
+ }
2099
+ compstmt
2100
+ p_cases
2101
+ {
2102
+ (_, line), _, pat, _, _, body, cases = val
2103
+
2104
+ result = new_in pat, body, cases, line
2105
+ }
2106
+
2107
+ p_cases: opt_else
2108
+ | p_case_body
2109
+
2110
+ p_top_expr: p_top_expr_body
2111
+ | p_top_expr_body kIF_MOD expr_value
2112
+ {
2113
+ body, _, cond = val
2114
+ body = remove_begin body
2115
+
2116
+ result = s(:if, cond, body, nil).line body.line
2117
+ }
2118
+ | p_top_expr_body kUNLESS_MOD expr_value
2119
+ {
2120
+ body, _, cond = val
2121
+ body = remove_begin body
2122
+
2123
+ result = s(:if, cond, nil, body).line body.line
2124
+ }
2125
+
2126
+ p_top_expr_body: p_expr
2127
+ | p_expr tCOMMA
2128
+ {
2129
+ expr, _ = val
2130
+
2131
+ tail = new_array_pattern_tail nil, true, nil, nil
2132
+ result = new_array_pattern nil, expr, tail, expr.line
2133
+ }
2134
+ | p_expr tCOMMA p_args
2135
+ {
2136
+ expr, _, args = val
2137
+
2138
+ result = new_array_pattern nil, expr, args, expr.line
2139
+ }
2140
+ | p_args_tail
2141
+ {
2142
+ args, = val
2143
+ result = new_array_pattern nil, nil, args, args.line
2144
+ }
2145
+ | p_kwargs
2146
+ {
2147
+ kwargs, = val
2148
+ result = new_hash_pattern nil, kwargs, kwargs.line
2149
+ }
2150
+
2151
+ p_expr: p_as
2152
+
2153
+ p_as: p_expr tASSOC p_variable
2154
+ {
2155
+ # NODE *n = NEW_LIST($1, &@$);
2156
+ # n = list_append(p, n, $3);
2157
+ # $$ = new_hash(p, n, &@$);
2158
+
2159
+ expr, _, var = val
2160
+
2161
+ id = var.last
2162
+
2163
+ self.env[id] = :lvar # HACK: need to extend env
2164
+ lhs = s(:lasgn, id).line var.line
2165
+
2166
+ result = new_assign lhs, expr
2167
+ }
2168
+ | p_alt
2169
+
2170
+ p_alt: p_alt tPIPE p_expr_basic
2171
+ {
2172
+ lhs, _, rhs = val
2173
+
2174
+ result = s(:or, lhs, rhs).line lhs.line
2175
+ }
2176
+ | p_expr_basic
2177
+
2178
+ p_lparen: tLPAREN2 { push_pktbl }
2179
+ p_lbracket: tLBRACK2 { push_pktbl }
2180
+
2181
+ p_expr_basic: p_value
2182
+ | p_const p_lparen p_args tRPAREN
2183
+ {
2184
+ lhs, _, args, _ = val
2185
+
2186
+ pop_pktbl
2187
+ result = new_array_pattern(lhs, nil, args, lhs.line)
2188
+ }
2189
+ | p_const p_lparen p_kwargs tRPAREN
2190
+ {
2191
+ lhs, _, kwargs, _ = val
2192
+
2193
+ pop_pktbl
2194
+ result = new_hash_pattern(lhs, kwargs, lhs.line)
2195
+ }
2196
+ | p_const tLPAREN2 tRPAREN
2197
+ {
2198
+ const, _, _ = val
2199
+
2200
+ tail = new_array_pattern_tail nil, nil, nil, nil
2201
+ result = new_array_pattern const, nil, tail, const.line
2202
+ }
2203
+ | p_const p_lbracket p_args rbracket
2204
+ {
2205
+ const, _, pre_arg, _ = val
2206
+
2207
+ pop_pktbl
2208
+ result = new_array_pattern const, nil, pre_arg, const.line
2209
+ }
2210
+ | p_const p_lbracket p_kwargs rbracket
2211
+ {
2212
+ const, _, kwargs, _ = val
2213
+
2214
+ result = new_hash_pattern const, kwargs, const.line
2215
+ }
2216
+ | p_const tLBRACK2 rbracket
2217
+ {
2218
+ const, _, _ = val
2219
+
2220
+ tail = new_array_pattern_tail nil, nil, nil, nil
2221
+ result = new_array_pattern const, nil, tail, const.line
2222
+ }
2223
+ | tLBRACK { push_pktbl } p_args rbracket
2224
+ {
2225
+ _, _, pat, _ = val
2226
+
2227
+ pop_pktbl
2228
+ result = new_array_pattern nil, nil, pat, pat.line
2229
+ }
2230
+ | tLBRACK rbracket
2231
+ {
2232
+ (_, line), _ = val
2233
+
2234
+ result = s(:array_pat).line line
2235
+ }
2236
+ | tLBRACE
2237
+ {
2238
+ push_pktbl
2239
+ result = self.in_kwarg
2240
+ self.in_kwarg = false
2241
+ }
2242
+ p_kwargs rbrace
2243
+ {
2244
+ _, in_kwarg, kwargs, _ = val
2245
+
2246
+ pop_pktbl
2247
+ self.in_kwarg = in_kwarg
2248
+
2249
+ result = new_hash_pattern(nil, kwargs, kwargs.line)
2250
+ }
2251
+ | tLBRACE rbrace
2252
+ {
2253
+ (_, line), _ = val
2254
+
2255
+ tail = new_hash_pattern_tail nil, nil, line
2256
+ result = new_hash_pattern nil, tail, line
2257
+ }
2258
+ | tLPAREN { push_pktbl } p_expr tRPAREN
2259
+ {
2260
+ _, _, expr, _ = val
2261
+
2262
+ pop_pktbl
2263
+ result = expr
2264
+ }
2265
+
2266
+ p_args: p_expr
2267
+ {
2268
+ expr, = val
2269
+
2270
+ ary = s(:array_TAIL, expr).line expr.line
2271
+ result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
2272
+ }
2273
+ | p_args_head
2274
+ {
2275
+ head, = val
2276
+
2277
+ result = new_array_pattern_tail head, true, nil, nil
2278
+ }
2279
+ | p_args_head p_arg
2280
+ {
2281
+ head, tail = val
2282
+
2283
+ both = array_pat_concat head, tail
2284
+
2285
+ result = new_array_pattern_tail both, nil, nil, nil
2286
+ result.line head.line
2287
+ }
2288
+ | p_args_head tSTAR tIDENTIFIER
2289
+ {
2290
+ head, _, (id, _line) = val
2291
+
2292
+ result = new_array_pattern_tail head, true, id.to_sym, nil
2293
+ result.line head.line
2294
+ }
2295
+ | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
2296
+ {
2297
+ head, _, (id, _line), _, post = val
2298
+
2299
+ result = new_array_pattern_tail head, true, id.to_sym, post
2300
+ result.line head.line
2301
+ }
2302
+ | p_args_head tSTAR
2303
+ {
2304
+ expr, _ = val
2305
+
2306
+ result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
2307
+ }
2308
+ | p_args_head tSTAR tCOMMA p_args_post
2309
+ {
2310
+ head, _, _, post = val
2311
+
2312
+ result = new_array_pattern_tail(head, true, nil, post).line head.line
2313
+ }
2314
+ | p_args_tail
2315
+
2316
+ p_args_head: p_arg tCOMMA
2317
+ {
2318
+ arg, _ = val
2319
+ result = arg
2320
+ }
2321
+ | p_args_head p_arg tCOMMA
2322
+ {
2323
+ head, tail, _ = val
2324
+
2325
+ result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
2326
+ result.line head.line
2327
+ }
2328
+
2329
+ p_args_tail: tSTAR tIDENTIFIER
2330
+ {
2331
+ _, (id, line) = val
2332
+
2333
+ result = new_array_pattern_tail nil, true, id.to_sym, nil
2334
+ result.line line
2335
+ }
2336
+ | tSTAR tIDENTIFIER tCOMMA p_args_post
2337
+ {
2338
+ _, (id, line), _, rhs = val
2339
+
2340
+ result = new_array_pattern_tail nil, true, id.to_sym, rhs
2341
+ result.line line
2342
+ }
2343
+ | tSTAR
2344
+ {
2345
+ (_, line), = val
2346
+
2347
+ result = new_array_pattern_tail nil, true, nil, nil
2348
+ result.line line
2349
+ }
2350
+ | tSTAR tCOMMA p_args_post
2351
+ {
2352
+ (_, line), _, args = val
2353
+
2354
+ result = new_array_pattern_tail nil, true, nil, args
2355
+ result.line line
2356
+ }
2357
+
2358
+ p_args_post: p_arg
2359
+ | p_args_post tCOMMA p_arg
2360
+ {
2361
+ lhs, _, rhs = val
2362
+
2363
+ result = array_pat_concat lhs, rhs
2364
+ }
2365
+
2366
+ p_arg: p_expr
2367
+ {
2368
+ expr, = val
2369
+ expr = s(:array_TAIL, expr).line expr.line unless
2370
+ expr.sexp_type == :array_TAIL
2371
+ result = expr
2372
+ }
2373
+
2374
+ p_kwargs: p_kwarg tCOMMA p_kwrest
2375
+ {
2376
+ kw_arg, _, rest = val
2377
+ # TODO? new_unique_key_hash(p, $1, &@$)
2378
+ result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
2379
+ }
2380
+ | p_kwarg
2381
+ {
2382
+ kwarg, = val
2383
+ # TODO? new_unique_key_hash(p, $1, &@$)
2384
+ result = new_hash_pattern_tail kwarg, nil, kwarg.line
2385
+ }
2386
+ | p_kwarg tCOMMA
2387
+ {
2388
+ kwarg, _ = val
2389
+ # TODO? new_unique_key_hash(p, $1, &@$)
2390
+ result = new_hash_pattern_tail kwarg, nil, kwarg.line
2391
+ }
2392
+ | p_kwrest
2393
+ {
2394
+ rest, = val
2395
+
2396
+ result = new_hash_pattern_tail nil, rest, rest.line
2397
+ }
2398
+ | p_kwarg tCOMMA p_kwnorest
2399
+ {
2400
+ kwarg, _, norest = val
2401
+
2402
+ # TODO? new_unique_key_hash(p, $1, &@$)
2403
+ result = new_hash_pattern_tail kwarg, norest, kwarg.line
2404
+ }
2405
+ | p_kwnorest
2406
+ {
2407
+ norest, = val
2408
+
2409
+ result = new_hash_pattern_tail nil, norest, norest.line
2410
+ }
2411
+
2412
+ p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
2413
+ | p_kwarg tCOMMA p_kw
2414
+ {
2415
+ kwarg, _, kw = val
2416
+ kwarg.concat kw.sexp_body
2417
+ result = kwarg
2418
+ }
2419
+
2420
+ p_kw: p_kw_label p_expr
2421
+ {
2422
+ # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
2423
+ lhs, rhs = val
2424
+
2425
+ result = s(:PAIR, lhs, rhs).line lhs.line
2426
+ }
2427
+ | p_kw_label
2428
+ {
2429
+ lhs, = val
2430
+
2431
+ # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
2432
+
2433
+ # TODO: if ($1 && !is_local_id(get_id($1))) {
2434
+ # yyerror1(&@1, "key must be valid as local variables");
2435
+ # }
2436
+
2437
+ # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
2438
+ # assignable(p, $1, 0, &@$));
2439
+
2440
+
2441
+ case lhs.sexp_type
2442
+ when :lit then
2443
+ assignable [lhs.value, lhs.line]
2444
+ else
2445
+ # TODO or done?
2446
+ debug 666
2447
+ end
2448
+
2449
+ # TODO PAIR -> LIST ?
2450
+ result = s(:PAIR, lhs, nil).line lhs.line
2451
+ }
2452
+
2453
+ p_kw_label: tLABEL
2454
+ {
2455
+ result = wrap :lit, val[0]
2456
+ }
2457
+
2458
+ p_kwrest: kwrest_mark tIDENTIFIER
2459
+ {
2460
+ _, (id, line) = val
2461
+
2462
+ name = id.to_sym
2463
+ self.assignable [name, line]
2464
+ result = s(:kwrest, :"**#{name}").line line
2465
+ }
2466
+ | kwrest_mark
2467
+ {
2468
+ (_, line), = val
2469
+
2470
+ result = s(:kwrest, :"**").line line
2471
+ }
2472
+
2473
+ p_kwnorest: kwrest_mark kNIL
2474
+ {
2475
+ (_, line), _ = val
2476
+
2477
+ # TODO: or s(:norest)? s(:**nil)?
2478
+ result = s(:kwrest, :"**nil").line line
2479
+ }
2480
+
2481
+ p_value: p_primitive
2482
+ | p_primitive tDOT2 p_primitive
2483
+ {
2484
+ lhs, _, rhs = val
2485
+
2486
+ lhs = value_expr lhs
2487
+ rhs = value_expr rhs
2488
+
2489
+ result = s(:dot2, lhs, rhs).line lhs.line
2490
+ }
2491
+ | p_primitive tDOT3 p_primitive
2492
+ {
2493
+ lhs, _, rhs = val
2494
+
2495
+ lhs = value_expr lhs
2496
+ rhs = value_expr rhs
2497
+
2498
+ result = s(:dot3, lhs, rhs).line lhs.line
2499
+ }
2500
+ | p_primitive tDOT2
2501
+ {
2502
+ v1, _ = val
2503
+
2504
+ result = s(:dot2, v1, nil).line v1.line
2505
+ }
2506
+ | p_primitive tDOT3
2507
+ {
2508
+ v1, _ = val
2509
+
2510
+ result = s(:dot3, v1, nil).line v1.line
2511
+ }
2512
+ | p_variable
2513
+ | p_var_ref
2514
+ | p_const
2515
+ | tBDOT2 p_primitive
2516
+ {
2517
+ _, v1 = val
2518
+
2519
+ result = s(:dot2, nil, v1).line v1.line
2520
+ }
2521
+ | tBDOT3 p_primitive
2522
+ {
2523
+ _, v1 = val
2524
+
2525
+ result = s(:dot3, nil, v1).line v1.line
2526
+ }
2527
+
2528
+ p_primitive: literal
2529
+ | strings
2530
+ | xstring
2531
+ | regexp
2532
+ | words
2533
+ {
2534
+ result = ary_to_pat val[0]
2535
+ }
2536
+ | qwords
2537
+ {
2538
+ result = ary_to_pat val[0]
2539
+ }
2540
+ | symbols
2541
+ {
2542
+ result = ary_to_pat val[0]
2543
+ }
2544
+ | qsymbols
2545
+ {
2546
+ result = ary_to_pat val[0]
2547
+ }
2548
+ | keyword_variable
2549
+ {
2550
+ # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
2551
+ var, = val
2552
+
2553
+ result = var
2554
+ }
2555
+ | lambda
2556
+
2557
+ p_variable: tIDENTIFIER
2558
+ {
2559
+ # TODO: error_duplicate_pattern_variable(p, $1, &@1);
2560
+ # TODO: assignable(p, $1, 0, &@$);
2561
+ result = wrap :lasgn, val[0]
2562
+ }
2563
+
2564
+ p_var_ref: tCARET tIDENTIFIER
2565
+ {
2566
+ # TODO: check id against env for lvar or dvar
2567
+ result = wrap :lvar, val[1]
2568
+ }
2569
+
2570
+ p_const: tCOLON3 cname
2571
+ {
2572
+ result = wrap :colon3, val[1]
2573
+ }
2574
+ | p_const tCOLON2 cname
2575
+ {
2576
+ lhs, _, (id, _line) = val
2577
+
2578
+ l = lhs.line
2579
+ result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
2580
+ }
2581
+ | tCONSTANT
2582
+ {
2583
+ # TODO $$ = gettable(p, $1, &@$);
2584
+ result = wrap :const, val[0]
2585
+ }
2586
+ ######################################################################
2587
+ #endif
2588
+
2589
+ opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
2590
+ {
2591
+ (_, line), klasses, var, _, body, rest = val
2592
+
2593
+ klasses ||= s(:array)
2594
+ klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
2595
+ klasses.line line
2596
+
2597
+ result = new_resbody(klasses, body)
2598
+ result << rest if rest # UGH, rewritten above
2599
+ }
2600
+ |
2601
+ {
2602
+ result = nil
2603
+ }
2604
+
2605
+ exc_list: arg_value
2606
+ {
2607
+ arg, = val
2608
+ result = s(:array, arg).line arg.line
2609
+ }
2610
+ | mrhs
2611
+ | none
2612
+
2613
+ exc_var: tASSOC lhs
2614
+ {
2615
+ result = val[1]
2616
+ }
2617
+ | none
2618
+
2619
+ opt_ensure: k_ensure compstmt
2620
+ {
2621
+ (_, line), body = val
2622
+
2623
+ result = body || s(:nil).line(line)
2624
+ }
2625
+ | none
2626
+
2627
+ literal: numeric
2628
+ {
2629
+ (lit, line), = val
2630
+ result = s(:lit, lit).line line
2631
+ }
2632
+ | symbol
2633
+
2634
+ strings: string
2635
+ {
2636
+ str, = val
2637
+ str = s(:dstr, str.value) if str.sexp_type == :evstr
2638
+ result = str
2639
+ }
2640
+
2641
+ string: tCHAR
2642
+ {
2643
+ debug 37
2644
+ }
2645
+ | string1
2646
+ | string string1
2647
+ {
2648
+ result = self.literal_concat val[0], val[1]
2649
+ }
2650
+
2651
+ string1: tSTRING_BEG string_contents tSTRING_END
2652
+ {
2653
+ (_, line), str, (_, func) = val
2654
+
2655
+ str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
2656
+
2657
+ result = str.line line
2658
+ }
2659
+ | tSTRING
2660
+ {
2661
+ result = new_string val
2662
+ }
2663
+
2664
+ xstring: tXSTRING_BEG xstring_contents tSTRING_END
2665
+ {
2666
+ result = new_xstring val
2667
+ # TODO: dedent?!?! SERIOUSLY?!?
2668
+ }
2669
+
2670
+ regexp: tREGEXP_BEG regexp_contents tREGEXP_END
2671
+ {
2672
+ result = new_regexp val
2673
+ }
2674
+
2675
+ words: tWORDS_BEG tSPACE tSTRING_END
2676
+ {
2677
+ (_, line), _, _ = val
2678
+
2679
+ result = s(:array).line line
2680
+ }
2681
+ | tWORDS_BEG word_list tSTRING_END
2682
+ {
2683
+ (_, line), list, _ = val
2684
+
2685
+ result = list.line line
2686
+ }
2687
+
2688
+ word_list: none
2689
+ {
2690
+ result = new_word_list
2691
+ }
2692
+ | word_list word tSPACE
2693
+ {
2694
+ result = val[0].dup << new_word_list_entry(val)
2695
+ }
2696
+
2697
+ word: string_content
2698
+ | word string_content
2699
+ {
2700
+ result = self.literal_concat val[0], val[1]
2701
+ }
2702
+
2703
+ symbols: tSYMBOLS_BEG tSPACE tSTRING_END
2704
+ {
2705
+ (_, line), _, _ = val
2706
+
2707
+ result = s(:array).line line
2708
+ }
2709
+ | tSYMBOLS_BEG symbol_list tSTRING_END
2710
+ {
2711
+ (_, line), list, _, = val
2712
+ list.line line
2713
+ result = list
2714
+ }
2715
+
2716
+ symbol_list: none
2717
+ {
2718
+ result = new_symbol_list
2719
+ }
2720
+ | symbol_list word tSPACE
2721
+ {
2722
+ list, * = val
2723
+ result = list.dup << new_symbol_list_entry(val)
2724
+ }
2725
+
2726
+ qwords: tQWORDS_BEG tSPACE tSTRING_END
2727
+ {
2728
+ (_, line), _, _ = val
2729
+
2730
+ result = s(:array).line line
2731
+ }
2732
+ | tQWORDS_BEG qword_list tSTRING_END
2733
+ {
2734
+ (_, line), list, _ = val
2735
+
2736
+ result = list.line line
2737
+ }
2738
+
2739
+ qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
2740
+ {
2741
+ (_, line), _, _ = val
2742
+
2743
+ result = s(:array).line line
2744
+ }
2745
+ | tQSYMBOLS_BEG qsym_list tSTRING_END
2746
+ {
2747
+ (_, line), list, _ = val
2748
+
2749
+ result = list.line line
2750
+ }
2751
+
2752
+ qword_list: none
2753
+ {
2754
+ result = new_qword_list
2755
+ }
2756
+ | qword_list tSTRING_CONTENT tSPACE
2757
+ {
2758
+ result = val[0].dup << new_qword_list_entry(val)
2759
+ }
2760
+
2761
+ qsym_list: none
2762
+ {
2763
+ result = new_qsym_list
2764
+ }
2765
+ | qsym_list tSTRING_CONTENT tSPACE
2766
+ {
2767
+ result = val[0].dup << new_qsym_list_entry(val)
2768
+ }
2769
+
2770
+ string_contents: none
2771
+ {
2772
+ line = prev_value_to_lineno _values.last
2773
+ result = s(:str, +"").line line
2774
+ }
2775
+ | string_contents string_content
2776
+ {
2777
+ v1, v2 = val
2778
+ result = literal_concat v1, v2
2779
+ }
2780
+
2781
+ xstring_contents: none
2782
+ {
2783
+ result = nil
2784
+ }
2785
+ | xstring_contents string_content
2786
+ {
2787
+ v1, v2 = val
2788
+ result = literal_concat v1, v2
2789
+ }
2790
+
2791
+ regexp_contents: none
2792
+ {
2793
+ result = nil
2794
+ }
2795
+ | regexp_contents string_content
2796
+ {
2797
+ v1, v2 = val
2798
+ result = literal_concat v1, v2
2799
+ }
2800
+
2801
+ string_content: tSTRING_CONTENT
2802
+ {
2803
+ result = new_string val
2804
+ }
2805
+ | tSTRING_DVAR
2806
+ {
2807
+ result = lexer.lex_strterm
2808
+
2809
+ lexer.lex_strterm = nil
2810
+ lexer.lex_state = EXPR_BEG
2811
+ }
2812
+ string_dvar
2813
+ {
2814
+ _, strterm, str = val
2815
+ lexer.lex_strterm = strterm
2816
+ result = s(:evstr, str).line str.line
2817
+ }
2818
+ | tSTRING_DBEG
2819
+ {
2820
+ result = [lexer.lex_strterm,
2821
+ lexer.brace_nest,
2822
+ lexer.string_nest, # TODO: remove
2823
+ lexer.lex_state,
2824
+ lexer.lineno,
2825
+ ]
2826
+
2827
+ lexer.cmdarg.push false
2828
+ lexer.cond.push false
2829
+
2830
+ lexer.lex_strterm = nil
2831
+ lexer.brace_nest = 0
2832
+ lexer.string_nest = 0
2833
+
2834
+ lexer.lex_state = EXPR_BEG
2835
+ }
2836
+ compstmt
2837
+ tSTRING_DEND
2838
+ {
2839
+ _, memo, stmt, _ = val
2840
+
2841
+ lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
2842
+ # TODO: heredoc_indent
2843
+
2844
+ lexer.lex_strterm = lex_strterm
2845
+ lexer.brace_nest = brace_nest
2846
+ lexer.string_nest = string_nest
2847
+
2848
+ lexer.cond.pop
2849
+ lexer.cmdarg.pop
2850
+
2851
+ lexer.lex_state = oldlex_state
2852
+
2853
+ case stmt
2854
+ when Sexp then
2855
+ case stmt.sexp_type
2856
+ when :str, :dstr, :evstr then
2857
+ result = stmt
2858
+ else
2859
+ result = s(:evstr, stmt).line line
2860
+ end
2861
+ when nil then
2862
+ result = s(:evstr).line line
2863
+ else
2864
+ debug 38
2865
+ raise "unknown string body: #{stmt.inspect}"
2866
+ end
2867
+ }
2868
+
2869
+ string_dvar: tGVAR
2870
+ {
2871
+ result = wrap :gvar, val[0]
2872
+ }
2873
+ | tIVAR
2874
+ {
2875
+ result = wrap :ivar, val[0]
2876
+ }
2877
+ | tCVAR
2878
+ {
2879
+ result = wrap :cvar, val[0]
2880
+ }
2881
+ | backref
2882
+
2883
+ symbol: ssym
2884
+ | dsym
2885
+
2886
+ ssym: tSYMBEG sym
2887
+ {
2888
+ lexer.lex_state = EXPR_END
2889
+ result = wrap :lit, val[1]
2890
+ }
2891
+ | tSYMBOL
2892
+ {
2893
+ lexer.lex_state = EXPR_END
2894
+ result = wrap :lit, val[0]
2895
+ }
2896
+
2897
+ sym: fname | tIVAR | tGVAR | tCVAR
2898
+
2899
+ dsym: tSYMBEG string_contents tSTRING_END
2900
+ {
2901
+ _, result, _ = val
2902
+
2903
+ lexer.lex_state = EXPR_END
2904
+
2905
+ result ||= s(:str, "").line lexer.lineno
2906
+
2907
+ case result.sexp_type
2908
+ when :dstr then
2909
+ result.sexp_type = :dsym
2910
+ when :str then
2911
+ result = s(:lit, result.last.to_sym).line result.line
2912
+ when :evstr then
2913
+ result = s(:dsym, "", result).line result.line
2914
+ else
2915
+ debug 39
2916
+ end
2917
+ }
2918
+
2919
+ #if V == 20
2920
+ numeric: tINTEGER
2921
+ | tFLOAT
2922
+ | tUMINUS_NUM tINTEGER =tLOWEST
2923
+ #else
2924
+ numeric: simple_numeric
2925
+ | tUMINUS_NUM simple_numeric =tLOWEST
2926
+ #endif
2927
+ {
2928
+ _, (num, line) = val
2929
+ result = [-num, line]
2930
+ #if V == 20
2931
+ }
2932
+ | tUMINUS_NUM tFLOAT =tLOWEST
2933
+ {
2934
+ _, (num, line) = val
2935
+ result = [-num, line]
2936
+ #endif
2937
+ }
2938
+
2939
+ #if V >= 21
2940
+ simple_numeric: tINTEGER
2941
+ | tFLOAT
2942
+ | tRATIONAL
2943
+ | tIMAGINARY
2944
+
2945
+ #endif
2946
+ user_variable: tIDENTIFIER
2947
+ | tIVAR
2948
+ | tGVAR
2949
+ | tCONSTANT
2950
+ | tCVAR
2951
+
2952
+ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
2953
+ | kSELF { result = s(:self).line lexer.lineno }
2954
+ | kTRUE { result = s(:true).line lexer.lineno }
2955
+ | kFALSE { result = s(:false).line lexer.lineno }
2956
+ | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
2957
+ | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
2958
+ | k__ENCODING__
2959
+ {
2960
+ l = lexer.lineno
2961
+ result =
2962
+ if defined? Encoding then
2963
+ s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
2964
+ else
2965
+ s(:str, "Unsupported!").line l
2966
+ end
2967
+ }
2968
+
2969
+ var_ref: user_variable
2970
+ {
2971
+ raise "NO: #{val.inspect}" if Sexp === val.first
2972
+ (var, line), = val
2973
+ result = Sexp === var ? var : self.gettable(var)
2974
+ result.line line
2975
+ }
2976
+ | keyword_variable
2977
+ {
2978
+ var = val[0]
2979
+ result = Sexp === var ? var : self.gettable(var)
2980
+ }
2981
+
2982
+ var_lhs: user_variable
2983
+ {
2984
+ result = self.assignable val[0]
2985
+ }
2986
+ | keyword_variable
2987
+ {
2988
+ result = self.assignable val[0]
2989
+ debug 40
2990
+ }
2991
+
2992
+ backref: tNTH_REF
2993
+ {
2994
+ (ref, line), = val
2995
+ result = s(:nth_ref, ref).line line
2996
+ }
2997
+ | tBACK_REF
2998
+ {
2999
+ (ref, line), = val
3000
+ result = s(:back_ref, ref).line line
3001
+ }
3002
+
3003
+ superclass: tLT
3004
+ {
3005
+ lexer.lex_state = EXPR_BEG
3006
+ lexer.command_start = true
3007
+ }
3008
+ expr_value term
3009
+ {
3010
+ result = val[2]
3011
+ }
3012
+ | none
3013
+ {
3014
+ result = nil
3015
+ }
3016
+
3017
+ f_arglist: tLPAREN2 f_args rparen
3018
+ {
3019
+ result = end_args val
3020
+ }
3021
+ #if V == 27
3022
+ | tLPAREN2 f_arg tCOMMA args_forward rparen
3023
+ {
3024
+ result = end_args val
3025
+ }
3026
+ | tLPAREN2 args_forward rparen
3027
+ {
3028
+ result = end_args val
3029
+ }
3030
+ #endif
3031
+ | {
3032
+ result = self.in_kwarg
3033
+ self.in_kwarg = true
3034
+ self.lexer.lex_state |= EXPR_LABEL
3035
+ }
3036
+ f_args term
3037
+ {
3038
+ result = end_args val
3039
+ }
3040
+
3041
+ args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
3042
+ {
3043
+ result = args val
3044
+ }
3045
+ | f_kwarg opt_f_block_arg
3046
+ {
3047
+ result = args val
3048
+ }
3049
+ | f_kwrest opt_f_block_arg
3050
+ {
3051
+ result = args val
3052
+ }
3053
+ #if V >= 27
3054
+ | f_no_kwarg opt_f_block_arg
3055
+ {
3056
+ result = args val
3057
+ }
3058
+ #endif
3059
+ | f_block_arg
3060
+
3061
+ opt_args_tail: tCOMMA args_tail
3062
+ {
3063
+ result = val[1]
3064
+ }
3065
+ |
3066
+ {
3067
+ result = nil
3068
+ }
3069
+
3070
+ f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
3071
+ {
3072
+ result = args val
3073
+ }
3074
+ | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
3075
+ {
3076
+ result = args val
3077
+ }
3078
+ | f_arg tCOMMA f_optarg opt_args_tail
3079
+ {
3080
+ result = args val
3081
+ }
3082
+ | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
3083
+ {
3084
+ result = args val
3085
+ }
3086
+ | f_arg tCOMMA f_rest_arg opt_args_tail
3087
+ {
3088
+ result = args val
3089
+ }
3090
+ | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
3091
+ {
3092
+ result = args val
3093
+ }
3094
+ | f_arg opt_args_tail
3095
+ {
3096
+ result = args val
3097
+ }
3098
+ | f_optarg tCOMMA f_rest_arg opt_args_tail
3099
+ {
3100
+ result = args val
3101
+ }
3102
+ | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
3103
+ {
3104
+ result = args val
3105
+ }
3106
+ | f_optarg opt_args_tail
3107
+ {
3108
+ result = args val
3109
+ }
3110
+ | f_optarg tCOMMA f_arg opt_args_tail
3111
+ {
3112
+ result = args val
3113
+ }
3114
+ | f_rest_arg opt_args_tail
3115
+ {
3116
+ result = args val
3117
+ }
3118
+ | f_rest_arg tCOMMA f_arg opt_args_tail
3119
+ {
3120
+ result = args val
3121
+ }
3122
+ | args_tail
3123
+ {
3124
+ result = args val
3125
+ }
3126
+ |
3127
+ {
3128
+ result = args val
3129
+ # result.line lexer.lineno
3130
+ }
3131
+
3132
+ #if V >= 27
3133
+ args_forward: tBDOT3
3134
+ {
3135
+ result = s(:forward_args).line lexer.lineno
3136
+ }
3137
+ #endif
3138
+
3139
+ f_bad_arg: tCONSTANT
3140
+ {
3141
+ yyerror "formal argument cannot be a constant"
3142
+ }
3143
+ | tIVAR
3144
+ {
3145
+ yyerror "formal argument cannot be an instance variable"
3146
+ }
3147
+ | tGVAR
3148
+ {
3149
+ yyerror "formal argument cannot be a global variable"
3150
+ }
3151
+ | tCVAR
3152
+ {
3153
+ yyerror "formal argument cannot be a class variable"
3154
+ }
3155
+
3156
+ f_norm_arg: f_bad_arg
3157
+ | tIDENTIFIER
3158
+ {
3159
+ (id, line), = val
3160
+ identifier = id.to_sym
3161
+ self.env[identifier] = :lvar
3162
+
3163
+ result = [identifier, line]
3164
+ }
3165
+
3166
+ #if V >= 22
3167
+ f_arg_asgn: f_norm_arg
3168
+
3169
+ f_arg_item: f_arg_asgn
3170
+ | tLPAREN f_margs rparen
3171
+ {
3172
+ _, margs, _ = val
3173
+
3174
+ result = margs
3175
+ }
3176
+ #else
3177
+ f_arg_item: f_norm_arg
3178
+ | tLPAREN f_margs rparen
3179
+ {
3180
+ _, margs, _ = val
3181
+
3182
+ result = margs
3183
+ }
3184
+ #endif
3185
+
3186
+ f_arg: f_arg_item
3187
+ {
3188
+ result = new_arg val
3189
+ }
3190
+ | f_arg tCOMMA f_arg_item
3191
+ {
3192
+ list, _, item = val
3193
+
3194
+ if list.sexp_type == :args then
3195
+ result = list
3196
+ else
3197
+ result = s(:args, list).line list.line
3198
+ end
3199
+
3200
+ result << (Sexp === item ? item : item.first)
3201
+ }
3202
+
3203
+ #if V == 20
3204
+ f_kw: tLABEL arg_value
3205
+ #else
3206
+ f_label: tLABEL
3207
+
3208
+ f_kw: f_label arg_value
3209
+ #endif
3210
+ {
3211
+ # TODO: new_kw_arg
3212
+ (label, line), arg = val
3213
+
3214
+ identifier = label.to_sym
3215
+ self.env[identifier] = :lvar
3216
+
3217
+ kwarg = s(:kwarg, identifier, arg).line line
3218
+ result = s(:array, kwarg).line line
3219
+ }
3220
+ #if V >= 21
3221
+ | f_label
3222
+ {
3223
+ (label, line), = val
3224
+
3225
+ id = label.to_sym
3226
+ self.env[id] = :lvar
3227
+
3228
+ result = s(:array, s(:kwarg, id).line(line)).line line
3229
+ }
3230
+ #endif
3231
+
3232
+ #if V == 20
3233
+ f_block_kw: tLABEL primary_value
3234
+ #else
3235
+ f_block_kw: f_label primary_value
3236
+ #endif
3237
+ {
3238
+ # TODO: new_kw_arg
3239
+ (label, line), expr = val
3240
+ id = label.to_sym
3241
+ self.env[id] = :lvar
3242
+
3243
+ result = s(:array, s(:kwarg, id, expr).line(line)).line line
3244
+ }
3245
+ #if V >= 21
3246
+ | f_label
3247
+ {
3248
+ # TODO: new_kw_arg
3249
+ (label, line), = val
3250
+ id = label.to_sym
3251
+ self.env[id] = :lvar
3252
+
3253
+ result = s(:array, s(:kwarg, id).line(line)).line line
3254
+ }
3255
+ #endif
3256
+
3257
+ f_block_kwarg: f_block_kw
3258
+ | f_block_kwarg tCOMMA f_block_kw
3259
+ {
3260
+ list, _, item = val
3261
+ result = list << item.last
3262
+ }
3263
+
3264
+ f_kwarg: f_kw
3265
+ | f_kwarg tCOMMA f_kw
3266
+ {
3267
+ result = args val
3268
+ }
3269
+
3270
+ kwrest_mark: tPOW
3271
+ | tDSTAR
3272
+
3273
+ #if V >= 27
3274
+ f_no_kwarg: kwrest_mark kNIL
3275
+ {
3276
+ result = :"**nil"
3277
+ }
3278
+ #endif
3279
+
3280
+ f_kwrest: kwrest_mark tIDENTIFIER
3281
+ {
3282
+ _, (id, line) = val
3283
+
3284
+ name = id.to_sym
3285
+ self.assignable [name, line]
3286
+ result = [:"**#{name}", line]
3287
+ }
3288
+ | kwrest_mark
3289
+ {
3290
+ id = :"**"
3291
+ self.env[id] = :lvar # TODO: needed?!?
3292
+ result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
3293
+ }
3294
+
3295
+ #if V == 20
3296
+ f_opt: tIDENTIFIER tEQL arg_value
3297
+ #elif V == 21
3298
+ f_opt: f_norm_arg tEQL arg_value
3299
+ #else
3300
+ f_opt: f_arg_asgn tEQL arg_value
3301
+ #endif
3302
+ {
3303
+ lhs, _, rhs = val
3304
+ result = self.assignable lhs, rhs
3305
+ # TODO: detect duplicate names
3306
+ }
3307
+
3308
+ #if V == 20
3309
+ f_block_opt: tIDENTIFIER tEQL primary_value
3310
+ #elif V == 21
3311
+ f_block_opt: f_norm_arg tEQL primary_value
3312
+ #else
3313
+ f_block_opt: f_arg_asgn tEQL primary_value
3314
+ #endif
3315
+ {
3316
+ lhs, _, rhs = val
3317
+ result = self.assignable lhs, rhs
3318
+ }
3319
+
3320
+ f_block_optarg: f_block_opt
3321
+ {
3322
+ optblk, = val
3323
+ result = s(:block, optblk).line optblk.line
3324
+ }
3325
+ | f_block_optarg tCOMMA f_block_opt
3326
+ {
3327
+ optarg, _, optblk = val
3328
+ result = optarg
3329
+ result << optblk
3330
+ }
3331
+
3332
+ f_optarg: f_opt
3333
+ {
3334
+ opt, = val
3335
+ result = s(:block, opt).line opt.line
3336
+ }
3337
+ | f_optarg tCOMMA f_opt
3338
+ {
3339
+ result = self.block_append val[0], val[2]
3340
+ }
3341
+
3342
+ restarg_mark: tSTAR2 | tSTAR
3343
+
3344
+ f_rest_arg: restarg_mark tIDENTIFIER
3345
+ {
3346
+ # TODO: differs from parse.y - needs tests
3347
+ _, (id, line) = val
3348
+ name = id.to_sym
3349
+ self.assignable [name, line]
3350
+ result = [:"*#{name}", line]
3351
+ }
3352
+ | restarg_mark
3353
+ {
3354
+ name = :"*"
3355
+ self.env[name] = :lvar
3356
+ result = [name, lexer.lineno] # FIX: tSTAR to include lineno
3357
+ }
3358
+
3359
+ blkarg_mark: tAMPER2 | tAMPER
3360
+
3361
+ f_block_arg: blkarg_mark tIDENTIFIER
3362
+ {
3363
+ _, (id, line) = val
3364
+ identifier = id.to_sym
3365
+
3366
+ self.env[identifier] = :lvar
3367
+ result = ["&#{identifier}".to_sym, line]
3368
+ }
3369
+
3370
+ opt_f_block_arg: tCOMMA f_block_arg
3371
+ {
3372
+ _, arg = val
3373
+ result = arg
3374
+ }
3375
+ |
3376
+ {
3377
+ result = nil
3378
+ }
3379
+
3380
+ singleton: var_ref
3381
+ | tLPAREN2
3382
+ {
3383
+ lexer.lex_state = EXPR_BEG
3384
+ }
3385
+ expr rparen
3386
+ {
3387
+ result = val[2]
3388
+ yyerror "Can't define single method for literals." if
3389
+ result.sexp_type == :lit
3390
+ }
3391
+
3392
+ assoc_list: none
3393
+ {
3394
+ result = s(:array).line lexer.lineno
3395
+ }
3396
+ | assocs trailer
3397
+
3398
+ assocs: assoc
3399
+ | assocs tCOMMA assoc
3400
+ {
3401
+ list = val[0].dup
3402
+ more = val[2].sexp_body
3403
+ list.push(*more) unless more.empty?
3404
+ result = list
3405
+ result.sexp_type = :hash
3406
+ }
3407
+
3408
+ assoc: arg_value tASSOC arg_value
3409
+ {
3410
+ v1, _, v2 = val
3411
+ result = s(:array, v1, v2).line v1.line
3412
+ }
3413
+ | tLABEL arg_value
3414
+ {
3415
+ label, arg = val
3416
+
3417
+ lit = wrap :lit, label
3418
+ result = s(:array, lit, arg).line lit.line
3419
+ }
3420
+ #if V >= 22
3421
+ | tSTRING_BEG string_contents tLABEL_END arg_value
3422
+ {
3423
+ (_, line), sym, _, value = val
3424
+
3425
+ sym.sexp_type = :dsym
3426
+
3427
+ result = s(:array, sym, value).line line
3428
+ }
3429
+ #endif
3430
+ | tDSTAR arg_value
3431
+ {
3432
+ _, arg = val
3433
+ line = arg.line
3434
+ result = s(:array, s(:kwsplat, arg).line(line)).line line
3435
+ }
3436
+
3437
+ operation: tIDENTIFIER | tCONSTANT | tFID
3438
+ operation2: tIDENTIFIER | tCONSTANT | tFID | op
3439
+ operation3: tIDENTIFIER | tFID | op
3440
+ dot_or_colon: tDOT | tCOLON2
3441
+ call_op: tDOT
3442
+ #if V >= 23
3443
+ | tLONELY # TODO: rename tANDDOT?
3444
+ #endif
3445
+
3446
+ call_op2: call_op
3447
+ | tCOLON2
3448
+
3449
+ opt_terms: | terms
3450
+ opt_nl: | tNL
3451
+ rparen: opt_nl tRPAREN
3452
+ rbracket: opt_nl tRBRACK
3453
+ #if V >= 27
3454
+ rbrace: opt_nl tRCURLY
3455
+ #endif
3456
+ trailer: | tNL | tCOMMA
3457
+
3458
+ term: tSEMI { yyerrok }
3459
+ | tNL
3460
+
3461
+ terms: term
3462
+ | terms tSEMI { yyerrok }
3463
+
3464
+ none: { result = nil; }
3465
+ end
3466
+
3467
+ ---- inner
3468
+
3469
+ require "ruby_lexer"
3470
+ require "ruby_parser_extras"
3471
+ include RubyLexer::State::Values
3472
+
3473
+ # :stopdoc:
3474
+
3475
+ # Local Variables: **
3476
+ # racc-token-length-max:14 **
3477
+ # End: **