brakeman 5.2.3 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES.md +111 -0
- data/README.md +8 -5
- data/bundle/load.rb +15 -15
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/LICENSE.txt +33 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/NEWS.md +965 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/README.md +55 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/core_ext/array.rb +9 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/core_ext/string.rb +9 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/fields_converter.rb +96 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/input_record_separator.rb +18 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/parser.rb +1292 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/row.rb +757 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/table.rb +1055 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/version.rb +6 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv/writer.rb +209 -0
- data/bundle/ruby/3.1.0/gems/csv-3.3.2/lib/csv.rb +3017 -0
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/Changelog.md +34 -0
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/Gemfile +3 -5
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/README.md +41 -3
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/highline.gemspec +6 -1
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/io_console_compatible.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/menu.rb +0 -0
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/question/answer_converter.rb +2 -5
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/question.rb +23 -13
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/question_asker.rb +3 -1
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/style.rb +0 -0
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/terminal/io_console.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/terminal/unix_stty.rb +6 -4
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/terminal.rb +8 -6
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/version.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline.rb +27 -6
- data/bundle/ruby/3.1.0/gems/parallel-1.26.3/lib/parallel/version.rb +4 -0
- data/bundle/ruby/{2.7.0/gems/parallel-1.22.1 → 3.1.0/gems/parallel-1.26.3}/lib/parallel.rb +109 -13
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/COPYING +56 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/README.md +94 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/config.rb +373 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/face.rb +199 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/history.rb +76 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/io/ansi.rb +325 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/io/dumb.rb +120 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/io/windows.rb +530 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/io.rb +55 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor/base.rb +37 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor/composite.rb +17 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor/emacs.rb +517 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor/vi_command.rb +518 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor/vi_insert.rb +517 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_actor.rb +8 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/key_stroke.rb +119 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/kill_ring.rb +125 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/line_editor.rb +2382 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/unicode/east_asian_width.rb +1267 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/unicode.rb +415 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline/version.rb +3 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/lib/reline.rb +519 -0
- data/bundle/ruby/3.1.0/gems/reline-0.6.0/license_of_rb-readline +25 -0
- data/bundle/ruby/3.1.0/gems/rexml-3.4.0/LICENSE.txt +22 -0
- data/bundle/ruby/3.1.0/gems/rexml-3.4.0/NEWS.md +675 -0
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/README.md +10 -1
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/attribute.rb +17 -11
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/document.rb +6 -2
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/element.rb +19 -34
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/entity.rb +9 -38
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/formatters/pretty.rb +3 -3
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/functions.rb +1 -2
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/namespace.rb +8 -4
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/node.rb +8 -4
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parseexception.rb +1 -0
- data/bundle/ruby/3.1.0/gems/rexml-3.4.0/lib/rexml/parsers/baseparser.rb +866 -0
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/pullparser.rb +16 -0
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/sax2parser.rb +16 -19
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/streamparser.rb +16 -10
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/treeparser.rb +9 -21
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/xpathparser.rb +136 -86
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/rexml.rb +3 -1
- data/bundle/ruby/3.1.0/gems/rexml-3.4.0/lib/rexml/source.rb +369 -0
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/text.rb +60 -61
- data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/xpath_parser.rb +7 -3
- data/bundle/ruby/{2.7.0/gems/ruby2ruby-2.4.4 → 3.1.0/gems/ruby2ruby-2.5.1}/History.rdoc +22 -0
- data/bundle/ruby/{2.7.0/gems/ruby2ruby-2.4.4 → 3.1.0/gems/ruby2ruby-2.5.1}/lib/ruby2ruby.rb +162 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/History.rdoc +48 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/Manifest.txt +2 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/README.rdoc +2 -1
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/compare/normalize.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby20_parser.rb +4267 -4284
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby20_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby21_parser.rb +4241 -4240
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby21_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby22_parser.rb +4289 -4290
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby22_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby23_parser.rb +4274 -4243
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby23_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby24_parser.rb +4279 -4298
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby24_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby25_parser.rb +4270 -4289
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby25_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby26_parser.rb +4270 -4289
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby26_parser.y +50 -26
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby27_parser.rb +4189 -4206
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby27_parser.y +63 -27
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby30_parser.rb +6037 -5963
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby30_parser.y +148 -87
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby31_parser.rb +6213 -6186
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1/lib/ruby3_parser.yy → 3.1.0/gems/ruby_parser-3.20.3/lib/ruby31_parser.y} +149 -143
- data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby32_parser.rb +13601 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1/lib/ruby31_parser.y → 3.1.0/gems/ruby_parser-3.20.3/lib/ruby32_parser.y} +171 -109
- data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby3_parser.yy +3635 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_lexer.rb +26 -11
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_lexer.rex.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_lexer_strings.rb +2 -2
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_parser.rb +2 -0
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_parser.yy +63 -27
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_parser_extras.rb +36 -23
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/tools/munge.rb +8 -2
- data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/tools/ripper.rb +14 -12
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/History.rdoc +31 -0
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/pt_testcase.rb +3 -3
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/sexp.rb +9 -3
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/sexp_matcher.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/sexp_processor.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/strict_sexp.rb +6 -5
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/CHANGES +44 -8
- data/bundle/ruby/3.1.0/gems/slim-5.2.1/Gemfile +43 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/LICENSE +1 -1
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/README.jp.md +28 -41
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/README.md +66 -43
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/code_attributes.rb +2 -1
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/command.rb +2 -8
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/controls.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/do_inserter.rb +4 -3
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/embedded.rb +17 -17
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/end_inserter.rb +3 -2
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/engine.rb +3 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/erb_converter.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/filter.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/grammar.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/include.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/interpolation.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/logic_less/context.rb +6 -7
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/logic_less/filter.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/logic_less.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/parser.rb +26 -39
- data/bundle/ruby/3.1.0/gems/slim-5.2.1/lib/slim/railtie.rb +19 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/smart/escaper.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/smart/filter.rb +3 -2
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/smart/parser.rb +4 -3
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/smart.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/splat/builder.rb +16 -8
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/splat/filter.rb +6 -4
- data/bundle/ruby/3.1.0/gems/slim-5.2.1/lib/slim/template.rb +6 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/translator.rb +4 -3
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim/version.rb +2 -1
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/lib/slim.rb +2 -0
- data/bundle/ruby/{2.7.0/gems/slim-4.1.0 → 3.1.0/gems/slim-5.2.1}/slim.gemspec +14 -5
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/CHANGES +39 -1
- data/bundle/ruby/3.1.0/gems/temple-0.10.3/Gemfile +2 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/README.md +1 -1
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/engine.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/erb/engine.rb +3 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/erb/parser.rb +2 -1
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/erb/template.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/erb/trimming.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/exceptions.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filter.rb +1 -0
- data/bundle/ruby/3.1.0/gems/temple-0.10.3/lib/temple/filters/ambles.rb +22 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/code_merger.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/control_flow.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/dynamic_inliner.rb +2 -1
- data/bundle/ruby/3.1.0/gems/temple-0.10.3/lib/temple/filters/dynamic_merger.rb +69 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/encoding.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/eraser.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/escapable.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/multi_flattener.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/remove_bom.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/static_analyzer.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/static_merger.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/string_splitter.rb +13 -1
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/filters/validator.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generator.rb +5 -2
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generators/array.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generators/array_buffer.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generators/erb.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generators/rails_output_buffer.rb +4 -4
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/generators/string_buffer.rb +2 -1
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/grammar.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/attribute_merger.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/attribute_remover.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/attribute_sorter.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/dispatcher.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/fast.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/filter.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/pretty.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/html/safe.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/map.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/mixins/dispatcher.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/mixins/engine_dsl.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/mixins/grammar_dsl.rb +4 -2
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/mixins/options.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/mixins/template.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/parser.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/static_analyzer.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/templates/rails.rb +7 -2
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/templates/tilt.rb +2 -9
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/templates.rb +1 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple/utils.rb +5 -15
- data/bundle/ruby/3.1.0/gems/temple-0.10.3/lib/temple/version.rb +4 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/lib/temple.rb +3 -0
- data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/temple.gemspec +4 -6
- data/bundle/ruby/3.1.0/gems/terminal-table-3.0.2/History.rdoc +142 -0
- data/bundle/ruby/3.1.0/gems/terminal-table-3.0.2/README.md +417 -0
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/cell.rb +8 -8
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/row.rb +18 -4
- data/bundle/ruby/3.1.0/gems/terminal-table-3.0.2/lib/terminal-table/separator.rb +66 -0
- data/bundle/ruby/3.1.0/gems/terminal-table-3.0.2/lib/terminal-table/style.rb +284 -0
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/table.rb +47 -18
- data/bundle/ruby/3.1.0/gems/terminal-table-3.0.2/lib/terminal-table/util.rb +13 -0
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/version.rb +1 -1
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table.rb +2 -2
- data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/terminal-table.gemspec +3 -3
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/COPYING +1 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/_emacs_org.rb +2 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/_handlebars.rb +2 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/_jbuilder.rb +2 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/_org.rb +2 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/asciidoc.rb +15 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/babel.rb +8 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/builder.rb +42 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/cli.rb +134 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/coffee.rb +39 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/commonmarker.rb +95 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/creole.rb +16 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/csv.rb +6 -18
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/erb.rb +23 -21
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/erubi.rb +55 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/etanni.rb +5 -4
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/haml.rb +94 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/kramdown.rb +13 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/liquid.rb +10 -17
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/livescript.rb +11 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/mapping.rb +228 -109
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/markaby.rb +5 -7
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/nokogiri.rb +11 -10
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/pandoc.rb +39 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/pipeline.rb +19 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/plain.rb +5 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/prawn.rb +28 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/radius.rb +41 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/rdiscount.rb +23 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/rdoc.rb +11 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/redcarpet.rb +31 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/redcloth.rb +13 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/rst-pandoc.rb +10 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/sass.rb +78 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/slim.rb +5 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/string.rb +9 -3
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/template.rb +479 -0
- data/bundle/ruby/3.1.0/gems/tilt-2.5.0/lib/tilt/typescript.rb +19 -0
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt/yajl.rb +5 -11
- data/bundle/ruby/{2.7.0/gems/tilt-2.0.10 → 3.1.0/gems/tilt-2.5.0}/lib/tilt.rb +60 -42
- data/bundle/ruby/{2.7.0/gems/unicode-display_width-1.8.0 → 3.1.0/gems/unicode-display_width-2.6.0}/CHANGELOG.md +65 -2
- data/bundle/ruby/{2.7.0/gems/unicode-display_width-1.8.0 → 3.1.0/gems/unicode-display_width-2.6.0}/MIT-LICENSE.txt +1 -1
- data/bundle/ruby/{2.7.0/gems/unicode-display_width-1.8.0 → 3.1.0/gems/unicode-display_width-2.6.0}/README.md +67 -20
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/data/display_width.marshal.gz +0 -0
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/lib/unicode/display_width/constants.rb +10 -0
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/lib/unicode/display_width/index.rb +34 -0
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/lib/unicode/display_width/no_string_ext.rb +8 -0
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/lib/unicode/display_width/string_ext.rb +9 -0
- data/bundle/ruby/3.1.0/gems/unicode-display_width-2.6.0/lib/unicode/display_width.rb +123 -0
- data/lib/brakeman/app_tree.rb +40 -13
- data/lib/brakeman/checks/base_check.rb +2 -3
- data/lib/brakeman/checks/check_basic_auth.rb +4 -2
- data/lib/brakeman/checks/check_basic_auth_timing_attack.rb +2 -1
- data/lib/brakeman/checks/check_content_tag.rb +16 -9
- data/lib/brakeman/checks/check_cookie_serialization.rb +2 -1
- data/lib/brakeman/checks/check_create_with.rb +4 -2
- data/lib/brakeman/checks/check_cross_site_scripting.rb +6 -3
- data/lib/brakeman/checks/check_csrf_token_forgery_cve.rb +2 -1
- data/lib/brakeman/checks/check_default_routes.rb +6 -3
- data/lib/brakeman/checks/check_deserialize.rb +6 -2
- data/lib/brakeman/checks/check_detailed_exceptions.rb +4 -2
- data/lib/brakeman/checks/check_digest_dos.rb +2 -1
- data/lib/brakeman/checks/check_divide_by_zero.rb +2 -1
- data/lib/brakeman/checks/check_dynamic_finders.rb +2 -1
- data/lib/brakeman/checks/check_eol_rails.rb +6 -0
- data/lib/brakeman/checks/check_eol_ruby.rb +4 -1
- data/lib/brakeman/checks/check_escape_function.rb +2 -1
- data/lib/brakeman/checks/check_evaluation.rb +21 -2
- data/lib/brakeman/checks/check_execute.rb +34 -3
- data/lib/brakeman/checks/check_file_access.rb +2 -1
- data/lib/brakeman/checks/check_file_disclosure.rb +2 -1
- data/lib/brakeman/checks/check_filter_skipping.rb +2 -1
- data/lib/brakeman/checks/check_force_ssl.rb +2 -1
- data/lib/brakeman/checks/check_forgery_setting.rb +4 -2
- data/lib/brakeman/checks/check_header_dos.rb +2 -1
- data/lib/brakeman/checks/check_i18n_xss.rb +2 -1
- data/lib/brakeman/checks/check_jruby_xml.rb +2 -1
- data/lib/brakeman/checks/check_json_encoding.rb +2 -1
- data/lib/brakeman/checks/check_json_entity_escape.rb +4 -2
- data/lib/brakeman/checks/check_json_parsing.rb +4 -2
- data/lib/brakeman/checks/check_link_to.rb +2 -1
- data/lib/brakeman/checks/check_link_to_href.rb +4 -2
- data/lib/brakeman/checks/check_mail_to.rb +2 -1
- data/lib/brakeman/checks/check_mass_assignment.rb +6 -3
- data/lib/brakeman/checks/check_mime_type_dos.rb +2 -1
- data/lib/brakeman/checks/check_model_attr_accessible.rb +3 -1
- data/lib/brakeman/checks/check_model_attributes.rb +4 -2
- data/lib/brakeman/checks/check_model_serialize.rb +2 -1
- data/lib/brakeman/checks/check_nested_attributes.rb +2 -1
- data/lib/brakeman/checks/check_nested_attributes_bypass.rb +2 -1
- data/lib/brakeman/checks/check_number_to_currency.rb +4 -2
- data/lib/brakeman/checks/check_page_caching_cve.rb +2 -1
- data/lib/brakeman/checks/check_pathname.rb +48 -0
- data/lib/brakeman/checks/check_permit_attributes.rb +2 -1
- data/lib/brakeman/checks/check_quote_table_name.rb +2 -1
- data/lib/brakeman/checks/check_ransack.rb +53 -0
- data/lib/brakeman/checks/check_redirect.rb +67 -31
- data/lib/brakeman/checks/check_regex_dos.rb +2 -1
- data/lib/brakeman/checks/check_render.rb +10 -3
- data/lib/brakeman/checks/check_render_dos.rb +2 -1
- data/lib/brakeman/checks/check_render_inline.rb +4 -2
- data/lib/brakeman/checks/check_response_splitting.rb +2 -1
- data/lib/brakeman/checks/check_reverse_tabnabbing.rb +2 -1
- data/lib/brakeman/checks/check_route_dos.rb +2 -1
- data/lib/brakeman/checks/check_safe_buffer_manipulation.rb +2 -1
- data/lib/brakeman/checks/check_sanitize_config_cve.rb +120 -0
- data/lib/brakeman/checks/check_sanitize_methods.rb +6 -3
- data/lib/brakeman/checks/check_secrets.rb +2 -1
- data/lib/brakeman/checks/check_select_tag.rb +2 -1
- data/lib/brakeman/checks/check_select_vulnerability.rb +2 -1
- data/lib/brakeman/checks/check_send.rb +2 -1
- data/lib/brakeman/checks/check_session_manipulation.rb +2 -1
- data/lib/brakeman/checks/check_session_settings.rb +8 -6
- data/lib/brakeman/checks/check_simple_format.rb +4 -2
- data/lib/brakeman/checks/check_single_quotes.rb +2 -1
- data/lib/brakeman/checks/check_skip_before_filter.rb +4 -2
- data/lib/brakeman/checks/check_sprockets_path_traversal.rb +2 -1
- data/lib/brakeman/checks/check_sql.rb +5 -3
- data/lib/brakeman/checks/check_sql_cves.rb +4 -2
- data/lib/brakeman/checks/check_ssl_verify.rb +2 -1
- data/lib/brakeman/checks/check_strip_tags.rb +6 -3
- data/lib/brakeman/checks/check_symbol_dos.rb +2 -1
- data/lib/brakeman/checks/check_symbol_dos_cve.rb +2 -1
- data/lib/brakeman/checks/check_template_injection.rb +2 -1
- data/lib/brakeman/checks/check_translate_bug.rb +2 -1
- data/lib/brakeman/checks/check_unsafe_reflection.rb +2 -1
- data/lib/brakeman/checks/check_unsafe_reflection_methods.rb +2 -1
- data/lib/brakeman/checks/check_unscoped_find.rb +10 -1
- data/lib/brakeman/checks/check_validation_regex.rb +2 -1
- data/lib/brakeman/checks/check_verb_confusion.rb +2 -1
- data/lib/brakeman/checks/check_weak_hash.rb +6 -3
- data/lib/brakeman/checks/check_weak_rsa_key.rb +112 -0
- data/lib/brakeman/checks/check_without_protection.rb +2 -1
- data/lib/brakeman/checks/check_xml_dos.rb +2 -1
- data/lib/brakeman/checks/check_yaml_parsing.rb +4 -2
- data/lib/brakeman/checks/eol_check.rb +4 -2
- data/lib/brakeman/file_parser.rb +35 -2
- data/lib/brakeman/options.rb +42 -5
- data/lib/brakeman/parsers/erubis_patch.rb +11 -0
- data/lib/brakeman/parsers/rails2_erubis.rb +3 -0
- data/lib/brakeman/parsers/rails2_xss_plugin_erubis.rb +4 -0
- data/lib/brakeman/parsers/rails3_erubis.rb +5 -1
- data/lib/brakeman/parsers/slim_embedded.rb +2 -0
- data/lib/brakeman/processors/alias_processor.rb +124 -41
- data/lib/brakeman/processors/gem_processor.rb +2 -2
- data/lib/brakeman/processors/lib/file_type_detector.rb +9 -7
- data/lib/brakeman/processors/lib/find_all_calls.rb +1 -0
- data/lib/brakeman/processors/lib/module_helper.rb +31 -1
- data/lib/brakeman/processors/lib/rails3_config_processor.rb +1 -1
- data/lib/brakeman/processors/library_processor.rb +6 -0
- data/lib/brakeman/report/ignore/config.rb +0 -1
- data/lib/brakeman/report/pager.rb +1 -1
- data/lib/brakeman/report/report_codeclimate.rb +1 -1
- data/lib/brakeman/report/report_csv.rb +2 -0
- data/lib/brakeman/report/report_github.rb +1 -1
- data/lib/brakeman/report/report_junit.rb +2 -2
- data/lib/brakeman/report/report_markdown.rb +1 -1
- data/lib/brakeman/report/report_sarif.rb +122 -2
- data/lib/brakeman/report/report_table.rb +7 -7
- data/lib/brakeman/report/report_tabs.rb +0 -1
- data/lib/brakeman/report/report_text.rb +10 -1
- data/lib/brakeman/report/templates/controller_warnings.html.erb +2 -0
- data/lib/brakeman/report/templates/ignored_warnings.html.erb +2 -0
- data/lib/brakeman/report/templates/model_warnings.html.erb +2 -0
- data/lib/brakeman/report/templates/security_warnings.html.erb +2 -0
- data/lib/brakeman/report/templates/view_warnings.html.erb +2 -0
- data/lib/brakeman/rescanner.rb +40 -388
- data/lib/brakeman/scanner.rb +161 -76
- data/lib/brakeman/tracker/config.rb +89 -34
- data/lib/brakeman/tracker/controller.rb +14 -10
- data/lib/brakeman/tracker/file_cache.rb +83 -0
- data/lib/brakeman/tracker.rb +21 -4
- data/lib/brakeman/util.rb +21 -7
- data/lib/brakeman/version.rb +1 -1
- data/lib/brakeman/warning.rb +6 -3
- data/lib/brakeman/warning_codes.rb +6 -0
- data/lib/brakeman.rb +22 -7
- data/lib/ruby_parser/bm_sexp.rb +5 -1
- metadata +438 -422
- data/bundle/ruby/2.7.0/gems/highline-2.0.3/appveyor.yml +0 -37
- data/bundle/ruby/2.7.0/gems/parallel-1.22.1/lib/parallel/processor_count.rb +0 -44
- data/bundle/ruby/2.7.0/gems/parallel-1.22.1/lib/parallel/version.rb +0 -4
- data/bundle/ruby/2.7.0/gems/rexml-3.2.5/NEWS.md +0 -178
- data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/baseparser.rb +0 -694
- data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/source.rb +0 -298
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/History.rdoc +0 -6
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/Manifest.txt +0 -19
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/README.rdoc +0 -54
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.rb +0 -5794
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.y +0 -1909
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.rb +0 -6186
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.y +0 -2117
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rb +0 -1412
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex +0 -179
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex.rb +0 -323
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser.rb +0 -30
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser_extras.rb +0 -1388
- data/bundle/ruby/2.7.0/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy.rb +0 -5
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/CHANGES.md +0 -154
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/Gemfile +0 -11
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/LICENSE.txt +0 -22
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/README.md +0 -191
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/bundle_install_all_ruby_versions.sh +0 -11
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/deep.rb +0 -34
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/libyaml_checker.rb +0 -36
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/load.rb +0 -181
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/date.rb +0 -37
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/hexadecimal.rb +0 -12
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/sexagesimal.rb +0 -26
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/psych_handler.rb +0 -99
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/psych_resolver.rb +0 -52
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/resolver.rb +0 -94
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/safe_to_ruby_visitor.rb +0 -29
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/store.rb +0 -39
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_hack.rb +0 -36
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_node_monkeypatch.rb +0 -43
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_resolver.rb +0 -38
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_boolean.rb +0 -21
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_date.rb +0 -13
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_float.rb +0 -33
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_integer.rb +0 -26
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_nil.rb +0 -18
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_symbol.rb +0 -17
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/transformation_map.rb +0 -47
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/transform.rb +0 -41
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml/version.rb +0 -3
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/lib/safe_yaml.rb +0 -94
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/run_specs_all_ruby_versions.sh +0 -38
- data/bundle/ruby/2.7.0/gems/safe_yaml-1.0.5/safe_yaml.gemspec +0 -19
- data/bundle/ruby/2.7.0/gems/slim-4.1.0/Gemfile +0 -70
- data/bundle/ruby/2.7.0/gems/slim-4.1.0/lib/slim/template.rb +0 -19
- data/bundle/ruby/2.7.0/gems/temple-0.8.2/Gemfile +0 -3
- data/bundle/ruby/2.7.0/gems/temple-0.8.2/lib/temple/version.rb +0 -3
- data/bundle/ruby/2.7.0/gems/terminal-table-1.8.0/History.rdoc +0 -85
- data/bundle/ruby/2.7.0/gems/terminal-table-1.8.0/README.rdoc +0 -247
- data/bundle/ruby/2.7.0/gems/terminal-table-1.8.0/lib/terminal-table/separator.rb +0 -14
- data/bundle/ruby/2.7.0/gems/terminal-table-1.8.0/lib/terminal-table/style.rb +0 -79
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/asciidoc.rb +0 -27
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/babel.rb +0 -16
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/bluecloth.rb +0 -24
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/builder.rb +0 -37
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/coffee.rb +0 -58
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/commonmarker.rb +0 -78
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/creole.rb +0 -25
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/dummy.rb +0 -3
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/erubi.rb +0 -32
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/erubis.rb +0 -43
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/haml.rb +0 -86
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/kramdown.rb +0 -25
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/less.rb +0 -30
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/livescript.rb +0 -23
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/maruku.rb +0 -22
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/pandoc.rb +0 -49
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/plain.rb +0 -16
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/prawn.rb +0 -43
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/radius.rb +0 -48
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/rdiscount.rb +0 -39
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/rdoc.rb +0 -40
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/redcarpet.rb +0 -83
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/redcloth.rb +0 -23
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/rst-pandoc.rb +0 -18
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/sass.rb +0 -52
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/sigil.rb +0 -34
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/template.rb +0 -297
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/typescript.rb +0 -26
- data/bundle/ruby/2.7.0/gems/tilt-2.0.10/lib/tilt/wikicloth.rb +0 -22
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/data/display_width.marshal.gz +0 -0
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/constants.rb +0 -8
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/index.rb +0 -12
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/no_string_ext.rb +0 -7
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/string_ext.rb +0 -17
- data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width.rb +0 -51
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/CHANGES.txt +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/MIT-LICENSE +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/README.txt +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/contrib/erubis +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/contrib/erubis-run.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/contrib/inline-require +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/context.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/converter.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ec.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ecpp.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ejava.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ejavascript.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/enhanced.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/eperl.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/eruby.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/escheme.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine/optimized.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/engine.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/enhancer.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/error.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/evaluator.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/generator.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helper.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_form_helper.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_helper.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/local-setting.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/main.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/preprocessing.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/tiny.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis/util.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/lib/erubis.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/erubis-2.7.0/setup.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/CHANGELOG.md +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/FAQ.md +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/Gemfile +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/MIT-LICENSE +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/README.md +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/REFERENCE.md +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/TODO +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/haml.gemspec +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/attribute_builder.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/attribute_compiler.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/attribute_parser.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/buffer.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/compiler.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/engine.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/error.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/escapable.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/exec.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/filters.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/generator.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/action_view_extensions.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/action_view_mods.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/action_view_xss_mods.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/safe_erubi_template.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/safe_erubis_template.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers/xss_mods.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/helpers.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/options.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/parser.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/plugin.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/railtie.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/sass_rails_filter.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/template/options.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/template.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/temple_engine.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/temple_line_counter.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/util.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml/version.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/lib/haml.rb +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/yard/default/fulldoc/html/css/common.sass +0 -0
- /data/bundle/ruby/{2.7.0 → 3.1.0}/gems/haml-5.2.2/yard/default/layout/html/footer.erb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/AUTHORS +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/COPYING +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/LICENSE +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/TODO +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/builtin_styles.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/color_scheme.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/compatibility.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/custom_errors.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/import.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/list.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/list_renderer.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/menu/item.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/paginator.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/simulate.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/statement.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/string.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/string_extensions.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/template_renderer.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/terminal/ncurses.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/highline-2.0.3 → 3.1.0/gems/highline-3.1.1}/lib/highline/wrapper.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/parallel-1.22.1 → 3.1.0/gems/parallel-1.26.3}/MIT-LICENSE.txt +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5/LICENSE.txt → 3.1.0/gems/reline-0.6.0/BSDL} +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/attlistdecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/cdata.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/child.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/comment.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/doctype.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/dtd/attlistdecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/dtd/dtd.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/dtd/elementdecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/dtd/entitydecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/dtd/notationdecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/encoding.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/formatters/default.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/formatters/transitive.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/instruction.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/light/node.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/output.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parent.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/lightparser.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/parsers/ultralightparser.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/quickpath.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/sax2listener.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/security.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/streamlistener.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/undefinednamespaceexception.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/validation/relaxng.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/validation/validation.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/validation/validationexception.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/xmldecl.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/xmltokens.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml/xpath.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/rexml-3.2.5 → 3.1.0/gems/rexml-3.4.0}/lib/rexml.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby2ruby-2.4.4 → 3.1.0/gems/ruby2ruby-2.5.1}/Manifest.txt +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby2ruby-2.4.4 → 3.1.0/gems/ruby2ruby-2.5.1}/README.rdoc +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/debugging.md +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/gauntlet.md +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/rp_extensions.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/rp_stringscanner.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/ruby_parser-3.19.1 → 3.1.0/gems/ruby_parser-3.20.3}/lib/ruby_lexer.rex +0 -0
- /data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/Manifest.txt +0 -0
- /data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/README.rdoc +0 -0
- /data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/composite_sexp_processor.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/sexp_processor-4.16.1 → 3.1.0/gems/sexp_processor-4.17.3}/lib/unique.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/EXPRESSIONS.md +0 -0
- /data/bundle/ruby/{2.7.0/gems/temple-0.8.2 → 3.1.0/gems/temple-0.10.3}/LICENSE +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/Gemfile +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/LICENSE.txt +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/Manifest +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/Todo.rdoc +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/import.rb +0 -0
- /data/bundle/ruby/{2.7.0/gems/terminal-table-1.8.0 → 3.1.0/gems/terminal-table-3.0.2}/lib/terminal-table/table_helper.rb +0 -0
@@ -1,12 +1,6 @@
|
|
1
1
|
# -*- racc -*-
|
2
2
|
|
3
|
-
#if V == 30
|
4
|
-
class Ruby30Parser
|
5
|
-
#elif V == 31
|
6
3
|
class Ruby31Parser
|
7
|
-
#else
|
8
|
-
fail "version not specified or supported on code generation"
|
9
|
-
#endif
|
10
4
|
|
11
5
|
token kCLASS kMODULE kDEF kUNDEF kBEGIN kRESCUE kENSURE kEND kIF kUNLESS
|
12
6
|
kTHEN kELSIF kELSE kCASE kWHEN kWHILE kUNTIL kFOR kBREAK kNEXT
|
@@ -102,9 +96,9 @@ rule
|
|
102
96
|
result = iter
|
103
97
|
}
|
104
98
|
|
105
|
-
begin_block: tLCURLY
|
99
|
+
begin_block: tLCURLY top_compstmt tRCURLY
|
106
100
|
{
|
107
|
-
_, line, stmt, _ = val
|
101
|
+
(_, line), stmt, _ = val
|
108
102
|
result = new_iter s(:preexe).line(line), 0, stmt
|
109
103
|
}
|
110
104
|
|
@@ -227,6 +221,7 @@ rule
|
|
227
221
|
| lhs tEQL mrhs
|
228
222
|
{
|
229
223
|
lhs, _, rhs = val
|
224
|
+
|
230
225
|
result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
|
231
226
|
}
|
232
227
|
| mlhs tEQL mrhs_arg kRESCUE_MOD stmt
|
@@ -288,7 +283,6 @@ rule
|
|
288
283
|
|
289
284
|
result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
|
290
285
|
}
|
291
|
-
#if V > 30
|
292
286
|
| defn_head f_opt_paren_args tEQL command
|
293
287
|
{
|
294
288
|
result = new_endless_defn val
|
@@ -305,7 +299,6 @@ rule
|
|
305
299
|
{
|
306
300
|
result = new_endless_defs val
|
307
301
|
}
|
308
|
-
#endif
|
309
302
|
| backref tOP_ASGN command_rhs
|
310
303
|
{
|
311
304
|
self.backref_assign_error val[0]
|
@@ -359,11 +352,7 @@ rule
|
|
359
352
|
self.in_kwarg = true
|
360
353
|
self.env.extend
|
361
354
|
}
|
362
|
-
#if V == 30
|
363
|
-
p_expr
|
364
|
-
#else
|
365
355
|
p_top_expr_body
|
366
|
-
#endif
|
367
356
|
{
|
368
357
|
lhs, _, in_kwarg, rhs = val
|
369
358
|
|
@@ -383,11 +372,7 @@ rule
|
|
383
372
|
self.in_kwarg = true
|
384
373
|
self.env.extend
|
385
374
|
}
|
386
|
-
#if V == 30
|
387
|
-
p_expr
|
388
|
-
#else
|
389
375
|
p_top_expr_body
|
390
|
-
#endif
|
391
376
|
{
|
392
377
|
self.env.unextend
|
393
378
|
|
@@ -423,6 +408,7 @@ rule
|
|
423
408
|
defs_head: k_def singleton dot_or_colon
|
424
409
|
{
|
425
410
|
lexer.lex_state = EXPR_FNAME
|
411
|
+
self.in_argdef = true
|
426
412
|
}
|
427
413
|
def_name
|
428
414
|
{
|
@@ -636,7 +622,7 @@ rule
|
|
636
622
|
}
|
637
623
|
| tSTAR
|
638
624
|
{
|
639
|
-
l =
|
625
|
+
(_, l), = val
|
640
626
|
result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
|
641
627
|
}
|
642
628
|
| tSTAR tCOMMA mlhs_post
|
@@ -1146,8 +1132,10 @@ rule
|
|
1146
1132
|
|
1147
1133
|
paren_args: tLPAREN2 opt_call_args rparen
|
1148
1134
|
{
|
1149
|
-
_, args, _ = val
|
1135
|
+
_, args, (_, line_max) = val
|
1136
|
+
|
1150
1137
|
result = args
|
1138
|
+
result.line_max = line_max if args
|
1151
1139
|
}
|
1152
1140
|
| tLPAREN2 args tCOMMA args_forward rparen
|
1153
1141
|
{
|
@@ -1249,13 +1237,11 @@ rule
|
|
1249
1237
|
_, arg = val
|
1250
1238
|
result = s(:block_pass, arg).line arg.line
|
1251
1239
|
}
|
1252
|
-
#if V > 30
|
1253
1240
|
| tAMPER
|
1254
1241
|
{
|
1255
1242
|
(_, line), = val
|
1256
1243
|
result = s(:block_pass).line line
|
1257
1244
|
}
|
1258
|
-
#endif
|
1259
1245
|
|
1260
1246
|
opt_block_arg: tCOMMA block_arg
|
1261
1247
|
{
|
@@ -1266,7 +1252,7 @@ rule
|
|
1266
1252
|
args: arg_value
|
1267
1253
|
{
|
1268
1254
|
arg, = val
|
1269
|
-
lineno = arg.line
|
1255
|
+
lineno = arg.line
|
1270
1256
|
|
1271
1257
|
result = s(:array, arg).line lineno
|
1272
1258
|
}
|
@@ -1282,9 +1268,7 @@ rule
|
|
1282
1268
|
}
|
1283
1269
|
| args tCOMMA tSTAR arg_value
|
1284
1270
|
{
|
1285
|
-
|
1286
|
-
args, _, _, id = val
|
1287
|
-
line = lexer.lineno
|
1271
|
+
args, _, (_, line), id = val
|
1288
1272
|
result = self.list_append args, s(:splat, id).line(line)
|
1289
1273
|
}
|
1290
1274
|
|
@@ -1303,7 +1287,6 @@ rule
|
|
1303
1287
|
}
|
1304
1288
|
| args tCOMMA tSTAR arg_value
|
1305
1289
|
{
|
1306
|
-
# TODO: make all tXXXX terminals include lexer.lineno
|
1307
1290
|
arg, _, _, splat = val
|
1308
1291
|
result = self.arg_concat arg, splat
|
1309
1292
|
}
|
@@ -1332,7 +1315,6 @@ rule
|
|
1332
1315
|
| k_begin
|
1333
1316
|
{
|
1334
1317
|
lexer.cmdarg.push false
|
1335
|
-
result = self.lexer.lineno
|
1336
1318
|
}
|
1337
1319
|
bodystmt k_end
|
1338
1320
|
{
|
@@ -1342,11 +1324,10 @@ rule
|
|
1342
1324
|
| tLPAREN_ARG
|
1343
1325
|
{
|
1344
1326
|
lexer.lex_state = EXPR_ENDARG
|
1345
|
-
result = lexer.lineno
|
1346
1327
|
}
|
1347
1328
|
rparen
|
1348
1329
|
{
|
1349
|
-
_, line, _ = val
|
1330
|
+
(_, line), _, _ = val
|
1350
1331
|
result = s(:begin).line line
|
1351
1332
|
}
|
1352
1333
|
| tLPAREN_ARG
|
@@ -1362,9 +1343,8 @@ rule
|
|
1362
1343
|
}
|
1363
1344
|
| tLPAREN compstmt tRPAREN
|
1364
1345
|
{
|
1365
|
-
_, stmt, _ = val
|
1366
|
-
result = stmt
|
1367
|
-
result ||= s(:nil).line lexer.lineno
|
1346
|
+
(_, line), stmt, _ = val
|
1347
|
+
result = stmt || s(:nil).line(line)
|
1368
1348
|
result.paren = true
|
1369
1349
|
}
|
1370
1350
|
| primary_value tCOLON2 tCONSTANT
|
@@ -1377,12 +1357,14 @@ rule
|
|
1377
1357
|
{
|
1378
1358
|
result = wrap :colon3, val[1]
|
1379
1359
|
}
|
1380
|
-
| tLBRACK
|
1360
|
+
| tLBRACK aref_args rbracket
|
1381
1361
|
{
|
1382
|
-
_, line, args, _ = val
|
1362
|
+
(_, line), args, (_, line_max) = val
|
1363
|
+
|
1383
1364
|
result = args || s(:array)
|
1384
1365
|
result.sexp_type = :array # aref_args is :args
|
1385
1366
|
result.line line
|
1367
|
+
result.line_max = line_max
|
1386
1368
|
}
|
1387
1369
|
| tLBRACE
|
1388
1370
|
{
|
@@ -1493,9 +1475,6 @@ rule
|
|
1493
1475
|
result = new_for iter, var, body
|
1494
1476
|
}
|
1495
1477
|
| k_class
|
1496
|
-
{
|
1497
|
-
result = self.lexer.lineno
|
1498
|
-
}
|
1499
1478
|
cpath superclass
|
1500
1479
|
{
|
1501
1480
|
if (self.in_def || self.in_single > 0) then
|
@@ -1510,9 +1489,6 @@ rule
|
|
1510
1489
|
self.lexer.ignore_body_comments
|
1511
1490
|
}
|
1512
1491
|
| k_class tLSHFT
|
1513
|
-
{
|
1514
|
-
result = self.lexer.lineno
|
1515
|
-
}
|
1516
1492
|
expr
|
1517
1493
|
{
|
1518
1494
|
result = self.in_def
|
@@ -1524,16 +1500,14 @@ rule
|
|
1524
1500
|
self.in_single = 0
|
1525
1501
|
self.env.extend
|
1526
1502
|
}
|
1527
|
-
bodystmt
|
1503
|
+
bodystmt
|
1504
|
+
k_end
|
1528
1505
|
{
|
1529
1506
|
result = new_sclass val
|
1530
1507
|
self.env.unextend
|
1531
1508
|
self.lexer.ignore_body_comments
|
1532
1509
|
}
|
1533
1510
|
| k_module
|
1534
|
-
{
|
1535
|
-
result = self.lexer.lineno
|
1536
|
-
}
|
1537
1511
|
cpath
|
1538
1512
|
{
|
1539
1513
|
yyerror "module definition in method body" if
|
@@ -1636,6 +1610,7 @@ rule
|
|
1636
1610
|
k_def: kDEF
|
1637
1611
|
{
|
1638
1612
|
self.comments.push self.lexer.comments
|
1613
|
+
self.in_argdef = true
|
1639
1614
|
}
|
1640
1615
|
k_do: kDO
|
1641
1616
|
k_do_block: kDO_BLOCK
|
@@ -1675,20 +1650,33 @@ rule
|
|
1675
1650
|
}
|
1676
1651
|
|
1677
1652
|
f_marg: f_norm_arg
|
1653
|
+
{
|
1654
|
+
(sym, line), = val
|
1655
|
+
|
1656
|
+
result = s(:dummy, sym).line line
|
1657
|
+
}
|
1678
1658
|
| tLPAREN f_margs rparen
|
1679
1659
|
{
|
1680
|
-
|
1660
|
+
_, args, _ = val
|
1661
|
+
result = args
|
1681
1662
|
}
|
1682
1663
|
|
1683
1664
|
f_marg_list: f_marg
|
1684
1665
|
{
|
1685
|
-
|
1666
|
+
arg, = val
|
1667
|
+
line = arg.line
|
1686
1668
|
|
1687
|
-
|
1669
|
+
arg = arg.last if arg.sexp_type == :dummy
|
1670
|
+
|
1671
|
+
result = s(:array, arg).line line
|
1688
1672
|
}
|
1689
1673
|
| f_marg_list tCOMMA f_marg
|
1690
1674
|
{
|
1691
|
-
|
1675
|
+
args, _, arg = val
|
1676
|
+
|
1677
|
+
arg = arg.last if arg.sexp_type == :dummy
|
1678
|
+
|
1679
|
+
result = list_append args, arg
|
1692
1680
|
}
|
1693
1681
|
|
1694
1682
|
f_margs: f_marg_list
|
@@ -1731,16 +1719,14 @@ rule
|
|
1731
1719
|
}
|
1732
1720
|
| tSTAR
|
1733
1721
|
{
|
1734
|
-
|
1735
|
-
result.line
|
1722
|
+
(_, line), = val
|
1723
|
+
result = args([:*]).line line
|
1736
1724
|
}
|
1737
1725
|
|
1738
1726
|
f_any_kwrest: f_kwrest
|
1739
1727
|
| f_no_kwarg
|
1740
1728
|
|
1741
|
-
|
1742
|
-
f_eq: tEQL # TODO: self.in_argdef = false
|
1743
|
-
#endif
|
1729
|
+
f_eq: { self.in_argdef = false } tEQL
|
1744
1730
|
|
1745
1731
|
block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
|
1746
1732
|
{
|
@@ -1844,15 +1830,19 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1844
1830
|
{
|
1845
1831
|
# TODO: current_arg = 0
|
1846
1832
|
result = args val
|
1833
|
+
self.in_argdef = false
|
1847
1834
|
}
|
1848
1835
|
| tOROP
|
1849
1836
|
{
|
1850
|
-
|
1837
|
+
(_, line), = val
|
1838
|
+
|
1839
|
+
result = s(:args).line line
|
1851
1840
|
}
|
1852
1841
|
| tPIPE block_param opt_bv_decl tPIPE
|
1853
1842
|
{
|
1854
1843
|
# TODO: current_arg = 0
|
1855
1844
|
result = args val
|
1845
|
+
self.in_argdef = false
|
1856
1846
|
}
|
1857
1847
|
|
1858
1848
|
opt_bv_decl: opt_nl
|
@@ -1879,7 +1869,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1879
1869
|
lambda: tLAMBDA
|
1880
1870
|
{
|
1881
1871
|
self.env.extend :dynamic
|
1882
|
-
result =
|
1872
|
+
result = lexer.lpar_beg
|
1883
1873
|
lexer.paren_nest += 1
|
1884
1874
|
lexer.lpar_beg = lexer.paren_nest
|
1885
1875
|
}
|
@@ -1889,7 +1879,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1889
1879
|
}
|
1890
1880
|
lambda_body
|
1891
1881
|
{
|
1892
|
-
_,
|
1882
|
+
(_, line), lpar, args, _cmdarg, body = val
|
1893
1883
|
lexer.lpar_beg = lpar
|
1894
1884
|
|
1895
1885
|
lexer.cmdarg.pop
|
@@ -1902,10 +1892,12 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1902
1892
|
|
1903
1893
|
f_larglist: tLPAREN2 f_args opt_bv_decl rparen
|
1904
1894
|
{
|
1895
|
+
self.in_argdef = false
|
1905
1896
|
result = args val
|
1906
1897
|
}
|
1907
1898
|
| f_args
|
1908
1899
|
{
|
1900
|
+
self.in_argdef = false
|
1909
1901
|
result = val[0]
|
1910
1902
|
result = 0 if result == s(:args)
|
1911
1903
|
}
|
@@ -1973,13 +1965,19 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1973
1965
|
{
|
1974
1966
|
call, args = val
|
1975
1967
|
|
1976
|
-
result = call
|
1968
|
+
result = call
|
1969
|
+
|
1970
|
+
if args then
|
1971
|
+
call.concat args.sexp_body
|
1972
|
+
result.line_max = args.line_max
|
1973
|
+
end
|
1977
1974
|
}
|
1978
1975
|
| primary_value call_op operation2 opt_paren_args
|
1979
1976
|
{
|
1980
|
-
recv, call_op, (op,
|
1977
|
+
recv, call_op, (op, op_line), args = val
|
1981
1978
|
|
1982
1979
|
result = new_call recv, op.to_sym, args, call_op
|
1980
|
+
result.line_max = op_line unless args
|
1983
1981
|
}
|
1984
1982
|
| primary_value tCOLON2 operation2 paren_args
|
1985
1983
|
{
|
@@ -2007,7 +2005,8 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2007
2005
|
}
|
2008
2006
|
| kSUPER
|
2009
2007
|
{
|
2010
|
-
|
2008
|
+
(_, line), = val
|
2009
|
+
result = s(:zsuper).line line
|
2011
2010
|
}
|
2012
2011
|
| primary_value tLBRACK2 opt_call_args rbracket
|
2013
2012
|
{
|
@@ -2017,11 +2016,11 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2017
2016
|
brace_block: tLCURLY
|
2018
2017
|
{
|
2019
2018
|
self.env.extend :dynamic
|
2020
|
-
result = self.lexer.lineno
|
2021
2019
|
}
|
2022
|
-
brace_body
|
2020
|
+
brace_body
|
2021
|
+
tRCURLY
|
2023
2022
|
{
|
2024
|
-
_, line, body, _ = val
|
2023
|
+
(_, line), _, body, _ = val
|
2025
2024
|
|
2026
2025
|
result = body
|
2027
2026
|
result.line line
|
@@ -2031,11 +2030,11 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2031
2030
|
| k_do
|
2032
2031
|
{
|
2033
2032
|
self.env.extend :dynamic
|
2034
|
-
result = self.lexer.lineno
|
2035
2033
|
}
|
2036
|
-
do_body
|
2034
|
+
do_body
|
2035
|
+
kEND
|
2037
2036
|
{
|
2038
|
-
_, line, body, _ = val
|
2037
|
+
(_, line), _, body, _ = val
|
2039
2038
|
|
2040
2039
|
result = body
|
2041
2040
|
result.line line
|
@@ -2093,14 +2092,13 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2093
2092
|
}
|
2094
2093
|
|
2095
2094
|
case_body: k_when
|
2096
|
-
{
|
2097
|
-
result = self.lexer.lineno
|
2098
|
-
}
|
2099
2095
|
case_args then compstmt cases
|
2100
2096
|
{
|
2101
|
-
|
2102
|
-
|
2103
|
-
result
|
2097
|
+
(_, line), case_args, _then, body, cases = val
|
2098
|
+
|
2099
|
+
result = new_when case_args, body
|
2100
|
+
result.line line
|
2101
|
+
result << cases if cases
|
2104
2102
|
}
|
2105
2103
|
|
2106
2104
|
cases: opt_else | case_body
|
@@ -2211,9 +2209,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2211
2209
|
p_lbracket: tLBRACK2 { push_pktbl }
|
2212
2210
|
|
2213
2211
|
p_expr_basic: p_value
|
2214
|
-
#if V > 30
|
2215
2212
|
| p_variable
|
2216
|
-
#endif
|
2217
2213
|
| p_const p_lparen p_args tRPAREN
|
2218
2214
|
{
|
2219
2215
|
lhs, _, args, _ = val
|
@@ -2500,13 +2496,11 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2500
2496
|
{
|
2501
2497
|
result = wrap :lit, val[0]
|
2502
2498
|
}
|
2503
|
-
#if V > 30
|
2504
2499
|
| tSTRING_BEG string_contents tLABEL_END
|
2505
2500
|
{
|
2506
2501
|
# you can't actually get here the way I lex labels
|
2507
2502
|
debug 11
|
2508
2503
|
}
|
2509
|
-
#endif
|
2510
2504
|
|
2511
2505
|
p_kwrest: kwrest_mark tIDENTIFIER
|
2512
2506
|
{
|
@@ -2565,13 +2559,8 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2565
2559
|
|
2566
2560
|
result = s(:dot3, v1, nil).line v1.line
|
2567
2561
|
}
|
2568
|
-
#if V == 30
|
2569
|
-
| p_variable
|
2570
|
-
#endif
|
2571
2562
|
| p_var_ref
|
2572
|
-
#if V > 30
|
2573
2563
|
| p_expr_ref
|
2574
|
-
#endif
|
2575
2564
|
| p_const
|
2576
2565
|
| tBDOT2 p_primitive
|
2577
2566
|
{
|
@@ -2591,9 +2580,21 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2591
2580
|
| xstring
|
2592
2581
|
| regexp
|
2593
2582
|
| words
|
2583
|
+
{
|
2584
|
+
result = ary_to_pat val[0]
|
2585
|
+
}
|
2594
2586
|
| qwords
|
2587
|
+
{
|
2588
|
+
result = ary_to_pat val[0]
|
2589
|
+
}
|
2595
2590
|
| symbols
|
2591
|
+
{
|
2592
|
+
result = ary_to_pat val[0]
|
2593
|
+
}
|
2596
2594
|
| qsymbols
|
2595
|
+
{
|
2596
|
+
result = ary_to_pat val[0]
|
2597
|
+
}
|
2597
2598
|
| keyword_variable
|
2598
2599
|
{
|
2599
2600
|
# TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
|
@@ -2607,7 +2608,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2607
2608
|
{
|
2608
2609
|
# TODO: error_duplicate_pattern_variable(p, $1, &@1);
|
2609
2610
|
# TODO: assignable(p, $1, 0, &@$);
|
2610
|
-
result = wrap :
|
2611
|
+
result = wrap :lasgn, val[0]
|
2611
2612
|
}
|
2612
2613
|
|
2613
2614
|
p_var_ref: tCARET tIDENTIFIER
|
@@ -2615,21 +2616,17 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2615
2616
|
# TODO: check id against env for lvar or dvar
|
2616
2617
|
result = wrap :lvar, val[1]
|
2617
2618
|
}
|
2618
|
-
#if V > 30
|
2619
2619
|
| tCARET nonlocal_var
|
2620
2620
|
{
|
2621
2621
|
_, var = val
|
2622
2622
|
result = var
|
2623
2623
|
}
|
2624
|
-
#endif
|
2625
2624
|
|
2626
|
-
#if V > 30
|
2627
2625
|
p_expr_ref: tCARET tLPAREN expr_value rparen
|
2628
2626
|
{
|
2629
2627
|
_, _, expr, _ = val
|
2630
2628
|
result = expr # TODO? s(:begin, expr).line expr.line
|
2631
2629
|
}
|
2632
|
-
#endif
|
2633
2630
|
|
2634
2631
|
p_const: tCOLON3 cname
|
2635
2632
|
{
|
@@ -2737,15 +2734,17 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2737
2734
|
|
2738
2735
|
words: tWORDS_BEG tSPACE tSTRING_END
|
2739
2736
|
{
|
2740
|
-
(_, line), _, _ = val
|
2737
|
+
(_, line), _, (_, line_max) = val
|
2741
2738
|
|
2742
2739
|
result = s(:array).line line
|
2740
|
+
result.line_max = line_max
|
2743
2741
|
}
|
2744
2742
|
| tWORDS_BEG word_list tSTRING_END
|
2745
2743
|
{
|
2746
|
-
(_, line), list, _ = val
|
2744
|
+
(_, line), list, (_, line_max) = val
|
2747
2745
|
|
2748
2746
|
result = list.line line
|
2747
|
+
result.line_max = line_max
|
2749
2748
|
}
|
2750
2749
|
|
2751
2750
|
word_list: none
|
@@ -2765,15 +2764,17 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2765
2764
|
|
2766
2765
|
symbols: tSYMBOLS_BEG tSPACE tSTRING_END
|
2767
2766
|
{
|
2768
|
-
(_, line), _, _ = val
|
2767
|
+
(_, line), _, (_, line_max) = val
|
2769
2768
|
|
2770
2769
|
result = s(:array).line line
|
2770
|
+
result.line_max = line_max
|
2771
2771
|
}
|
2772
2772
|
| tSYMBOLS_BEG symbol_list tSTRING_END
|
2773
2773
|
{
|
2774
|
-
(_, line), list, _, = val
|
2775
|
-
|
2776
|
-
result = list
|
2774
|
+
(_, line), list, (_, line_max), = val
|
2775
|
+
|
2776
|
+
result = list.line line
|
2777
|
+
result.line_max = line_max
|
2777
2778
|
}
|
2778
2779
|
|
2779
2780
|
symbol_list: none
|
@@ -2788,28 +2789,32 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
2788
2789
|
|
2789
2790
|
qwords: tQWORDS_BEG tSPACE tSTRING_END
|
2790
2791
|
{
|
2791
|
-
(_, line), _, _ = val
|
2792
|
+
(_, line), _, (_, line_max) = val
|
2792
2793
|
|
2793
2794
|
result = s(:array).line line
|
2795
|
+
result.line_max = line_max
|
2794
2796
|
}
|
2795
2797
|
| tQWORDS_BEG qword_list tSTRING_END
|
2796
2798
|
{
|
2797
|
-
(_, line), list, _ = val
|
2799
|
+
(_, line), list, (_, line_max) = val
|
2798
2800
|
|
2799
2801
|
result = list.line line
|
2802
|
+
result.line_max = line_max
|
2800
2803
|
}
|
2801
2804
|
|
2802
2805
|
qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
|
2803
2806
|
{
|
2804
|
-
(_, line), _, _ = val
|
2807
|
+
(_, line), _, (_, line_max) = val
|
2805
2808
|
|
2806
2809
|
result = s(:array).line line
|
2810
|
+
result.line_max = line_max
|
2807
2811
|
}
|
2808
2812
|
| tQSYMBOLS_BEG qsym_list tSTRING_END
|
2809
2813
|
{
|
2810
|
-
(_, line), list, _ = val
|
2814
|
+
(_, line), list, (_, line_max) = val
|
2811
2815
|
|
2812
2816
|
result = list.line line
|
2817
|
+
result.line_max = line_max
|
2813
2818
|
}
|
2814
2819
|
|
2815
2820
|
qword_list: none
|
@@ -2884,7 +2889,6 @@ regexp_contents: none
|
|
2884
2889
|
lexer.brace_nest,
|
2885
2890
|
lexer.string_nest, # TODO: remove
|
2886
2891
|
lexer.lex_state,
|
2887
|
-
lexer.lineno,
|
2888
2892
|
]
|
2889
2893
|
|
2890
2894
|
lexer.cmdarg.push false
|
@@ -2899,9 +2903,9 @@ regexp_contents: none
|
|
2899
2903
|
compstmt
|
2900
2904
|
tSTRING_DEND
|
2901
2905
|
{
|
2902
|
-
_, memo, stmt, _ = val
|
2906
|
+
(_, line), memo, stmt, _ = val
|
2903
2907
|
|
2904
|
-
lex_strterm, brace_nest, string_nest, oldlex_state
|
2908
|
+
lex_strterm, brace_nest, string_nest, oldlex_state = memo
|
2905
2909
|
# TODO: heredoc_indent
|
2906
2910
|
|
2907
2911
|
lexer.lex_strterm = lex_strterm
|
@@ -2961,11 +2965,11 @@ regexp_contents: none
|
|
2961
2965
|
|
2962
2966
|
dsym: tSYMBEG string_contents tSTRING_END
|
2963
2967
|
{
|
2964
|
-
_, result, _ = val
|
2968
|
+
(_, line), result, _ = val
|
2965
2969
|
|
2966
2970
|
lexer.lex_state = EXPR_END
|
2967
2971
|
|
2968
|
-
result ||= s(:str, "").line
|
2972
|
+
result ||= s(:str, "").line line
|
2969
2973
|
|
2970
2974
|
case result.sexp_type
|
2971
2975
|
when :dstr then
|
@@ -2991,11 +2995,9 @@ regexp_contents: none
|
|
2991
2995
|
| tRATIONAL
|
2992
2996
|
| tIMAGINARY
|
2993
2997
|
|
2994
|
-
#if V > 30
|
2995
2998
|
nonlocal_var: tIVAR { result = wrap :ivar, val[0] }
|
2996
2999
|
| tGVAR { result = wrap :gvar, val[0] }
|
2997
3000
|
| tCVAR { result = wrap :cvar, val[0] }
|
2998
|
-
#endif
|
2999
3001
|
|
3000
3002
|
user_variable: tIDENTIFIER
|
3001
3003
|
| tIVAR
|
@@ -3003,15 +3005,15 @@ regexp_contents: none
|
|
3003
3005
|
| tCONSTANT
|
3004
3006
|
| tCVAR
|
3005
3007
|
|
3006
|
-
keyword_variable: kNIL { result = s(:nil).line
|
3007
|
-
| kSELF { result = s(:self).line
|
3008
|
-
| kTRUE { result = s(:true).line
|
3009
|
-
| kFALSE { result = s(:false).line
|
3010
|
-
| k__FILE__ { result = s(:str, self.file).line
|
3011
|
-
| k__LINE__ { result = s(:lit,
|
3008
|
+
keyword_variable: kNIL { (_, line), = val; result = s(:nil).line line }
|
3009
|
+
| kSELF { (_, line), = val; result = s(:self).line line }
|
3010
|
+
| kTRUE { (_, line), = val; result = s(:true).line line }
|
3011
|
+
| kFALSE { (_, line), = val; result = s(:false).line line }
|
3012
|
+
| k__FILE__ { (_, line), = val; result = s(:str, self.file).line line }
|
3013
|
+
| k__LINE__ { (_, line), = val; result = s(:lit, line).line line }
|
3012
3014
|
| k__ENCODING__
|
3013
3015
|
{
|
3014
|
-
l =
|
3016
|
+
(_, l), = val
|
3015
3017
|
result =
|
3016
3018
|
if defined? Encoding then
|
3017
3019
|
s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
|
@@ -3072,32 +3074,26 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
3072
3074
|
f_opt_paren_args: f_paren_args
|
3073
3075
|
| none
|
3074
3076
|
{
|
3077
|
+
self.in_argdef = false
|
3075
3078
|
result = end_args val
|
3076
3079
|
}
|
3077
3080
|
|
3078
3081
|
f_paren_args: tLPAREN2 f_args rparen
|
3079
3082
|
{
|
3083
|
+
self.in_argdef = false
|
3080
3084
|
result = end_args val
|
3081
3085
|
}
|
3082
|
-
#if V == 30
|
3083
|
-
| tLPAREN2 f_arg tCOMMA args_forward rparen
|
3084
|
-
{
|
3085
|
-
result = end_args val
|
3086
|
-
}
|
3087
|
-
| tLPAREN2 args_forward rparen
|
3088
|
-
{
|
3089
|
-
result = end_args val
|
3090
|
-
}
|
3091
|
-
#endif
|
3092
3086
|
|
3093
3087
|
f_arglist: f_paren_args
|
3094
3088
|
| {
|
3095
3089
|
result = self.in_kwarg
|
3096
3090
|
self.in_kwarg = true
|
3091
|
+
self.in_argdef = true
|
3097
3092
|
self.lexer.lex_state |= EXPR_LABEL
|
3098
3093
|
}
|
3099
3094
|
f_args term
|
3100
3095
|
{
|
3096
|
+
self.in_argdef = false
|
3101
3097
|
result = end_args val
|
3102
3098
|
}
|
3103
3099
|
|
@@ -3114,9 +3110,7 @@ f_opt_paren_args: f_paren_args
|
|
3114
3110
|
result = args val
|
3115
3111
|
}
|
3116
3112
|
| f_block_arg
|
3117
|
-
#if V > 30
|
3118
3113
|
| args_forward
|
3119
|
-
#endif
|
3120
3114
|
|
3121
3115
|
opt_args_tail: tCOMMA args_tail
|
3122
3116
|
{
|
@@ -3186,12 +3180,12 @@ f_opt_paren_args: f_paren_args
|
|
3186
3180
|
|
|
3187
3181
|
{
|
3188
3182
|
result = args val
|
3189
|
-
# result.line lexer.lineno
|
3190
3183
|
}
|
3191
3184
|
|
3192
3185
|
args_forward: tBDOT3
|
3193
3186
|
{
|
3194
|
-
|
3187
|
+
(_, line), = val
|
3188
|
+
result = s(:forward_args).line line
|
3195
3189
|
}
|
3196
3190
|
|
3197
3191
|
f_bad_arg: tCONSTANT
|
@@ -3245,10 +3239,25 @@ f_opt_paren_args: f_paren_args
|
|
3245
3239
|
result = s(:args, list).line list.line
|
3246
3240
|
end
|
3247
3241
|
|
3248
|
-
|
3242
|
+
if Sexp === item then
|
3243
|
+
line_max = item.line_max
|
3244
|
+
else
|
3245
|
+
item, line_max = item
|
3246
|
+
end
|
3247
|
+
|
3248
|
+
result << item
|
3249
|
+
result.line_max = line_max
|
3249
3250
|
}
|
3250
3251
|
|
3251
3252
|
f_label: tLABEL
|
3253
|
+
{
|
3254
|
+
label, = val
|
3255
|
+
# arg_var(p, formal_argument(p, $1));
|
3256
|
+
# p->cur_arg = get_id($1);
|
3257
|
+
# p->max_numparam = ORDINAL_PARAM;
|
3258
|
+
self.in_argdef = false
|
3259
|
+
result = label
|
3260
|
+
}
|
3252
3261
|
|
3253
3262
|
f_kw: f_label arg_value
|
3254
3263
|
{
|
@@ -3257,6 +3266,7 @@ f_opt_paren_args: f_paren_args
|
|
3257
3266
|
|
3258
3267
|
identifier = label.to_sym
|
3259
3268
|
self.env[identifier] = :lvar
|
3269
|
+
self.in_argdef = true
|
3260
3270
|
|
3261
3271
|
kwarg = s(:kwarg, identifier, arg).line line
|
3262
3272
|
result = s(:array, kwarg).line line
|
@@ -3267,6 +3277,7 @@ f_opt_paren_args: f_paren_args
|
|
3267
3277
|
|
3268
3278
|
id = label.to_sym
|
3269
3279
|
self.env[id] = :lvar
|
3280
|
+
self.in_argdef = true
|
3270
3281
|
|
3271
3282
|
result = s(:array, s(:kwarg, id).line(line)).line line
|
3272
3283
|
}
|
@@ -3277,6 +3288,7 @@ f_opt_paren_args: f_paren_args
|
|
3277
3288
|
(label, line), expr = val
|
3278
3289
|
id = label.to_sym
|
3279
3290
|
self.env[id] = :lvar
|
3291
|
+
self.in_argdef = true
|
3280
3292
|
|
3281
3293
|
result = s(:array, s(:kwarg, id, expr).line(line)).line line
|
3282
3294
|
}
|
@@ -3286,6 +3298,7 @@ f_opt_paren_args: f_paren_args
|
|
3286
3298
|
(label, line), = val
|
3287
3299
|
id = label.to_sym
|
3288
3300
|
self.env[id] = :lvar
|
3301
|
+
self.in_argdef = true
|
3289
3302
|
|
3290
3303
|
result = s(:array, s(:kwarg, id).line(line)).line line
|
3291
3304
|
}
|
@@ -3322,38 +3335,31 @@ f_opt_paren_args: f_paren_args
|
|
3322
3335
|
}
|
3323
3336
|
| kwrest_mark
|
3324
3337
|
{
|
3338
|
+
(_, line), = val
|
3325
3339
|
id = :"**"
|
3326
|
-
self.env[id] = :lvar
|
3327
|
-
result = [id,
|
3340
|
+
self.env[id] = :lvar
|
3341
|
+
result = [id, line]
|
3328
3342
|
}
|
3329
3343
|
|
3330
3344
|
f_opt: f_arg_asgn
|
3331
|
-
#if V > 30
|
3332
3345
|
f_eq
|
3333
|
-
#else
|
3334
|
-
tEQL
|
3335
|
-
#endif
|
3336
3346
|
arg_value
|
3337
3347
|
{
|
3338
3348
|
lhs, _, rhs = val
|
3349
|
+
self.in_argdef = true
|
3339
3350
|
result = self.assignable lhs, rhs
|
3340
3351
|
# TODO: detect duplicate names
|
3341
3352
|
# TODO? p->cur_arg = 0;
|
3342
|
-
# TODO? p->ctxt.in_argdef = 1;
|
3343
3353
|
}
|
3344
3354
|
|
3345
3355
|
f_block_opt: f_arg_asgn
|
3346
|
-
#if V > 30
|
3347
3356
|
f_eq
|
3348
|
-
#else
|
3349
|
-
tEQL
|
3350
|
-
#endif
|
3351
3357
|
primary_value
|
3352
3358
|
{
|
3353
3359
|
lhs, _, rhs = val
|
3360
|
+
self.in_argdef = true
|
3354
3361
|
result = self.assignable lhs, rhs
|
3355
3362
|
# TODO? p->cur_arg = 0;
|
3356
|
-
# TODO? p->ctxt.in_argdef = 1;
|
3357
3363
|
}
|
3358
3364
|
|
3359
3365
|
f_block_optarg: f_block_opt
|
@@ -3390,9 +3396,10 @@ f_opt_paren_args: f_paren_args
|
|
3390
3396
|
}
|
3391
3397
|
| restarg_mark
|
3392
3398
|
{
|
3399
|
+
(_, line), = val
|
3393
3400
|
name = :"*"
|
3394
3401
|
self.env[name] = :lvar
|
3395
|
-
result = [name,
|
3402
|
+
result = [name, line]
|
3396
3403
|
}
|
3397
3404
|
|
3398
3405
|
blkarg_mark: tAMPER2 | tAMPER
|
@@ -3497,11 +3504,10 @@ f_opt_paren_args: f_paren_args
|
|
3497
3504
|
opt_terms: | terms
|
3498
3505
|
opt_nl: | tNL
|
3499
3506
|
rparen: opt_nl tRPAREN
|
3500
|
-
|
3501
|
-
|
3502
|
-
|
3503
|
-
|
3504
|
-
# }
|
3507
|
+
{
|
3508
|
+
_, close = val # TODO: include lineno in close?
|
3509
|
+
result = [close, lexer.lineno]
|
3510
|
+
}
|
3505
3511
|
rbracket: opt_nl tRBRACK
|
3506
3512
|
{
|
3507
3513
|
_, close = val
|