zuora_connect_ui 0.8.2 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (449) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/zuora_connect_ui.js +1 -0
  3. data/app/assets/javascripts/zuora_connect_ui/util.js +51 -0
  4. data/app/assets/stylesheets/_zuora_connect_ui.scss +4 -6
  5. data/app/assets/stylesheets/zuora_connect_ui/datatables.scss +3 -3
  6. data/app/helpers/zuora_connect_ui/application_helper.rb +28 -4
  7. data/app/views/partials/_table.html.erb +16 -7
  8. data/lib/zuora_connect_ui/version.rb +1 -1
  9. data/vendor/ruby/2.6.0/cache/autoprefixer-rails-9.6.1.1.gem +0 -0
  10. data/vendor/ruby/2.6.0/cache/parser-2.6.4.1.gem +0 -0
  11. data/vendor/ruby/2.6.0/cache/sassc-2.2.0.gem +0 -0
  12. data/vendor/ruby/2.6.0/cache/zeitwerk-2.1.10.gem +0 -0
  13. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/gem.build_complete +0 -0
  14. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/gem_make.out +75 -0
  15. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/sassc/libsass.so +0 -0
  16. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/CHANGELOG.md +1085 -0
  17. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/Gemfile +10 -0
  18. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/LICENSE +20 -0
  19. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/README.md +237 -0
  20. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/Rakefile +53 -0
  21. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/autoprefixer-rails.gemspec +32 -0
  22. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails.rb +41 -0
  23. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/processor.rb +194 -0
  24. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/railtie.rb +50 -0
  25. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/result.rb +24 -0
  26. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/sprockets.rb +62 -0
  27. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/version.rb +3 -0
  28. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/rake/autoprefixer_tasks.rb +28 -0
  29. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/Rakefile +2 -0
  30. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/config/manifest.js +0 -0
  31. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/evaluate.css.erb +1 -0
  32. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/loaded.sass +2 -0
  33. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/sass.sass +1 -0
  34. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/test.css +3 -0
  35. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/wrong.css +2 -0
  36. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/controllers/application_controller.rb +2 -0
  37. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/controllers/css_controller.rb +6 -0
  38. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config.ru +2 -0
  39. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/application.rb +16 -0
  40. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/autoprefixer.yml +2 -0
  41. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/boot.rb +2 -0
  42. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/environment.rb +3 -0
  43. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/environments/test.rb +9 -0
  44. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/initializers/secret_token.rb +1 -0
  45. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/routes.rb +3 -0
  46. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/autoprefixer_spec.rb +121 -0
  47. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/processor_spec.rb +25 -0
  48. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/rails_spec.rb +40 -0
  49. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/railtie_spec.rb +29 -0
  50. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/spec_helper.rb +16 -0
  51. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/vendor/autoprefixer.js +67195 -0
  52. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/CHANGELOG.md +909 -0
  53. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/CONTRIBUTING.md +17 -0
  54. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/Gemfile +10 -0
  55. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/LICENSE.txt +25 -0
  56. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/README.md +301 -0
  57. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/Rakefile +166 -0
  58. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/bin/ruby-parse +7 -0
  59. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/bin/ruby-rewrite +7 -0
  60. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/ci/run_rubocop_specs +14 -0
  61. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/AST_FORMAT.md +1816 -0
  62. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/CUSTOMIZATION.md +37 -0
  63. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/INTERNALS.md +21 -0
  64. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/css/common.css +68 -0
  65. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/gauntlet_parser.rb +123 -0
  66. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser.rb +82 -0
  67. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/all.rb +12 -0
  68. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ast/node.rb +40 -0
  69. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ast/processor.rb +264 -0
  70. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/base.rb +270 -0
  71. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/builders/default.rb +1741 -0
  72. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/clobbering_error.rb +13 -0
  73. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/color.rb +32 -0
  74. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/context.rb +59 -0
  75. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/current.rb +92 -0
  76. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/deprecation.rb +13 -0
  77. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/diagnostic.rb +163 -0
  78. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/diagnostic/engine.rb +105 -0
  79. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer.rb +23546 -0
  80. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer.rl +2503 -0
  81. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/dedenter.rb +79 -0
  82. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/explanation.rb +55 -0
  83. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/literal.rb +269 -0
  84. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/max_numparam_stack.rb +42 -0
  85. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/stack_state.rb +49 -0
  86. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/macruby.rb +6124 -0
  87. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/macruby.y +2198 -0
  88. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/messages.rb +90 -0
  89. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/meta.rb +33 -0
  90. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rewriter.rb +105 -0
  91. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby18.rb +5661 -0
  92. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby18.y +1934 -0
  93. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby19.rb +6084 -0
  94. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby19.y +2175 -0
  95. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby20.rb +6511 -0
  96. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby20.y +2353 -0
  97. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby21.rb +6570 -0
  98. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby21.y +2357 -0
  99. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby22.rb +6605 -0
  100. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby22.y +2364 -0
  101. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby23.rb +6624 -0
  102. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby23.y +2370 -0
  103. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby24.rb +6689 -0
  104. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby24.y +2408 -0
  105. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby25.rb +6656 -0
  106. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby25.y +2405 -0
  107. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby26.rb +6670 -0
  108. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby26.y +2413 -0
  109. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby27.rb +6893 -0
  110. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby27.y +2470 -0
  111. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rubymotion.rb +6078 -0
  112. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rubymotion.y +2182 -0
  113. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner.rb +253 -0
  114. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner/ruby_parse.rb +157 -0
  115. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner/ruby_rewrite.rb +101 -0
  116. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/buffer.rb +330 -0
  117. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/comment.rb +121 -0
  118. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/comment/associator.rb +210 -0
  119. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map.rb +186 -0
  120. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/collection.rb +18 -0
  121. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/condition.rb +21 -0
  122. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/constant.rb +32 -0
  123. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/definition.rb +23 -0
  124. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/for.rb +19 -0
  125. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/heredoc.rb +19 -0
  126. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/index.rb +33 -0
  127. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/keyword.rb +20 -0
  128. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/objc_kwarg.rb +19 -0
  129. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/operator.rb +17 -0
  130. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/rescue_body.rb +21 -0
  131. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/send.rb +36 -0
  132. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/ternary.rb +18 -0
  133. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/variable.rb +31 -0
  134. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/range.rb +310 -0
  135. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/rewriter.rb +513 -0
  136. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/rewriter/action.rb +44 -0
  137. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/tree_rewriter.rb +301 -0
  138. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/tree_rewriter/action.rb +133 -0
  139. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/static_environment.rb +46 -0
  140. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/syntax_error.rb +21 -0
  141. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/tree_rewriter.rb +134 -0
  142. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/version.rb +5 -0
  143. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/parser.gemspec +51 -0
  144. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/fixtures/input.rb +5 -0
  145. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/fixtures/output.rb +5 -0
  146. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/rewriter.rb +20 -0
  147. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/helper.rb +59 -0
  148. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/parse_helper.rb +316 -0
  149. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/racc_coverage_helper.rb +133 -0
  150. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_base.rb +31 -0
  151. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_current.rb +29 -0
  152. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_diagnostic.rb +96 -0
  153. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_diagnostic_engine.rb +62 -0
  154. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_encoding.rb +99 -0
  155. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_lexer.rb +3659 -0
  156. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_lexer_stack_state.rb +78 -0
  157. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_parse_helper.rb +80 -0
  158. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_parser.rb +7579 -0
  159. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_runner_parse.rb +35 -0
  160. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_runner_rewrite.rb +47 -0
  161. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_buffer.rb +162 -0
  162. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_comment.rb +36 -0
  163. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_comment_associator.rb +367 -0
  164. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_map.rb +15 -0
  165. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_range.rb +172 -0
  166. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_rewriter.rb +541 -0
  167. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_rewriter_action.rb +46 -0
  168. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_tree_rewriter.rb +173 -0
  169. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_static_environment.rb +45 -0
  170. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/fixtures/input.rb +3 -0
  171. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/fixtures/output.rb +3 -0
  172. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/using_tree_rewriter.rb +9 -0
  173. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/CHANGELOG.md +77 -0
  174. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/CODE_OF_CONDUCT.md +10 -0
  175. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/Gemfile +2 -0
  176. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/LICENSE.txt +22 -0
  177. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/README.md +68 -0
  178. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/Rakefile +53 -0
  179. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/Makefile +271 -0
  180. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/SharedPtr.o +0 -0
  181. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast.o +0 -0
  182. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast2c.o +0 -0
  183. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_fwd_decl.o +0 -0
  184. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_sel_cmp.o +0 -0
  185. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_sel_unify.o +0 -0
  186. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_selectors.o +0 -0
  187. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_supports.o +0 -0
  188. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_values.o +0 -0
  189. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/backtrace.o +0 -0
  190. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/base64vlq.o +0 -0
  191. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/bind.o +0 -0
  192. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/c2ast.o +0 -0
  193. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/c99func.o +0 -0
  194. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/cencode.o +0 -0
  195. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/check_nesting.o +0 -0
  196. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/color_maps.o +0 -0
  197. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/constants.o +0 -0
  198. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/context.o +0 -0
  199. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/cssize.o +0 -0
  200. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/depend +4 -0
  201. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/emitter.o +0 -0
  202. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/environment.o +0 -0
  203. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/error_handling.o +0 -0
  204. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/eval.o +0 -0
  205. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/expand.o +0 -0
  206. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/extconf.rb +84 -0
  207. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/extend.o +0 -0
  208. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/file.o +0 -0
  209. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_colors.o +0 -0
  210. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_lists.o +0 -0
  211. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_maps.o +0 -0
  212. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_miscs.o +0 -0
  213. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_numbers.o +0 -0
  214. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_selectors.o +0 -0
  215. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_strings.o +0 -0
  216. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_utils.o +0 -0
  217. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/inspect.o +0 -0
  218. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/json.o +0 -0
  219. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/lexer.o +0 -0
  220. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass.so +0 -0
  221. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/VERSION +1 -0
  222. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/contrib/plugin.cpp +60 -0
  223. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass.h +15 -0
  224. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/base.h +96 -0
  225. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/context.h +170 -0
  226. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/functions.h +139 -0
  227. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/values.h +145 -0
  228. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/version.h +12 -0
  229. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass2scss.h +120 -0
  230. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast.cpp +963 -0
  231. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast.hpp +905 -0
  232. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast2c.cpp +80 -0
  233. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast2c.hpp +39 -0
  234. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_def_macros.hpp +132 -0
  235. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_fwd_decl.cpp +30 -0
  236. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_fwd_decl.hpp +341 -0
  237. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_sel_cmp.cpp +909 -0
  238. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_sel_unify.cpp +280 -0
  239. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_selectors.cpp +1475 -0
  240. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_selectors.hpp +568 -0
  241. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_supports.cpp +130 -0
  242. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_supports.hpp +121 -0
  243. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_values.cpp +967 -0
  244. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_values.hpp +489 -0
  245. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/b64/cencode.h +32 -0
  246. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/b64/encode.h +79 -0
  247. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/backtrace.cpp +50 -0
  248. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/backtrace.hpp +29 -0
  249. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/base64vlq.cpp +47 -0
  250. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/base64vlq.hpp +30 -0
  251. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/bind.cpp +312 -0
  252. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/bind.hpp +15 -0
  253. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c2ast.cpp +64 -0
  254. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c2ast.hpp +14 -0
  255. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c99func.c +54 -0
  256. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cencode.c +108 -0
  257. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/check_nesting.cpp +394 -0
  258. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/check_nesting.hpp +66 -0
  259. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/color_maps.cpp +651 -0
  260. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/color_maps.hpp +331 -0
  261. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/constants.cpp +194 -0
  262. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/constants.hpp +194 -0
  263. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/context.cpp +890 -0
  264. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/context.hpp +152 -0
  265. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cssize.cpp +604 -0
  266. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cssize.hpp +77 -0
  267. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/debug.hpp +43 -0
  268. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/debugger.hpp +807 -0
  269. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/emitter.cpp +298 -0
  270. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/emitter.hpp +103 -0
  271. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/environment.cpp +260 -0
  272. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/environment.hpp +119 -0
  273. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/error_handling.cpp +212 -0
  274. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/error_handling.hpp +229 -0
  275. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/eval.cpp +1657 -0
  276. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/eval.hpp +112 -0
  277. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.cpp +822 -0
  278. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp +78 -0
  279. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/extend.cpp +2132 -0
  280. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/extend.hpp +86 -0
  281. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/file.cpp +522 -0
  282. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/file.hpp +133 -0
  283. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_colors.cpp +594 -0
  284. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_colors.hpp +85 -0
  285. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_lists.cpp +284 -0
  286. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_lists.hpp +34 -0
  287. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_maps.cpp +94 -0
  288. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_maps.hpp +30 -0
  289. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_miscs.cpp +256 -0
  290. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_miscs.hpp +40 -0
  291. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_numbers.cpp +220 -0
  292. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_numbers.hpp +45 -0
  293. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_selectors.cpp +235 -0
  294. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_selectors.hpp +35 -0
  295. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_strings.cpp +254 -0
  296. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_strings.hpp +34 -0
  297. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_utils.cpp +156 -0
  298. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_utils.hpp +56 -0
  299. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/inspect.cpp +1087 -0
  300. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/inspect.hpp +99 -0
  301. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/json.cpp +1436 -0
  302. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/json.hpp +117 -0
  303. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/kwd_arg_macros.hpp +28 -0
  304. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/lexer.cpp +184 -0
  305. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/lexer.hpp +315 -0
  306. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/listize.cpp +84 -0
  307. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/listize.hpp +38 -0
  308. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/mapping.hpp +18 -0
  309. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/memory/SharedPtr.cpp +33 -0
  310. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/memory/SharedPtr.hpp +286 -0
  311. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/node.cpp +322 -0
  312. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/node.hpp +118 -0
  313. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operation.hpp +213 -0
  314. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operators.cpp +266 -0
  315. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operators.hpp +30 -0
  316. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/output.cpp +339 -0
  317. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/output.hpp +47 -0
  318. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/parser.cpp +3153 -0
  319. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/parser.hpp +402 -0
  320. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/paths.hpp +71 -0
  321. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/plugins.cpp +188 -0
  322. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/plugins.hpp +57 -0
  323. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/position.cpp +184 -0
  324. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/position.hpp +124 -0
  325. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/prelexer.cpp +1780 -0
  326. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/prelexer.hpp +484 -0
  327. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/remove_placeholders.cpp +87 -0
  328. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/remove_placeholders.hpp +34 -0
  329. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass.cpp +155 -0
  330. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass.hpp +142 -0
  331. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass2scss.cpp +895 -0
  332. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_context.cpp +772 -0
  333. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_context.hpp +129 -0
  334. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_functions.cpp +210 -0
  335. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_functions.hpp +50 -0
  336. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_util.cpp +152 -0
  337. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_util.hpp +256 -0
  338. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_values.cpp +365 -0
  339. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_values.hpp +82 -0
  340. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/source_map.cpp +198 -0
  341. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/source_map.hpp +62 -0
  342. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/subset_map.cpp +58 -0
  343. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/subset_map.hpp +76 -0
  344. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/to_value.cpp +114 -0
  345. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/to_value.hpp +46 -0
  346. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/units.cpp +505 -0
  347. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/units.hpp +110 -0
  348. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8.h +34 -0
  349. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/checked.h +336 -0
  350. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/core.h +332 -0
  351. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/unchecked.h +235 -0
  352. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8_string.cpp +105 -0
  353. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8_string.hpp +37 -0
  354. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util.cpp +725 -0
  355. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util.hpp +106 -0
  356. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util_string.cpp +75 -0
  357. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util_string.hpp +19 -0
  358. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/values.cpp +140 -0
  359. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/values.hpp +12 -0
  360. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/listize.o +0 -0
  361. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/node.o +0 -0
  362. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/operators.o +0 -0
  363. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/output.o +0 -0
  364. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/parser.o +0 -0
  365. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/plugins.o +0 -0
  366. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/position.o +0 -0
  367. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/prelexer.o +0 -0
  368. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/remove_placeholders.o +0 -0
  369. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass.o +0 -0
  370. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass2scss.o +0 -0
  371. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_context.o +0 -0
  372. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_functions.o +0 -0
  373. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_util.o +0 -0
  374. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_values.o +0 -0
  375. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/source_map.o +0 -0
  376. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/subset_map.o +0 -0
  377. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/to_value.o +0 -0
  378. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/units.o +0 -0
  379. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/utf8_string.o +0 -0
  380. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/util.o +0 -0
  381. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/util_string.o +0 -0
  382. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/values.o +0 -0
  383. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc.rb +57 -0
  384. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/dependency.rb +17 -0
  385. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/engine.rb +139 -0
  386. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/error.rb +37 -0
  387. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/functions_handler.rb +73 -0
  388. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/import_handler.rb +50 -0
  389. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/importer.rb +31 -0
  390. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/libsass.so +0 -0
  391. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native.rb +62 -0
  392. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/lib_c.rb +21 -0
  393. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/native_context_api.rb +147 -0
  394. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/native_functions_api.rb +159 -0
  395. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass2scss_api.rb +10 -0
  396. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_input_style.rb +13 -0
  397. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_output_style.rb +12 -0
  398. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_value.rb +97 -0
  399. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/string_list.rb +10 -0
  400. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/sass_2_scss.rb +9 -0
  401. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script.rb +17 -0
  402. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/functions.rb +8 -0
  403. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value.rb +137 -0
  404. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/bool.rb +32 -0
  405. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/color.rb +95 -0
  406. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/list.rb +136 -0
  407. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/map.rb +69 -0
  408. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/number.rb +389 -0
  409. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/string.rb +96 -0
  410. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion.rb +69 -0
  411. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/base.rb +13 -0
  412. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/bool.rb +13 -0
  413. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/color.rb +18 -0
  414. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/list.rb +25 -0
  415. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/map.rb +21 -0
  416. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/number.rb +13 -0
  417. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/string.rb +17 -0
  418. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/util.rb +231 -0
  419. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/util/normalized_map.rb +117 -0
  420. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/version.rb +5 -0
  421. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/sassc.gemspec +69 -0
  422. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/custom_importer_test.rb +127 -0
  423. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/engine_test.rb +314 -0
  424. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/error_test.rb +29 -0
  425. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/fixtures/paths.scss +10 -0
  426. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/functions_test.rb +323 -0
  427. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/native_test.rb +213 -0
  428. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/output_style_test.rb +107 -0
  429. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/sass_2_scss_test.rb +14 -0
  430. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/test_helper.rb +45 -0
  431. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/README.md +533 -0
  432. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk.rb +12 -0
  433. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/error.rb +10 -0
  434. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/explicit_namespace.rb +80 -0
  435. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/gem_inflector.rb +19 -0
  436. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/inflector.rb +19 -0
  437. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/kernel.rb +33 -0
  438. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/loader.rb +759 -0
  439. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/loader/callbacks.rb +71 -0
  440. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/real_mod_name.rb +15 -0
  441. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/registry.rb +147 -0
  442. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/version.rb +5 -0
  443. data/vendor/ruby/2.6.0/specifications/autoprefixer-rails-9.6.1.1.gemspec +47 -0
  444. data/vendor/ruby/2.6.0/specifications/parser-2.6.4.1.gemspec +62 -0
  445. data/vendor/ruby/2.6.0/specifications/sassc-2.2.0.gemspec +60 -0
  446. data/vendor/ruby/2.6.0/specifications/zeitwerk-2.1.10.gemspec +21 -0
  447. metadata +441 -4
  448. data/vendor/assets/anjuna/css/anjuna-application.css +0 -2
  449. data/vendor/assets/anjuna/css/anjuna-theme.css +0 -2
@@ -0,0 +1,7 @@
1
+ #! /usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ $LOAD_PATH.unshift(File.expand_path('../../lib', __FILE__))
5
+ require 'parser/runner/ruby_parse'
6
+
7
+ Parser::Runner::RubyParse.go(ARGV)
@@ -0,0 +1,7 @@
1
+ #! /usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ $LOAD_PATH.unshift(File.expand_path('../../lib', __FILE__))
5
+ require 'parser/runner/ruby_rewrite'
6
+
7
+ Parser::Runner::RubyRewrite.go(ARGV)
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -eux
4
+
5
+ bundle install
6
+ rake generate
7
+
8
+ git clone https://github.com/rubocop-hq/rubocop.git --depth=1
9
+ cd rubocop
10
+ export BUNDLE_GEMFILE=Gemfile
11
+ echo "gem 'parser', path: '../'" > Gemfile.local
12
+
13
+ bundle install
14
+ bundle exec rake spec
@@ -0,0 +1,1816 @@
1
+ AST and Source Location
2
+ =======================
3
+
4
+ ## Literals
5
+
6
+ ### Singletons
7
+
8
+ Format:
9
+
10
+ ~~~
11
+ (true)
12
+ "true"
13
+ ~~~~ expression
14
+
15
+ (false)
16
+ "false"
17
+ ~~~~~ expression
18
+
19
+ (nil)
20
+ "nil"
21
+ ~~~ expression
22
+ ~~~
23
+
24
+ ### Integer
25
+
26
+ Format:
27
+
28
+ ~~~
29
+ (int 123)
30
+ "123"
31
+ ~~~ expression
32
+
33
+ (int -123)
34
+ "-123"
35
+ ^ operator
36
+ ~~~ expression
37
+
38
+ (int 1)
39
+ "__LINE__"
40
+ ~~~~~~~~ expression
41
+ ~~~
42
+
43
+ ### Float
44
+
45
+ Format:
46
+
47
+ ~~~
48
+ (float 1.0)
49
+ "1.0"
50
+ ~~~ expression
51
+
52
+ (float -1.0)
53
+ "-1.0"
54
+ ^ operator
55
+ ~~~~ expression
56
+ ~~~
57
+
58
+ ### Complex
59
+
60
+ Format:
61
+
62
+ ~~~
63
+ (complex (0+1i))
64
+ "1i"
65
+ ~~ expression
66
+
67
+ (complex (0+(1/1)*i))
68
+ "1ri"
69
+ ~~~ expression
70
+ ~~~
71
+
72
+ ### Rational
73
+
74
+ Format:
75
+
76
+ ~~~
77
+ (rational (2/1))
78
+ "2.0r"
79
+ ~~~~ expression
80
+ ~~~
81
+
82
+ ### String
83
+
84
+ #### Plain
85
+
86
+ Format:
87
+
88
+ ~~~
89
+ (str "foo")
90
+ "'foo'"
91
+ ^ begin
92
+ ^ end
93
+ ~~~~~ expresion
94
+
95
+ (string "foo.rb")
96
+ "__FILE__"
97
+ ~~~~~~~~ expression
98
+ ~~~
99
+
100
+ #### With interpolation
101
+
102
+ Format:
103
+
104
+ ~~~
105
+ (dstr (str "foo") (begin (lvar bar)) (str "baz"))
106
+ '"foo#{bar}baz"'
107
+ ^ begin ^ end
108
+ ~~~~~~~~~~~~~~ expression
109
+ ^^ begin (begin)
110
+ ^ end (begin)
111
+ ^^^^^^ expression (begin)
112
+ ~~~
113
+
114
+ #### Here document
115
+
116
+ Format:
117
+
118
+ ~~~
119
+ (str "foo\nbar\n")
120
+ '<<HERE␊foo␊bar␊HERE'
121
+ ~~~~~~ expression
122
+ ~~~~~~~~ heredoc_body
123
+ ~~~~ heredoc_end
124
+ ~~~
125
+
126
+ ### Symbol
127
+
128
+ #### Plain
129
+
130
+ Format:
131
+
132
+ ~~~
133
+ (sym :foo)
134
+ ":foo"
135
+ ~~~~ expresion
136
+
137
+ ":'foo'"
138
+ ^ begin
139
+ ^ end
140
+ ~~~~~~ expression
141
+ ~~~
142
+
143
+ #### With interpolation
144
+
145
+ Format:
146
+
147
+ ~~~
148
+ (dsym (str "foo") (lvar bar) (str "baz"))
149
+ ':"foo#{bar}baz"'
150
+ ^ begin ^ end
151
+ ~~~~~~~~~~~~~~~ expression
152
+ ~~~
153
+
154
+ ### Execute-string
155
+
156
+ #### Plain
157
+
158
+ Format:
159
+
160
+ ~~~
161
+ (xstr (str "foo") (lvar bar))
162
+ "`foo#{bar}`"
163
+ ^ begin ^ end
164
+ ~~~~~~~~~~~ expression
165
+ ~~~
166
+
167
+ #### Here document
168
+
169
+ Format:
170
+
171
+ ~~~
172
+ (xstr (str "foo\nbar\n"))
173
+ "<<`HERE`␊foo␊bar␊HERE"
174
+ ~~~~~~~~ expression
175
+ ~~~~~~~~ heredoc_body
176
+ ~~~~ heredoc_end
177
+ ~~~
178
+
179
+ ### Regexp
180
+
181
+ #### Options
182
+
183
+ Format:
184
+
185
+ ~~~
186
+ (regopt :i :m)
187
+ "im"
188
+ ~~ expression
189
+ ~~~
190
+
191
+ #### Regexp
192
+
193
+ Format:
194
+
195
+ ~~~
196
+ (regexp (str "foo") (lvar :bar) (regopt :i))
197
+ "/foo#{bar}/i"
198
+ ^ begin ^ end
199
+ ~~~~~~~~~~~ expression
200
+ ~~~
201
+
202
+ ### Array
203
+
204
+ #### Plain
205
+
206
+ Format:
207
+
208
+ ~~~
209
+ (array (int 1) (int 2))
210
+
211
+ "[1, 2]"
212
+ ^ begin
213
+ ^ end
214
+ ~~~~~~ expression
215
+ ~~~
216
+
217
+ #### Splat
218
+
219
+ Can also be used in argument lists: `foo(bar, *baz)`
220
+
221
+ Format:
222
+
223
+ ~~~
224
+ (splat (lvar :foo))
225
+ "*foo"
226
+ ^ operator
227
+ ~~~~ expression
228
+ ~~~
229
+
230
+ #### With interpolation
231
+
232
+ Format:
233
+
234
+ ~~~
235
+ (array (int 1) (splat (lvar :foo)) (int 2))
236
+
237
+ "[1, *foo, 2]"
238
+ ^ begin ^ end
239
+ ~~~~~~~~~~~~ expression
240
+ ~~~
241
+
242
+ ### Hash
243
+
244
+ #### Pair
245
+
246
+ ##### With hashrocket
247
+
248
+ Format:
249
+
250
+ ~~~
251
+ (pair (int 1) (int 2))
252
+ "1 => 2"
253
+ ~~ operator
254
+ ~~~~~~ expression
255
+ ~~~
256
+
257
+ ##### With label (1.9)
258
+
259
+ Format:
260
+
261
+ ~~~
262
+ (pair (sym :answer) (int 42))
263
+ "answer: 42"
264
+ ^ operator (pair)
265
+ ~~~~~~ expression (sym)
266
+ ~~~~~~~~~~ expression (pair)
267
+ ~~~
268
+
269
+ #### Plain
270
+
271
+ Format:
272
+
273
+ ~~~
274
+ (hash (pair (int 1) (int 2)) (pair (int 3) (int 4)))
275
+ "{1 => 2, 3 => 4}"
276
+ ^ begin ^ end
277
+ ~~~~~~~~~~~~~~~~ expression
278
+ ~~~
279
+
280
+ #### Keyword splat (2.0)
281
+
282
+ Can also be used in argument lists: `foo(bar, **baz)`
283
+
284
+ Format:
285
+
286
+ ~~~
287
+ (kwsplat (lvar :foo))
288
+ "**foo"
289
+ ~~ operator
290
+ ~~~~~ expression
291
+ ~~~
292
+
293
+ #### With interpolation (2.0)
294
+
295
+ Format:
296
+
297
+ ~~~
298
+ (hash (pair (sym :foo) (int 2)) (kwsplat (lvar :bar)))
299
+ "{ foo: 2, **bar }"
300
+ ^ begin ^ end
301
+ ~~~~~~~~~~~~~~~~~ expression
302
+ ~~~
303
+
304
+ ### Range
305
+
306
+ #### Inclusive
307
+
308
+ Format:
309
+
310
+ ~~~
311
+ (irange (int 1) (int 2))
312
+ "1..2"
313
+ ~~ operator
314
+ ~~~~ expression
315
+ ~~~
316
+
317
+ #### Exclusive
318
+
319
+ Format:
320
+
321
+ ~~~
322
+ (erange (int 1) (int 2))
323
+ "1...2"
324
+ ~~~ operator
325
+ ~~~~~ expression
326
+ ~~~
327
+
328
+
329
+ ### Endless (2.6)
330
+
331
+ Format:
332
+
333
+ ~~~
334
+ (irange (int 1) nil)
335
+ "1.."
336
+ ~~ operator
337
+ ~~~ expression
338
+
339
+ (erange (int 1) nil)
340
+ "1..."
341
+ ~~~ operator
342
+ ~~~~ expression
343
+ ~~~
344
+
345
+ ### Beginless (2.7)
346
+
347
+ Format:
348
+
349
+ ~~~
350
+ (irange nil (int 1))
351
+ "..1"
352
+ ~~ operator
353
+ ~~~ expression
354
+
355
+ (erange nil (int 1))
356
+ "...1"
357
+ ~~~ operator
358
+ ~~~~ expression
359
+ ~~~
360
+
361
+ ## Access
362
+
363
+ ### Self
364
+
365
+ Format:
366
+
367
+ ~~~
368
+ (self)
369
+ "self"
370
+ ~~~~ expression
371
+ ~~~
372
+
373
+ ### Local variable
374
+
375
+ Format:
376
+
377
+ ~~~
378
+ (lvar :foo)
379
+ "foo"
380
+ ~~~ expression
381
+ ~~~
382
+
383
+ ### Instance variable
384
+
385
+ Format:
386
+
387
+ ~~~
388
+ (ivar :@foo)
389
+ "@foo"
390
+ ~~~~ expression
391
+ ~~~
392
+
393
+ ### Class variable
394
+
395
+ Format:
396
+
397
+ ~~~
398
+ (cvar :@@foo)
399
+ "@@foo"
400
+ ~~~~~ expression
401
+ ~~~
402
+
403
+ ### Global variable
404
+
405
+ #### Regular global variable
406
+
407
+ Format:
408
+
409
+ ~~~
410
+ (gvar :$foo)
411
+ "$foo"
412
+ ~~~~ expression
413
+ ~~~
414
+
415
+ #### Regular expression capture groups
416
+
417
+ Format:
418
+
419
+ ~~~
420
+ (nth-ref 1)
421
+ "$1"
422
+ ~~ expression
423
+ ~~~
424
+
425
+ #### Regular expression back-references
426
+
427
+ Format:
428
+
429
+ ~~~
430
+ (back-ref :$&)
431
+ "$&"
432
+ ~~ expression
433
+ (back-ref :$`)
434
+ "$`"
435
+ (back-ref :$')
436
+ "$'"
437
+ (back-ref :$+)
438
+ "$+"
439
+ ~~~
440
+
441
+ ### Constant
442
+
443
+ #### Top-level constant
444
+
445
+ Format:
446
+
447
+ ~~~
448
+ (const (cbase) :Foo)
449
+ "::Foo"
450
+ ~~~ name
451
+ ~~ double_colon
452
+ ~~~~~ expression
453
+ ~~~
454
+
455
+ #### Scoped constant
456
+
457
+ Format:
458
+
459
+ ~~~
460
+ (const (lvar :a) :Foo)
461
+ "a::Foo"
462
+ ~~~ name
463
+ ~~ double_colon
464
+ ~~~~~~ expression
465
+ ~~~
466
+
467
+ #### Unscoped constant
468
+
469
+ Format:
470
+
471
+ ~~~
472
+ (const nil :Foo)
473
+ "Foo"
474
+ ~~~ name
475
+ ~~~ expression
476
+ ~~~
477
+
478
+ ### defined?
479
+
480
+ Format:
481
+
482
+ ~~~
483
+ (defined? (lvar :a))
484
+ "defined? a"
485
+ ~~~~~~~~ keyword
486
+ ~~~~~~~~~~ expression
487
+
488
+ "defined?(a)"
489
+ ~~~~~~~~ keyword
490
+ ^ begin
491
+ ^ end
492
+ ~~~~~~~~~~~ expression
493
+ ~~~
494
+
495
+ ## Assignment
496
+
497
+ ### To local variable
498
+
499
+ Format:
500
+
501
+ ~~~
502
+ (lvasgn :foo (lvar :bar))
503
+ "foo = bar"
504
+ ^ operator
505
+ ~~~~~~~~~ expression
506
+ ~~~
507
+
508
+ ### To instance variable
509
+
510
+ Format:
511
+
512
+ ~~~
513
+ (ivasgn :@foo (lvar :bar))
514
+ "@foo = bar"
515
+ ^ operator
516
+ ~~~~~~~~~~ expression
517
+ ~~~
518
+
519
+ ### To class variable
520
+
521
+ Format:
522
+
523
+ ~~~
524
+ (cvasgn :@@foo (lvar :bar))
525
+ "@@foo = bar"
526
+ ^ operator
527
+ ~~~~~~~~~~~ expression
528
+ ~~~
529
+
530
+ ### To global variable
531
+
532
+ Format:
533
+
534
+ ~~~
535
+ (gvasgn :$foo (lvar :bar))
536
+ "$foo = bar"
537
+ ^ operator
538
+ ~~~~~~~~~~ expression
539
+ ~~~
540
+
541
+ ### To constant
542
+
543
+ #### Top-level constant
544
+
545
+ Format:
546
+
547
+ ~~~
548
+ (casgn (cbase) :Foo (int 1))
549
+ "::Foo = 1"
550
+ ~~~ name
551
+ ~ operator
552
+ ~~~~~~~ expression
553
+ ~~~
554
+
555
+ #### Scoped constant
556
+
557
+ Format:
558
+
559
+ ~~~
560
+ (casgn (lvar :a) :Foo (int 1))
561
+ "a::Foo = 1"
562
+ ~~~ name
563
+ ~ operator
564
+ ~~~~~~~~ expression
565
+ ~~~
566
+
567
+ #### Unscoped constant
568
+
569
+ Format:
570
+
571
+ ~~~
572
+ (casgn nil :Foo (int 1))
573
+ "Foo = 1"
574
+ ~~~ name
575
+ ~ operator
576
+ ~~~~~~~ expression
577
+ ~~~
578
+
579
+ ### To attribute
580
+
581
+ Format:
582
+
583
+ ~~~
584
+ (send (self) :foo= (int 1))
585
+ "self.foo = 1"
586
+ ^ dot
587
+ ~~~ selector
588
+ ^ operator
589
+ ~~~~~~~~~~~~ expression
590
+ ~~~
591
+
592
+ ### To attribute, using "safe navigation operator"
593
+
594
+ Format:
595
+
596
+ ~~~
597
+ (csend (self) :foo= (int 1))
598
+ "self&.foo = 1"
599
+ ^^ dot
600
+ ~~~ selector
601
+ ^ operator
602
+ ~~~~~~~~~~~~~ expression
603
+ ~~~
604
+
605
+ ### Method reference operator
606
+
607
+ Format:
608
+
609
+ ~~~
610
+ (meth-ref (self) :foo)
611
+ "self.:foo"
612
+ ^^ dot
613
+ ^^^ selector
614
+ ^^^^^^^^^ expression
615
+ ~~~
616
+
617
+ ### Multiple assignment
618
+
619
+ #### Multiple left hand side
620
+
621
+ Format:
622
+
623
+ ~~~
624
+ (mlhs (lvasgn :a) (lvasgn :b))
625
+ "a, b"
626
+ ~~~~ expression
627
+ "(a, b)"
628
+ ^ begin
629
+ ^ end
630
+ ~~~~~~ expression
631
+ ~~~
632
+
633
+ #### Assignment
634
+
635
+ Rule of thumb: every node inside `(mlhs)` is "incomplete"; to make
636
+ it "complete", one could imagine that a corresponding node from the
637
+ mrhs is "appended" to the node in question. This applies both to
638
+ side-effect free assignments (`lvasgn`, etc) and side-effectful
639
+ assignments (`send`).
640
+
641
+ Format:
642
+
643
+ ~~~
644
+ (masgn (mlhs (lvasgn :foo) (lvasgn :bar)) (array (int 1) (int 2)))
645
+ "foo, bar = 1, 2"
646
+ ^ operator
647
+ ~~~~~~~~~~~~~~~ expression
648
+
649
+ (masgn (mlhs (ivasgn :@a) (cvasgn :@@b)) (array (splat (lvar :c))))
650
+ "@a, @@b = *c"
651
+
652
+ (masgn (mlhs (mlhs (lvasgn :a) (lvasgn :b)) (lvasgn :c)) (lvar :d))
653
+ "a, (b, c) = d"
654
+
655
+ (masgn (mlhs (send (self) :a=) (send (self) :[]= (int 1))) (lvar :a))
656
+ "self.a, self[1] = a"
657
+ ~~~
658
+
659
+ ### Binary operator-assignment
660
+
661
+ Binary operator-assignment features the same "incomplete assignments" and "incomplete calls" as [multiple assignment](#assignment-1).
662
+
663
+ #### Variable binary operator-assignment
664
+
665
+ Format:
666
+
667
+ ~~~
668
+ (op-asgn (lvasgn :a) :+ (int 1))
669
+ "a += 1"
670
+ ~~ operator
671
+ ~~~~~~ expression
672
+
673
+ (op-asgn (ivasgn :a) :+ (int 1))
674
+ "@a += 1"
675
+ ~~~
676
+
677
+ #### Method binary operator-assignment
678
+
679
+ Format:
680
+
681
+ ~~~
682
+ (op-asgn (send (ivar :@a) :b) :+ (int 1))
683
+ "@a.b += 1"
684
+ ~ selector (send)
685
+ ~~~~ expression (send)
686
+ ~~ operator (op-asgn)
687
+ ~~~~~~~~~ expression (op-asgn)
688
+
689
+ (op-asgn (send (ivar :@a) :[] (int 0) (int 1))) :+ (int 1))
690
+ "@a[0, 1] += 1"
691
+ ~~~~~~ selector (send)
692
+ ~~~~~~~~ expression (send)
693
+ ~~ operator (op-asgn)
694
+ ~~~~~~~~~~~~~ expression (op-asgn)
695
+ ~~~
696
+
697
+ ### Logical operator-assignment
698
+
699
+ Logical operator-assignment features the same "incomplete assignments" and "incomplete calls" as [multiple assignment](#assignment-1).
700
+
701
+ #### Variable logical operator-assignment
702
+
703
+ Format:
704
+
705
+ ~~~
706
+ (or-asgn (ivasgn :@a) (int 1))
707
+ "@a ||= 1"
708
+ ~~~ operator
709
+ ~~~~~~~~ expression
710
+
711
+ (and-asgn (lvasgn :a) (int 1))
712
+ "a &&= 1"
713
+ ~~~ operator
714
+ ~~~~~~~ expression
715
+ ~~~
716
+
717
+ #### Method logical operator-assignment
718
+
719
+ Format:
720
+
721
+ ~~~
722
+ (or-asgn (send (ivar :@foo) :bar) (int 1))
723
+ "@foo.bar ||= 1"
724
+ ~~~ selector (send)
725
+ ~~~~~~~~ expr (send)
726
+ ~~~ operator (or-asgn)
727
+ ~~~~~~~~~~~~~~ expression (or-asgn)
728
+
729
+ (and-asgn (send (lvar :@foo) :bar) (int 1))
730
+ "foo.bar &&= 1"
731
+ ~~~ selector (send)
732
+ ~~~~~~~ expr (send)
733
+ ~~~ operator (and-asgn)
734
+ ~~~~~~~~~~~~~ expression (and-asgn)
735
+
736
+ (or-asgn (send (ivar :@foo) :[] (int 1) (int 2)) (int 1))
737
+ "@foo[1, 2] ||= 1"
738
+ ~~~~~~ selector (send)
739
+ ~~~~~~~~~~ expr (send)
740
+ ~~~ operator (or-asgn)
741
+ ~~~~~~~~~~~~~~~~ expression (or-asgn)
742
+
743
+ ~~~
744
+
745
+ ## Class and module definition
746
+
747
+ ### Module
748
+
749
+ Format:
750
+
751
+ ~~~
752
+ (module (const nil :Foo) (nil))
753
+ "module Foo; end"
754
+ ~~~~~~ keyword
755
+ ~~~ end
756
+ ~~~
757
+
758
+ ### Class
759
+
760
+ Format:
761
+
762
+ ~~~
763
+ (class (const nil :Foo) (const nil :Bar) (nil))
764
+ "class Foo < Bar; end"
765
+ ~~~~~ keyword ~~~ end
766
+ ~ operator
767
+ ~~~~~~~~~~~~~~~~~~~~ expression
768
+
769
+ (class (const nil :Foo) nil (nil))
770
+ "class Foo; end"
771
+ ~~~~~ keyword
772
+ ~~~ end
773
+ ~~~~~~~~~~~~~~ expression
774
+ ~~~
775
+
776
+ ### Singleton class
777
+
778
+ Format:
779
+
780
+ ~~~
781
+ (sclass (lvar :a) (nil))
782
+ "class << a; end"
783
+ ~~~~~ keyword
784
+ ~~ operator
785
+ ~~~ end
786
+ ~~~~~~~~~~~~~~~ expression
787
+ ~~~
788
+
789
+ ## Method (un)definition
790
+
791
+ ### Instance methods
792
+
793
+ Format:
794
+
795
+ ~~~
796
+ (def :foo (args) nil)
797
+ "def foo; end"
798
+ ~~~ keyword
799
+ ~~~ name
800
+ ~~~ end
801
+ ~~~~~~~~~~~~ expression
802
+ ~~~
803
+
804
+ ### Singleton methods
805
+
806
+ Format:
807
+
808
+ ~~~
809
+ (defs (self) :foo (args) nil)
810
+ "def self.foo; end"
811
+ ~~~ keyword
812
+ ~~~ name
813
+ ~~~ end
814
+ ~~~~~~~~~~~~~~~~~ expression
815
+ ~~~
816
+
817
+ ### Undefinition
818
+
819
+ Format:
820
+
821
+ ~~~
822
+ (undef (sym :foo) (sym :bar) (dsym (str "foo") (int 1)))
823
+ "undef foo :bar :"foo#{1}""
824
+ ~~~~~ keyword
825
+ ~~~~~~~~~~~~~~~~~~~~~~~~~ expression
826
+ ~~~
827
+
828
+ ## Aliasing
829
+
830
+ ### Method aliasing
831
+
832
+ Format:
833
+
834
+ ~~~
835
+ (alias (sym :foo) (dsym (str "foo") (int 1)))
836
+ "alias foo :"foo#{1}""
837
+ ~~~~~ keyword
838
+ ~~~~~~~~~~~~~~~~~~~~ expression
839
+ ~~~
840
+
841
+ ### Global variable aliasing
842
+
843
+ Format:
844
+
845
+ ~~~
846
+ (alias (gvar :$foo) (gvar :$bar))
847
+ "alias $foo $bar"
848
+ ~~~~~ keyword
849
+ ~~~~~~~~~~~~~~~ expression
850
+
851
+ (alias (gvar :$foo) (back-ref :$&))
852
+ "alias $foo $&"
853
+ ~~~~~ keyword
854
+ ~~~~~~~~~~~~~~~ expression
855
+ ~~~
856
+
857
+ ## Formal arguments
858
+
859
+ Format:
860
+
861
+ ~~~
862
+ (args (arg :foo))
863
+ "(foo)"
864
+ ~~~~~ expression
865
+ ~~~
866
+
867
+ ### Required argument
868
+
869
+ Format:
870
+
871
+ ~~~
872
+ (arg :foo)
873
+ "foo"
874
+ ~~~ expression
875
+ ~~~ name
876
+ ~~~
877
+
878
+ ### Optional argument
879
+
880
+ Format:
881
+
882
+ ~~~
883
+ (optarg :foo (int 1))
884
+ "foo = 1"
885
+ ~~~~~~~ expression
886
+ ^ operator
887
+ ~~~ name
888
+ ~~~
889
+
890
+ ### Named splat argument
891
+
892
+ Format:
893
+
894
+ ~~~
895
+ (restarg :foo)
896
+ "*foo"
897
+ ~~~~ expression
898
+ ~~~ name
899
+ ~~~
900
+
901
+ Begin of the `expression` points to `*`.
902
+
903
+ ### Unnamed splat argument
904
+
905
+ Format:
906
+
907
+ ~~~
908
+ (restarg)
909
+ "*"
910
+ ^ expression
911
+ ~~~
912
+
913
+ ### Block argument
914
+
915
+ Format:
916
+
917
+ ~~~
918
+ (blockarg :foo)
919
+ "&foo"
920
+ ~~~ name
921
+ ~~~~ expression
922
+ ~~~
923
+
924
+ Begin of the `expression` points to `&`.
925
+
926
+ ### Auto-expanding proc argument (1.9)
927
+
928
+ In Ruby 1.9 and later, when a proc-like closure (i.e. a closure
929
+ created by capturing a block or with the `proc` method, but not
930
+ with the `->{}` syntax or the `lambda` method) has exactly one
931
+ argument, and it is called with more than one argument, the behavior
932
+ is as if the array of all arguments was instead passed as the sole
933
+ argument. This behavior can be prevented by adding a comma after
934
+ the sole argument (e.g. `|foo,|`).
935
+
936
+ Format:
937
+
938
+ ~~~
939
+ (procarg0 (arg :foo))
940
+ "|foo|"
941
+ ~~~ expression
942
+
943
+ (procarg0 (arg :foo) (arg :bar))
944
+ "|(foo, bar)|"
945
+ ~ begin
946
+ ~ end
947
+ ~~~~~~~~~~ expression
948
+ ~~~
949
+
950
+ ### Expression arguments
951
+
952
+ Ruby 1.8 allows to use arbitrary expressions as block arguments,
953
+ such as `@var` or `foo.bar`. Such expressions should be treated as
954
+ if they were on the lhs of a multiple assignment.
955
+
956
+ Format:
957
+
958
+ ~~~
959
+ (args (arg_expr (ivasgn :@bar)))
960
+ "|@bar|"
961
+
962
+ (args (arg_expr (send (send nil :foo) :a=)))
963
+ "|foo.a|"
964
+
965
+ (args (restarg_expr (ivasgn :@bar)))
966
+ "|*@bar|"
967
+
968
+ (args (blockarg_expr (ivasgn :@bar)))
969
+ "|&@bar|"
970
+ ~~~
971
+
972
+ ### Block shadow arguments
973
+
974
+ Format:
975
+
976
+ ~~~
977
+ (args (shadowarg :foo) (shadowarg :bar))
978
+ "|; foo, bar|"
979
+ ~~~
980
+
981
+ ### Decomposition
982
+
983
+ Format:
984
+
985
+ ~~~
986
+ (def :f (args (arg :a) (mlhs (arg :foo) (restarg :bar))))
987
+ "def f(a, (foo, *bar)); end"
988
+ ^ begin ^ end
989
+ ~~~~~~~~~~~ expression
990
+ ~~~
991
+
992
+ ### Required keyword argument
993
+
994
+ Format:
995
+
996
+ ~~~
997
+ (kwarg :foo)
998
+ "foo:"
999
+ ~~~~ expression
1000
+ ~~~~ name
1001
+ ~~~
1002
+
1003
+ ### Optional keyword argument
1004
+
1005
+ Format:
1006
+
1007
+ ~~~
1008
+ (kwoptarg :foo (int 1))
1009
+ "foo: 1"
1010
+ ~~~~~~ expression
1011
+ ~~~~ name
1012
+ ~~~
1013
+
1014
+ ### Named keyword splat argument
1015
+
1016
+ Format:
1017
+
1018
+ ~~~
1019
+ (kwrestarg :foo)
1020
+ "**foo"
1021
+ ~~~~~ expression
1022
+ ~~~ name
1023
+ ~~~
1024
+
1025
+ ### Unnamed keyword splat argument
1026
+
1027
+ Format:
1028
+
1029
+ ~~~
1030
+ (kwrestarg)
1031
+ "**"
1032
+ ~~ expression
1033
+ ~~~
1034
+
1035
+ ### Keyword nil argument
1036
+
1037
+ Format:
1038
+
1039
+ ~~~
1040
+ (kwnilarg)
1041
+ "**nil"
1042
+ ~~~ name
1043
+ ~~~~~ expression
1044
+ ~~~
1045
+
1046
+ ### Objective-C arguments
1047
+
1048
+ MacRuby includes a few more syntactic "arguments" whose name becomes
1049
+ the part of the Objective-C method name, despite looking like Ruby 2.0
1050
+ keyword arguments, and are thus treated differently.
1051
+
1052
+ #### Objective-C label-like keyword argument
1053
+
1054
+ Format:
1055
+
1056
+ ~~~
1057
+ (objc-kwarg :a :b)
1058
+ "a: b"
1059
+ ~ keyword
1060
+ ~ operator
1061
+ ~ argument
1062
+ ~~~~ expression
1063
+ ~~~
1064
+
1065
+ #### Objective-C pair-like keyword argument
1066
+
1067
+ Format:
1068
+
1069
+ ~~~
1070
+ (objc-kwarg :a :b)
1071
+ "a => b"
1072
+ ~ keyword
1073
+ ~~ operator
1074
+ ~ argument
1075
+ ~~~~~~ expression
1076
+ ~~~
1077
+
1078
+ #### Objective-C keyword splat argument
1079
+
1080
+ Format:
1081
+
1082
+ ~~~
1083
+ (objc-restarg (objc-kwarg :foo))
1084
+ "(*a: b)"
1085
+ ~ objc-kwarg.keyword
1086
+ ~ objc-kwarg.operator
1087
+ ~ objc-kwarg.argument
1088
+ ~ operator
1089
+ ~~~~~ expression
1090
+ ~~~
1091
+
1092
+ Note that these splat arguments will only be parsed inside parentheses,
1093
+ e.g. in the following code:
1094
+
1095
+ ~~~
1096
+ def f((*a: b)); end
1097
+ ~~~
1098
+
1099
+ However, the following code results in a parse error:
1100
+
1101
+ ~~~
1102
+ def f(*a: b); end
1103
+ ~~~
1104
+
1105
+ ## Numbered parameters
1106
+
1107
+ ### Block with numbered parameters
1108
+
1109
+ Ruby 2.7 introduced a feature called "numbered parameters".
1110
+ Numbered and ordinal parameters are mutually exclusive, so if the block
1111
+ has only numbered parameters it also has a different AST node.
1112
+
1113
+ Note that the second child represents a total number of numbered parameters.
1114
+
1115
+ Format:
1116
+
1117
+ ~~~
1118
+ s(:numblock,
1119
+ s(:send, nil, :proc), 3,
1120
+ s(:send,
1121
+ s(:numparam, 1), :+,
1122
+ s(:numparam, 3)))
1123
+ "proc { @1 + @3 }"
1124
+ ~ begin ~ end
1125
+ ~~~~~~~~~~~~~~~~ expression
1126
+ ~~~
1127
+
1128
+ ### Numbered parameter
1129
+
1130
+ Format:
1131
+
1132
+ ~~~
1133
+ (numparam 10)
1134
+ "@10"
1135
+ ~~~ name
1136
+ ~~~ expression
1137
+ ~~~
1138
+
1139
+ ## Send
1140
+
1141
+ ### To self
1142
+
1143
+ Format:
1144
+
1145
+ ~~~
1146
+ (send nil :foo (lvar :bar))
1147
+ "foo(bar)"
1148
+ ~~~ selector
1149
+ ^ begin
1150
+ ^ end
1151
+ ~~~~~~~~ expression
1152
+ ~~~
1153
+
1154
+ ### To receiver
1155
+
1156
+ Format:
1157
+
1158
+ ~~~
1159
+ (send (lvar :foo) :bar (int 1))
1160
+ "foo.bar(1)"
1161
+ ^ dot
1162
+ ~~~ selector
1163
+ ^ begin
1164
+ ^ end
1165
+ ~~~~~~~~~~ expression
1166
+
1167
+ (send (lvar :foo) :+ (int 1))
1168
+ "foo + 1"
1169
+ ^ selector
1170
+ ~~~~~~~ expression
1171
+
1172
+ (send (lvar :foo) :-@)
1173
+ "-foo"
1174
+ ^ selector
1175
+ ~~~~ expression
1176
+
1177
+ (send (lvar :foo) :a= (int 1))
1178
+ "foo.a = 1"
1179
+ ~ selector
1180
+ ^ operator
1181
+ ~~~~~~~~~ expression
1182
+ ~~~
1183
+
1184
+ ### To superclass
1185
+
1186
+ Format of super with arguments:
1187
+
1188
+ ~~~
1189
+ (super (lvar :a))
1190
+ "super a"
1191
+ ~~~~~ keyword
1192
+ ~~~~~~~ expression
1193
+
1194
+ (super)
1195
+ "super()"
1196
+ ^ begin
1197
+ ^ end
1198
+ ~~~~~ keyword
1199
+ ~~~~~~~ expression
1200
+ ~~~
1201
+
1202
+ Format of super without arguments (**z**ero-arity):
1203
+
1204
+ ~~~
1205
+ (zsuper)
1206
+ "super"
1207
+ ~~~~~ keyword
1208
+ ~~~~~ expression
1209
+ ~~~
1210
+
1211
+ ### To block argument
1212
+
1213
+ Format:
1214
+
1215
+ ~~~
1216
+ (yield (lvar :foo))
1217
+ "yield(foo)"
1218
+ ~~~~~ keyword
1219
+ ^ begin
1220
+ ^ end
1221
+ ~~~~~~~~~~ expression
1222
+ ~~~
1223
+
1224
+ ### Indexing
1225
+
1226
+ Format:
1227
+
1228
+ ~~~
1229
+ (index (lvar :foo) (int 1))
1230
+ "foo[1]"
1231
+ ^ begin
1232
+ ^ end
1233
+ ~~~~~~ expression
1234
+
1235
+ (indexasgn (lvar :bar) (int 1) (int 2) (lvar :baz))
1236
+ "bar[1, 2] = baz"
1237
+ ^ begin
1238
+ ^ end
1239
+ ^ operator
1240
+ ~~~~~~~~~~~~~~~ expression
1241
+
1242
+ ~~~
1243
+
1244
+ ### Passing a literal block
1245
+
1246
+ ~~~
1247
+ (block (send nil :foo) (args (arg :bar)) (begin ...))
1248
+ "foo do |bar|; end"
1249
+ ~~ begin
1250
+ ~~~ end
1251
+ ~~~~~~~~~~~~~ expression
1252
+ ~~~
1253
+
1254
+ ### Passing expression as block
1255
+
1256
+ Used when passing expression as block `foo(&bar)`
1257
+
1258
+ ~~~
1259
+ (send nil :foo (int 1) (block-pass (lvar :foo)))
1260
+ "foo(1, &foo)"
1261
+ ^ operator
1262
+ ~~~~ expression
1263
+ ~~~
1264
+
1265
+ ### "Stabby lambda"
1266
+
1267
+ ~~~
1268
+ (block (lambda) (args) nil)
1269
+ "-> {}"
1270
+ ~~ lambda.expression
1271
+ ~~~
1272
+
1273
+ ### "Safe navigation operator"
1274
+
1275
+ ~~~
1276
+ (csend (send nil :foo) :bar)
1277
+ "foo&.bar"
1278
+ ~~ dot
1279
+ ~~~
1280
+
1281
+ ### Objective-C variadic send
1282
+
1283
+ MacRuby allows to pass a variadic amount of arguments via the last
1284
+ keyword "argument". Semantically, these, together with the pair value
1285
+ of the last pair in the hash implicitly passed as the last argument,
1286
+ form an array, which replaces the pair value. Despite that, the node
1287
+ is called `objc-varargs` to distinguish it from a literal array passed
1288
+ as a value.
1289
+
1290
+ ~~~
1291
+ (send nil :foo (int 1) (hash (pair (sym :bar) (objc-varargs (int 1) (int 2) (nil)))))
1292
+ "foo(1, bar: 2, 3, nil)"
1293
+ ~~~~~~~~~ expression (array)
1294
+ ~~~
1295
+
1296
+ ## Control flow
1297
+
1298
+ ### Logical operators
1299
+
1300
+ #### Binary (and or && ||)
1301
+
1302
+ Format:
1303
+
1304
+ ~~~
1305
+ (and (lvar :foo) (lvar :bar))
1306
+ "foo and bar"
1307
+ ~~~ operator
1308
+ ~~~~~~~~~~~ expression
1309
+ ~~~
1310
+
1311
+ ~~~
1312
+ (or (lvar :foo) (lvar :bar))
1313
+ "foo or bar"
1314
+ ~~ operator
1315
+ ~~~~~~~~~~ expression
1316
+ ~~~
1317
+
1318
+ #### Unary (! not) (1.8)
1319
+
1320
+ Format:
1321
+
1322
+ ~~~
1323
+ (not (lvar :foo))
1324
+ "!foo"
1325
+ ^ operator
1326
+ "not foo"
1327
+ ~~~ operator
1328
+ ~~~
1329
+
1330
+ ### Branching
1331
+
1332
+ #### Without else
1333
+
1334
+ Format:
1335
+
1336
+ ~~~
1337
+ (if (lvar :cond) (lvar :iftrue) nil)
1338
+ "if cond then iftrue; end"
1339
+ ~~ keyword
1340
+ ~~~~ begin
1341
+ ~~~ end
1342
+ ~~~~~~~~~~~~~~~~~~~~~~~~ expression
1343
+
1344
+ "if cond; iftrue; end"
1345
+ ~~ keyword
1346
+ ~~~ end
1347
+ ~~~~~~~~~~~~~~~~~~~~ expression
1348
+
1349
+ "iftrue if cond"
1350
+ ~~ keyword
1351
+ ~~~~~~~~~~~~~~ expression
1352
+
1353
+ (if (lvar :cond) nil (lvar :iftrue))
1354
+ "unless cond then iftrue; end"
1355
+ ~~~~~~ keyword
1356
+ ~~~~ begin
1357
+ ~~~ end
1358
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1359
+
1360
+ "unless cond; iftrue; end"
1361
+ ~~~~~~ keyword
1362
+ ~~~ end
1363
+ ~~~~~~~~~~~~~~~~~~~~~~~~ expression
1364
+
1365
+ "iftrue unless cond"
1366
+ ~~~~~~ keyword
1367
+ ~~~~~~~~~~~~~~~~~~ expression
1368
+ ~~~
1369
+
1370
+ #### With else
1371
+
1372
+ Format:
1373
+
1374
+ ~~~
1375
+ (if (lvar :cond) (lvar :iftrue) (lvar :iffalse))
1376
+ "if cond then iftrue; else; iffalse; end"
1377
+ ~~ keyword
1378
+ ~~~~ begin
1379
+ ~~~~ else
1380
+ ~~~ end
1381
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1382
+
1383
+ "if cond; iftrue; else; iffalse; end"
1384
+ ~~ keyword
1385
+ ~~~~ else
1386
+ ~~~ end
1387
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1388
+
1389
+ (if (lvar :cond) (lvar :iffalse) (lvar :iftrue))
1390
+ "unless cond then iftrue; else; iffalse; end"
1391
+ ~~~~~~ keyword
1392
+ ~~~~ begin
1393
+ ~~~~ else
1394
+ ~~~ end
1395
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1396
+
1397
+ "unless cond; iftrue; else; iffalse; end"
1398
+ ~~~~~~ keyword
1399
+ ~~~~ else
1400
+ ~~~ end
1401
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1402
+ ~~~
1403
+
1404
+ #### With elsif
1405
+
1406
+ Format:
1407
+
1408
+ ~~~
1409
+ (if (lvar :cond1) (int 1) (if (lvar :cond2 (int 2) (int 3))))
1410
+ "if cond1; 1; elsif cond2; 2; else 3; end"
1411
+ ~~ keyword (left)
1412
+ ~~~~~ else (left)
1413
+ ~~~ end (left)
1414
+ ~~~~~ keyword (right)
1415
+ ~~~~ else (right)
1416
+ ~~~ end (right)
1417
+ ~~~
1418
+
1419
+ #### Ternary
1420
+
1421
+ Format:
1422
+
1423
+ ~~~
1424
+ (if (lvar :cond) (lvar :iftrue) (lvar :iffalse))
1425
+ "cond ? iftrue : iffalse"
1426
+ ^ question
1427
+ ^ colon
1428
+ ~~~~~~~~~~~~~~~~~~~~~~~ expression
1429
+ ~~~
1430
+
1431
+ ### Case matching
1432
+
1433
+ #### When clause
1434
+
1435
+ Format:
1436
+
1437
+ ~~~
1438
+ (when (regexp "foo" (regopt)) (begin (lvar :bar)))
1439
+ "when /foo/ then bar"
1440
+ ~~~~ keyword
1441
+ ~~~~ begin
1442
+ ~~~~~~~~~~~~~~~~~~~ expression
1443
+
1444
+ (when (int 1) (int 2) (send nil :meth))
1445
+ "when 1, 2; meth"
1446
+
1447
+ (when (int 1) (splat (lvar :foo)) (send nil :meth))
1448
+ "when 1, *foo; meth"
1449
+
1450
+ (when (splat (lvar :foo)) (send nil :meth))
1451
+ "when *foo; meth"
1452
+ ~~~
1453
+
1454
+ #### Case-expression clause
1455
+
1456
+ ##### Without else
1457
+
1458
+ Format:
1459
+
1460
+ ~~~
1461
+ (case (lvar :foo) (when (str "bar") (lvar :bar)) nil)
1462
+ "case foo; when "bar"; bar; end"
1463
+ ~~~~ keyword ~~~ end
1464
+ ~~~
1465
+
1466
+ ##### With else
1467
+
1468
+ Format:
1469
+
1470
+ ~~~
1471
+ (case (lvar :foo) (when (str "bar") (lvar :bar)) (lvar :baz))
1472
+ "case foo; when "bar"; bar; else baz; end"
1473
+ ~~~~ keyword ~~~~ else ~~~ end
1474
+ ~~~
1475
+
1476
+ #### Case-conditions clause
1477
+
1478
+ ##### Without else
1479
+
1480
+ Format:
1481
+
1482
+ ~~~
1483
+ (case nil (when (lvar :bar) (lvar :bar)) nil)
1484
+ "case; when bar; bar; end"
1485
+ ~~~~ keyword ~~~ end
1486
+ ~~~
1487
+
1488
+ ##### With else
1489
+
1490
+ Format:
1491
+
1492
+ ~~~
1493
+ (case nil (when (lvar :bar) (lvar :bar)) (lvar :baz))
1494
+ "case; when bar; bar; else baz; end"
1495
+ ~~~~ keyword ~~~~ else ~~~ end
1496
+
1497
+ (case nil (lvar :baz))
1498
+ "case; else baz; end"
1499
+ ~~~~ keyword
1500
+ ~~~~ else
1501
+ ~~~ end
1502
+ ~~~
1503
+
1504
+ ### Looping
1505
+
1506
+ #### With precondition
1507
+
1508
+ Format:
1509
+
1510
+ ~~~
1511
+ (while (lvar :condition) (send nil :foo))
1512
+ "while condition do foo; end"
1513
+ ~~~~~ keyword
1514
+ ~~ begin
1515
+ ~~~ end
1516
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1517
+
1518
+ "while condition; foo; end"
1519
+ ~~~~~ keyword
1520
+ ~~~ end
1521
+ ~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1522
+
1523
+ "foo while condition"
1524
+ ~~~~~ keyword
1525
+ ~~~~~~~~~~~~~~~~~~~ expression
1526
+
1527
+ (until (lvar :condition) (send nil :foo))
1528
+ "until condition do foo; end"
1529
+ ~~~~~ keyword
1530
+ ~~ begin
1531
+ ~~~ end
1532
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1533
+
1534
+ (until (lvar :condition) (send nil :foo))
1535
+ "until condition; foo; end"
1536
+ ~~~~~ keyword
1537
+ ~~~ end
1538
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1539
+
1540
+ "foo until condition"
1541
+ ~~~~~ keyword
1542
+ ~~~~~~~~~~~~~~~~~~~ expression
1543
+ ~~~
1544
+
1545
+ #### With postcondition
1546
+
1547
+ Format:
1548
+
1549
+ ~~~
1550
+ (while-post (lvar :condition) (kwbegin (send nil :foo)))
1551
+ "begin; foo; end while condition"
1552
+ ~~~~~ begin (begin)
1553
+ ~~~ end (begin)
1554
+ ~~~~~ keyword (while-post)
1555
+
1556
+ (until-post (lvar :condition) (kwbegin (send nil :foo)))
1557
+ "begin; foo; end until condition"
1558
+ ~~~~~ begin (begin)
1559
+ ~~~ end (begin)
1560
+ ~~~~~ keyword (until-post)
1561
+ ~~~
1562
+
1563
+ #### For-in
1564
+
1565
+ Format:
1566
+
1567
+ ~~~
1568
+ (for (lvasgn :a) (lvar :array) (send nil :p (lvar :a)))
1569
+ "for a in array do p a; end"
1570
+ ~~~ keyword
1571
+ ~~ in
1572
+ ~~ begin
1573
+ ~~~ end
1574
+
1575
+ "for a in array; p a; end"
1576
+ ~~~ keyword
1577
+ ~~ in
1578
+ ~~~ end
1579
+
1580
+ (for
1581
+ (mlhs (lvasgn :a) (lvasgn :b)) (lvar :array)
1582
+ (send nil :p (lvar :a) (lvar :b)))
1583
+ "for a, b in array; p a, b; end"
1584
+ ~~~
1585
+
1586
+ #### Break
1587
+
1588
+ Format:
1589
+
1590
+ ~~~
1591
+ (break (int 1))
1592
+ "break 1"
1593
+ ~~~~~ keyword
1594
+ ~~~~~~~ expression
1595
+ ~~~
1596
+
1597
+ #### Next
1598
+
1599
+ Format:
1600
+
1601
+ ~~~
1602
+ (next (int 1))
1603
+ "next 1"
1604
+ ~~~~ keyword
1605
+ ~~~~~~ expression
1606
+ ~~~
1607
+
1608
+ #### Redo
1609
+
1610
+ Format:
1611
+
1612
+ ~~~
1613
+ (redo)
1614
+ "redo"
1615
+ ~~~~ keyword
1616
+ ~~~~ expression
1617
+ ~~~
1618
+
1619
+ ### Return
1620
+
1621
+ Format:
1622
+
1623
+ ~~~
1624
+ (return (lvar :foo))
1625
+ "return(foo)"
1626
+ ~~~~~~ keyword
1627
+ ~~~~~~~~~~~ expression
1628
+ ~~~
1629
+
1630
+ ### Exception handling
1631
+
1632
+ #### Rescue body
1633
+
1634
+ Format:
1635
+
1636
+ ~~~
1637
+ (resbody (array (const nil :Exception) (const nil :A)) (lvasgn :bar) (int 1))
1638
+ "rescue Exception, A => bar; 1"
1639
+ ~~~~~~ keyword ~~ assoc
1640
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression
1641
+
1642
+ "rescue Exception, A => bar then 1"
1643
+ ~~~~~~ keyword ~~ assoc
1644
+ ~~~~ begin
1645
+
1646
+ (resbody (array (const nil :Exception)) (ivasgn :bar) (int 1))
1647
+ "rescue Exception => @bar; 1"
1648
+ ~~~~~~ keyword ~~ assoc
1649
+
1650
+ (resbody nil (lvasgn :bar) (int 1))
1651
+ "rescue => bar; 1"
1652
+ ~~~~~~ keyword
1653
+ ~~ assoc
1654
+
1655
+ (resbody nil nil (int 1))
1656
+ "rescue; 1"
1657
+ ~~~~~~ keyword
1658
+ ~~~
1659
+
1660
+ #### Rescue statement
1661
+
1662
+ ##### Without else
1663
+
1664
+ Format:
1665
+
1666
+ ~~~
1667
+ (begin
1668
+ (rescue (send nil :foo) (resbody ...) (resbody ...) nil))
1669
+ "begin; foo; rescue Exception; rescue; end"
1670
+ ~~~~~ begin ~~~ end
1671
+ ~~~~~~~~~~~~~~~~~ expression (rescue.resbody/1)
1672
+ ~~~~~~~ expression (rescue.resbody/2)
1673
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression (rescue)
1674
+ ~~~
1675
+
1676
+ ##### With else
1677
+
1678
+ Format:
1679
+
1680
+ ~~~
1681
+ (begin
1682
+ (rescue (send nil :foo) (resbody ...) (resbody ...) (true)))
1683
+ "begin; foo; rescue Exception; rescue; else true end"
1684
+ ~~~~~ begin ~~~~ else (rescue)
1685
+ ~~~ end
1686
+ ~~~
1687
+
1688
+ #### Ensure statement
1689
+
1690
+ Format:
1691
+
1692
+ ~~~
1693
+ (begin
1694
+ (ensure (send nil :foo) (send nil :bar))
1695
+ "begin; foo; ensure; bar; end"
1696
+ ~~~~~ begin ~~~~~~ keyword (ensure)
1697
+ ~~~ end
1698
+ ~~~
1699
+
1700
+ #### Rescue with ensure
1701
+
1702
+ Format:
1703
+
1704
+ ~~~
1705
+ (begin
1706
+ (ensure
1707
+ (rescue (send nil :foo) (resbody ...) (int 1))
1708
+ (send nil :bar))
1709
+ "begin; foo; rescue; nil; else; 1; ensure; bar; end"
1710
+ ~~~~~ begin
1711
+ ~~~~ else (ensure.rescue)
1712
+ ~~~~~~~~~~~~~~~~~~~~~ expression (rescue)
1713
+ ~~~~~~ keyword (ensure)
1714
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ expression (ensure)
1715
+ ~~~ end
1716
+ ~~~
1717
+
1718
+ #### Retry
1719
+
1720
+ Format:
1721
+
1722
+ ~~~
1723
+ (retry)
1724
+ "retry"
1725
+ ~~~~~ keyword
1726
+ ~~~~~ expression
1727
+ ~~~
1728
+
1729
+ ### BEGIN and END
1730
+
1731
+ Format:
1732
+
1733
+ ~~~
1734
+ (preexe (send nil :puts (str "foo")))
1735
+ "BEGIN { puts "foo" }"
1736
+ ~~~~~ keyword
1737
+ ^ begin ^ end
1738
+ ~~~~~~~~~~~~~~~~~~~~ expression
1739
+
1740
+ (postexe (send nil :puts (str "bar")))
1741
+ "END { puts "bar" }"
1742
+ ~~~ keyword
1743
+ ^ begin ^ end
1744
+ ~~~~~~~~~~~~~~~~~~ expression
1745
+ ~~~
1746
+
1747
+ ## Miscellanea
1748
+
1749
+ ### Flip-flops
1750
+
1751
+ Format:
1752
+
1753
+ ~~~
1754
+ (iflipflop (lvar :a) (lvar :b))
1755
+ "if a..b; end"
1756
+ ~~ operator
1757
+ ~~~~ expression
1758
+
1759
+ (eflipflop (lvar :a) (lvar :b))
1760
+ "if a...b; end"
1761
+ ~~~ operator
1762
+ ~~~~~ expression
1763
+ ~~~
1764
+
1765
+ ### Implicit matches
1766
+
1767
+ Format:
1768
+
1769
+ ~~~
1770
+ (match-current-line (regexp (str "a") (regopt)))
1771
+ "if /a/; end"
1772
+ ~~~ expression
1773
+ ~~~
1774
+
1775
+ ### Local variable injecting matches
1776
+
1777
+ Format:
1778
+
1779
+ ~~~
1780
+ (match-with-lvasgn (regexp (str "(?<match>bar)") (regopt)) (lvar :baz))
1781
+ "/(?<match>bar)/ =~ baz"
1782
+ ~~ selector
1783
+ ~~~~~~~~~~~~~~~~~~~~~~ expression
1784
+ ~~~
1785
+
1786
+ ## Special constants
1787
+
1788
+ ### File
1789
+
1790
+ Format:
1791
+
1792
+ ~~~
1793
+ (__FILE__)
1794
+ "__FILE__"
1795
+ ~~~~~~~~ expression
1796
+ ~~~
1797
+
1798
+ ### Line
1799
+
1800
+ Format:
1801
+
1802
+ ~~~
1803
+ (__LINE__)
1804
+ "__LINE__"
1805
+ ~~~~~~~~ expression
1806
+ ~~~
1807
+
1808
+ ### Encoding
1809
+
1810
+ Format:
1811
+
1812
+ ~~~
1813
+ (__ENCODING__)
1814
+ "__ENCODING__"
1815
+ ~~~~~~~~~~~~ expression
1816
+ ~~~