brakeman 3.3.0 → 3.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES +11 -0
- data/README.md +3 -2
- data/bundle/load.rb +4 -4
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/History.txt +7 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/Manifest.txt +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/README.txt +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/Rakefile +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/bin/ruby_parse +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/bin/ruby_parse_extract_error +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby18_parser.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby18_parser.y +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby19_parser.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby19_parser.y +0 -0
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.2/lib/ruby20_parser.rb +6728 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby20_parser.y +33 -24
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.2/lib/ruby21_parser.rb +6766 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby21_parser.y +33 -24
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.2/lib/ruby22_parser.rb +6811 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby22_parser.y +33 -24
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.2/lib/ruby23_parser.rb +6817 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby23_parser.y +34 -55
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_lexer.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_lexer.rex +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_lexer.rex.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_parser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_parser.yy +36 -69
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_parser_extras.rb +43 -3
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/test/test_ruby_lexer.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/test/test_ruby_parser.rb +42 -1
- data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/test/test_ruby_parser_extras.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/CHANGES +5 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/Gemfile +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/LICENSE +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/README.jp.md +36 -11
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/README.md +44 -19
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/Rakefile +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/context.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/profile-parser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/profile-render.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/run-benchmarks.rb +41 -34
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/run-diffbench.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/view.erb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/view.haml +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/benchmarks/view.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/bin/slimrb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/include.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/jp/include.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/jp/logic_less.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/jp/smart.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/jp/translator.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/logic_less.md +1 -1
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/smart.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/doc/translator.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/code_attributes.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/command.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/controls.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/do_inserter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/embedded.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/end_inserter.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/engine.rb +1 -3
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/erb_converter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/grammar.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/include.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/interpolation.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/logic_less.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/logic_less/context.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/logic_less/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/parser.rb +22 -12
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/smart.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/smart/escaper.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/smart/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/smart/parser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/splat/builder.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/splat/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/template.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/translator.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/lib/slim/version.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/slim.gemspec +1 -1
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_code_blocks.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_code_escaping.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_code_evaluation.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_code_output.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_code_structure.rb +18 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_commands.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_embedded_engines.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_encoding.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_erb_converter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_html_attributes.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_html_escaping.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_html_structure.rb +16 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_parser_errors.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_pretty.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_ruby_errors.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_slim_template.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_tabs.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_text_interpolation.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_thread_options.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/core/test_unicode.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/include/files/recursive.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/include/files/slimfile.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/include/files/subdir/test.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/include/files/textfile +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/include/test_include.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/literate/TESTS.md +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/literate/helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/literate/run.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/logic_less/test_logic_less.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/Rakefile +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/controllers/application_controller.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/controllers/entries_controller.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/controllers/slim_controller.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/helpers/application_helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/models/entry.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/entries/edit.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/layouts/application.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/_partial.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/content_for.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/erb.html.erb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/form_for.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/helper.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/integers.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/no_layout.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/normal.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/partial.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/splat.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/thread_options.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/variables.html.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/app/views/slim/xml.slim +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config.ru +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/application.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/boot.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/environment.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/environments/test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/initializers/backtrace_silencers.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/initializers/inflections.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/initializers/mime_types.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/initializers/secret_token.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/initializers/session_store.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/locales/en.yml +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/config/routes.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/script/rails +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/test/helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/rails/test/test_slim.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/smart/test_smart_text.rb +6 -6
- data/bundle/ruby/2.3.0/gems/{slim-3.0.6 → slim-3.0.7}/test/translator/test_translator.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/CHANGES +5 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/EXPRESSIONS.md +0 -0
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/Gemfile +3 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/LICENSE +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/README.md +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/Rakefile +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple.rb +2 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/engine.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/erb/engine.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/erb/parser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/erb/template.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/erb/trimming.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/exceptions.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/code_merger.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/control_flow.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/dynamic_inliner.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/encoding.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/eraser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/escapable.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/multi_flattener.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/remove_bom.rb +1 -1
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/filters/static_analyzer.rb +87 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/static_merger.rb +0 -0
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/filters/string_splitter.rb +130 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/validator.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generator.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/array.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/array_buffer.rb +3 -2
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/erb.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/rails_output_buffer.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/string_buffer.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/grammar.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_merger.rb +5 -10
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_remover.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_sorter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/dispatcher.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/fast.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/pretty.rb +2 -2
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/safe.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/map.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/mixins/dispatcher.rb +8 -6
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/mixins/engine_dsl.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/mixins/grammar_dsl.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/mixins/options.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/mixins/template.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/parser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/templates.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/templates/rails.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/templates/tilt.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/utils.rb +15 -4
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/lib/temple/version.rb +3 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/temple.gemspec +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_code_merger.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_control_flow.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_dynamic_inliner.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_eraser.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_escapable.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_multi_flattener.rb +0 -0
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_static_analyzer.rb +23 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/filters/test_static_merger.rb +0 -0
- data/bundle/ruby/2.3.0/gems/temple-0.7.7/test/filters/test_string_splitter.rb +18 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/html/test_attribute_merger.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/html/test_attribute_remover.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/html/test_attribute_sorter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/html/test_fast.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/html/test_pretty.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/mixins/test_dispatcher.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/mixins/test_grammar_dsl.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_engine.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_erb.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_filter.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_generator.rb +4 -4
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_grammar.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_map.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/test/test_utils.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/CHANGELOG.md +17 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/COPYING +1 -1
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/Gemfile +3 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/HACKING +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/README.md +3 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/Rakefile +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/bin/tilt +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/docs/TEMPLATES.md +34 -4
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/docs/common.css +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt.rb +10 -6
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/asciidoc.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/babel.rb +2 -1
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/bluecloth.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/builder.rb +12 -8
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/coffee.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/lib/tilt/commonmarker.rb +21 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/creole.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/csv.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/lib/tilt/dummy.rb +3 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/erb.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/erubis.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/etanni.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/haml.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/kramdown.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/less.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/liquid.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/mapping.rb +37 -9
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/markaby.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/maruku.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/nokogiri.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/lib/tilt/pandoc.rb +49 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/plain.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/prawn.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/radius.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/rdiscount.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/rdoc.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/redcarpet.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/redcloth.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/lib/tilt/rst-pandoc.rb +18 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/sass.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/string.rb +1 -1
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/template.rb +6 -3
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/lib/tilt/typescript.rb +26 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/wikicloth.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/lib/tilt/yajl.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/man/index.txt +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/man/tilt.1.ronn +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/locals.mab +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/markaby.mab +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/markaby_other_static.mab +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/render_twice.mab +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/scope.mab +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/markaby/yielding.mab +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/test/mytemplate.rb +2 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/test_helper.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_asciidoctor_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_babeltemplate.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_blueclothtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_buildertemplate_test.rb +13 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_cache_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_coffeescripttemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/test/tilt_commonmarkertemplate_test.rb +20 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_compilesite_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_creoletemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_csv_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_erbtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_erubistemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_etannitemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_hamltemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_kramdown_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_lesstemplate_test.less +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_lesstemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_liquidtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_mapping_test.rb +17 -14
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_markaby_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_markdown_test.rb +9 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_marukutemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_metadata_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_nokogiritemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/test/tilt_pandoctemplate_test.rb +67 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_prawntemplate.prawn +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_prawntemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_radiustemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_rdiscounttemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_rdoctemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_redcarpettemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_redclothtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/test/tilt_rstpandoctemplate_test.rb +32 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_sasstemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_stringtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_template_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/tilt-2.0.5/test/tilt_typescript_test.rb +34 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_wikiclothtemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/test/tilt_yajltemplate_test.rb +0 -0
- data/bundle/ruby/2.3.0/gems/{tilt-2.0.2 → tilt-2.0.5}/tilt.gemspec +12 -2
- data/lib/brakeman.rb +21 -12
- data/lib/brakeman/checks/check_sql.rb +3 -3
- data/lib/brakeman/checks/check_validation_regex.rb +31 -3
- data/lib/brakeman/options.rb +4 -0
- data/lib/brakeman/parsers/rails3_erubis.rb +43 -23
- data/lib/brakeman/processors/alias_processor.rb +5 -0
- data/lib/brakeman/processors/base_processor.rb +2 -8
- data/lib/brakeman/processors/erb_template_processor.rb +1 -5
- data/lib/brakeman/processors/erubis_template_processor.rb +16 -10
- data/lib/brakeman/processors/haml_template_processor.rb +4 -2
- data/lib/brakeman/processors/lib/basic_processor.rb +2 -16
- data/lib/brakeman/processors/lib/safe_call_helper.rb +16 -0
- data/lib/brakeman/processors/output_processor.rb +1 -1
- data/lib/brakeman/processors/slim_template_processor.rb +1 -5
- data/lib/brakeman/processors/template_processor.rb +19 -0
- data/lib/brakeman/rescanner.rb +2 -1
- data/lib/brakeman/scanner.rb +2 -4
- data/lib/brakeman/tracker.rb +0 -9
- data/lib/brakeman/tracker/collection.rb +4 -0
- data/lib/brakeman/version.rb +1 -1
- metadata +322 -307
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.1/lib/ruby20_parser.rb +0 -6723
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.1/lib/ruby21_parser.rb +0 -6764
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.1/lib/ruby22_parser.rb +0 -6804
- data/bundle/ruby/2.3.0/gems/ruby_parser-3.8.1/lib/ruby23_parser.rb +0 -6905
- data/bundle/ruby/2.3.0/gems/temple-0.7.6/Gemfile +0 -3
- data/bundle/ruby/2.3.0/gems/temple-0.7.6/lib/temple/version.rb +0 -3
@@ -185,13 +185,21 @@ rule
|
|
185
185
|
{
|
186
186
|
result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5])
|
187
187
|
}
|
188
|
-
| primary_value
|
188
|
+
| primary_value call_op tIDENTIFIER tOP_ASGN command_call
|
189
189
|
{
|
190
190
|
result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym)
|
191
|
+
if val[1] == '&.'
|
192
|
+
result[0] = :safe_op_asgn
|
193
|
+
end
|
194
|
+
result.line = val[0].line
|
191
195
|
}
|
192
|
-
| primary_value
|
196
|
+
| primary_value call_op tCONSTANT tOP_ASGN command_call
|
193
197
|
{
|
194
198
|
result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym)
|
199
|
+
if val[1] == '&.'
|
200
|
+
result[0] = :safe_op_asgn
|
201
|
+
end
|
202
|
+
result.line = val[0].line
|
195
203
|
}
|
196
204
|
| primary_value tCOLON2 tCONSTANT tOP_ASGN command_call
|
197
205
|
{
|
@@ -297,19 +305,14 @@ rule
|
|
297
305
|
result.insert 1, operation
|
298
306
|
end
|
299
307
|
}
|
300
|
-
| primary_value
|
308
|
+
| primary_value call_op operation2 command_args =tLOWEST
|
301
309
|
{
|
302
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
310
|
+
result = new_call val[0], val[2].to_sym, val[3], val[1]
|
303
311
|
}
|
304
|
-
| primary_value
|
305
|
-
{
|
306
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
307
|
-
result[0] = :safe_call
|
308
|
-
}
|
309
|
-
| primary_value tDOT operation2 command_args cmd_brace_block
|
312
|
+
| primary_value call_op operation2 command_args cmd_brace_block
|
310
313
|
{
|
311
314
|
recv, _, msg, args, block = val
|
312
|
-
call = new_call recv, msg.to_sym, args
|
315
|
+
call = new_call recv, msg.to_sym, args, val[1]
|
313
316
|
|
314
317
|
block_dup_check call, block
|
315
318
|
|
@@ -451,25 +454,17 @@ rule
|
|
451
454
|
{
|
452
455
|
result = self.aryset val[0], val[2]
|
453
456
|
}
|
454
|
-
| primary_value
|
457
|
+
| primary_value call_op tIDENTIFIER
|
455
458
|
{
|
456
|
-
result =
|
457
|
-
}
|
458
|
-
| primary_value tLONELY tIDENTIFIER
|
459
|
-
{
|
460
|
-
result = s(:attrasgnx, val[0], :"#{val[2]}=")
|
459
|
+
result = new_attrasgn val[0], val[2], val[1]
|
461
460
|
}
|
462
461
|
| primary_value tCOLON2 tIDENTIFIER
|
463
462
|
{
|
464
463
|
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
465
464
|
}
|
466
|
-
| primary_value
|
465
|
+
| primary_value call_op tCONSTANT
|
467
466
|
{
|
468
|
-
result =
|
469
|
-
}
|
470
|
-
| primary_value tLONELY tCONSTANT
|
471
|
-
{
|
472
|
-
result = s(:attrasgnx, val[0], :"#{val[2]}=")
|
467
|
+
result = new_attrasgn val[0], val[2], val[1]
|
473
468
|
}
|
474
469
|
| primary_value tCOLON2 tCONSTANT
|
475
470
|
{
|
@@ -507,25 +502,17 @@ rule
|
|
507
502
|
{
|
508
503
|
result = self.aryset val[0], val[2]
|
509
504
|
}
|
510
|
-
| primary_value
|
511
|
-
{
|
512
|
-
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
513
|
-
}
|
514
|
-
| primary_value tLONELY tIDENTIFIER
|
505
|
+
| primary_value call_op tIDENTIFIER # REFACTOR
|
515
506
|
{
|
516
|
-
result =
|
507
|
+
result = new_attrasgn val[0], val[2], val[1]
|
517
508
|
}
|
518
509
|
| primary_value tCOLON2 tIDENTIFIER
|
519
510
|
{
|
520
511
|
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
521
512
|
}
|
522
|
-
| primary_value
|
513
|
+
| primary_value call_op tCONSTANT # REFACTOR?
|
523
514
|
{
|
524
|
-
result =
|
525
|
-
}
|
526
|
-
| primary_value tLONELY tCONSTANT
|
527
|
-
{
|
528
|
-
result = s(:safe_attrasgn, val[0], :"#{val[2]}=")
|
515
|
+
result = new_attrasgn val[0], val[2], val[1]
|
529
516
|
}
|
530
517
|
| primary_value tCOLON2 tCONSTANT
|
531
518
|
{
|
@@ -642,13 +629,13 @@ rule
|
|
642
629
|
val[2][0] = :arglist if val[2]
|
643
630
|
result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5])
|
644
631
|
}
|
645
|
-
| primary_value
|
632
|
+
| primary_value call_op tIDENTIFIER tOP_ASGN arg
|
646
633
|
{
|
647
|
-
result =
|
634
|
+
result = new_op_asgn2 val
|
648
635
|
}
|
649
|
-
| primary_value
|
636
|
+
| primary_value call_op tCONSTANT tOP_ASGN arg
|
650
637
|
{
|
651
|
-
result =
|
638
|
+
result = new_op_asgn2 val
|
652
639
|
}
|
653
640
|
| primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg
|
654
641
|
{
|
@@ -1567,14 +1554,9 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1567
1554
|
args = self.call_args val[2..-1]
|
1568
1555
|
result = val[0].concat args[1..-1]
|
1569
1556
|
}
|
1570
|
-
| primary_value
|
1571
|
-
{
|
1572
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
1573
|
-
}
|
1574
|
-
| primary_value tLONELY operation2 opt_paren_args
|
1557
|
+
| primary_value call_op operation2 opt_paren_args
|
1575
1558
|
{
|
1576
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
1577
|
-
result[0] = :safe_call
|
1559
|
+
result = new_call val[0], val[2].to_sym, val[3], val[1]
|
1578
1560
|
}
|
1579
1561
|
| primary_value tCOLON2 operation2 paren_args
|
1580
1562
|
{
|
@@ -1584,14 +1566,9 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1584
1566
|
{
|
1585
1567
|
result = new_call val[0], val[2].to_sym
|
1586
1568
|
}
|
1587
|
-
| primary_value
|
1569
|
+
| primary_value call_op paren_args
|
1588
1570
|
{
|
1589
|
-
result = new_call val[0], :call, val[2]
|
1590
|
-
}
|
1591
|
-
| primary_value tLONELY paren_args
|
1592
|
-
{
|
1593
|
-
result = new_call val[0], :call, val[2]
|
1594
|
-
result[0] = :safe_call
|
1571
|
+
result = new_call val[0], :call, val[2], val[1]
|
1595
1572
|
}
|
1596
1573
|
| primary_value tCOLON2 paren_args
|
1597
1574
|
{
|
@@ -1868,7 +1845,7 @@ regexp_contents: none
|
|
1868
1845
|
result = lexer.lex_strterm
|
1869
1846
|
|
1870
1847
|
lexer.lex_strterm = nil
|
1871
|
-
lexer.lex_state = :expr_beg
|
1848
|
+
lexer.lex_state = :expr_beg # TODO: expr_value ?
|
1872
1849
|
}
|
1873
1850
|
string_dvar
|
1874
1851
|
{
|
@@ -1889,7 +1866,7 @@ regexp_contents: none
|
|
1889
1866
|
lexer.brace_nest = 0
|
1890
1867
|
lexer.string_nest = 0
|
1891
1868
|
|
1892
|
-
lexer.lex_state = :
|
1869
|
+
lexer.lex_state = :expr_value
|
1893
1870
|
}
|
1894
1871
|
compstmt tRCURLY
|
1895
1872
|
{
|
@@ -2398,6 +2375,8 @@ keyword_variable: kNIL { result = s(:nil) }
|
|
2398
2375
|
operation2: tIDENTIFIER | tCONSTANT | tFID | op
|
2399
2376
|
operation3: tIDENTIFIER | tFID | op
|
2400
2377
|
dot_or_colon: tDOT | tCOLON2
|
2378
|
+
call_op: tDOT
|
2379
|
+
| tLONELY
|
2401
2380
|
opt_terms: | terms
|
2402
2381
|
opt_nl: | tNL
|
2403
2382
|
rparen: opt_nl tRPAREN
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -195,13 +195,21 @@ rule
|
|
195
195
|
{
|
196
196
|
result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5])
|
197
197
|
}
|
198
|
-
| primary_value
|
198
|
+
| primary_value call_op tIDENTIFIER tOP_ASGN command_call
|
199
199
|
{
|
200
200
|
result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym)
|
201
|
+
if val[1] == '&.'
|
202
|
+
result[0] = :safe_op_asgn
|
203
|
+
end
|
204
|
+
result.line = val[0].line
|
201
205
|
}
|
202
|
-
| primary_value
|
206
|
+
| primary_value call_op tCONSTANT tOP_ASGN command_call
|
203
207
|
{
|
204
208
|
result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym)
|
209
|
+
if val[1] == '&.'
|
210
|
+
result[0] = :safe_op_asgn
|
211
|
+
end
|
212
|
+
result.line = val[0].line
|
205
213
|
}
|
206
214
|
| primary_value tCOLON2 tCONSTANT tOP_ASGN command_call
|
207
215
|
{
|
@@ -313,21 +321,14 @@ rule
|
|
313
321
|
result.insert 1, operation
|
314
322
|
end
|
315
323
|
}
|
316
|
-
| primary_value
|
324
|
+
| primary_value call_op operation2 command_args =tLOWEST
|
317
325
|
{
|
318
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
326
|
+
result = new_call val[0], val[2].to_sym, val[3], val[1]
|
319
327
|
}
|
320
|
-
|
321
|
-
| primary_value tLONELY operation2 command_args =tLOWEST
|
322
|
-
{
|
323
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
324
|
-
result[0] = :safe_call
|
325
|
-
}
|
326
|
-
#endif
|
327
|
-
| primary_value tDOT operation2 command_args cmd_brace_block
|
328
|
+
| primary_value call_op operation2 command_args cmd_brace_block
|
328
329
|
{
|
329
330
|
recv, _, msg, args, block = val
|
330
|
-
call = new_call recv, msg.to_sym, args
|
331
|
+
call = new_call recv, msg.to_sym, args, val[1]
|
331
332
|
|
332
333
|
block_dup_check call, block
|
333
334
|
|
@@ -469,30 +470,18 @@ rule
|
|
469
470
|
{
|
470
471
|
result = self.aryset val[0], val[2]
|
471
472
|
}
|
472
|
-
| primary_value
|
473
|
-
{
|
474
|
-
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
475
|
-
}
|
476
|
-
#if defined(RUBY23)
|
477
|
-
| primary_value tLONELY tIDENTIFIER
|
473
|
+
| primary_value call_op tIDENTIFIER
|
478
474
|
{
|
479
|
-
result =
|
475
|
+
result = new_attrasgn val[0], val[2], val[1]
|
480
476
|
}
|
481
|
-
#endif
|
482
477
|
| primary_value tCOLON2 tIDENTIFIER
|
483
478
|
{
|
484
479
|
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
485
480
|
}
|
486
|
-
| primary_value
|
481
|
+
| primary_value call_op tCONSTANT
|
487
482
|
{
|
488
|
-
result =
|
483
|
+
result = new_attrasgn val[0], val[2], val[1]
|
489
484
|
}
|
490
|
-
#if defined(RUBY23)
|
491
|
-
| primary_value tLONELY tCONSTANT
|
492
|
-
{
|
493
|
-
result = s(:attrasgnx, val[0], :"#{val[2]}=")
|
494
|
-
}
|
495
|
-
#endif
|
496
485
|
| primary_value tCOLON2 tCONSTANT
|
497
486
|
{
|
498
487
|
if (self.in_def || self.in_single > 0) then
|
@@ -529,30 +518,18 @@ rule
|
|
529
518
|
{
|
530
519
|
result = self.aryset val[0], val[2]
|
531
520
|
}
|
532
|
-
| primary_value
|
533
|
-
{
|
534
|
-
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
535
|
-
}
|
536
|
-
#if defined(RUBY23)
|
537
|
-
| primary_value tLONELY tIDENTIFIER
|
521
|
+
| primary_value call_op tIDENTIFIER # REFACTOR
|
538
522
|
{
|
539
|
-
result =
|
523
|
+
result = new_attrasgn val[0], val[2], val[1]
|
540
524
|
}
|
541
|
-
#endif
|
542
525
|
| primary_value tCOLON2 tIDENTIFIER
|
543
526
|
{
|
544
527
|
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
545
528
|
}
|
546
|
-
| primary_value
|
547
|
-
{
|
548
|
-
result = s(:attrasgn, val[0], :"#{val[2]}=")
|
549
|
-
}
|
550
|
-
#if defined(RUBY23)
|
551
|
-
| primary_value tLONELY tCONSTANT
|
529
|
+
| primary_value call_op tCONSTANT # REFACTOR?
|
552
530
|
{
|
553
|
-
result =
|
531
|
+
result = new_attrasgn val[0], val[2], val[1]
|
554
532
|
}
|
555
|
-
#endif
|
556
533
|
| primary_value tCOLON2 tCONSTANT
|
557
534
|
{
|
558
535
|
if (self.in_def || self.in_single > 0) then
|
@@ -671,13 +648,13 @@ rule
|
|
671
648
|
val[2][0] = :arglist if val[2]
|
672
649
|
result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5])
|
673
650
|
}
|
674
|
-
| primary_value
|
651
|
+
| primary_value call_op tIDENTIFIER tOP_ASGN arg
|
675
652
|
{
|
676
|
-
result =
|
653
|
+
result = new_op_asgn2 val
|
677
654
|
}
|
678
|
-
| primary_value
|
655
|
+
| primary_value call_op tCONSTANT tOP_ASGN arg
|
679
656
|
{
|
680
|
-
result =
|
657
|
+
result = new_op_asgn2 val
|
681
658
|
}
|
682
659
|
| primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg
|
683
660
|
{
|
@@ -1606,17 +1583,10 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1606
1583
|
args = self.call_args val[2..-1]
|
1607
1584
|
result = val[0].concat args[1..-1]
|
1608
1585
|
}
|
1609
|
-
| primary_value
|
1610
|
-
{
|
1611
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
1612
|
-
}
|
1613
|
-
#if defined(RUBY23)
|
1614
|
-
| primary_value tLONELY operation2 opt_paren_args
|
1586
|
+
| primary_value call_op operation2 opt_paren_args
|
1615
1587
|
{
|
1616
|
-
result = new_call val[0], val[2].to_sym, val[3]
|
1617
|
-
result[0] = :safe_call
|
1588
|
+
result = new_call val[0], val[2].to_sym, val[3], val[1]
|
1618
1589
|
}
|
1619
|
-
#endif
|
1620
1590
|
| primary_value tCOLON2 operation2 paren_args
|
1621
1591
|
{
|
1622
1592
|
result = new_call val[0], val[2].to_sym, val[3]
|
@@ -1625,17 +1595,10 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1625
1595
|
{
|
1626
1596
|
result = new_call val[0], val[2].to_sym
|
1627
1597
|
}
|
1628
|
-
| primary_value
|
1598
|
+
| primary_value call_op paren_args
|
1629
1599
|
{
|
1630
|
-
result = new_call val[0], :call, val[2]
|
1600
|
+
result = new_call val[0], :call, val[2], val[1]
|
1631
1601
|
}
|
1632
|
-
#if defined(RUBY23)
|
1633
|
-
| primary_value tLONELY paren_args
|
1634
|
-
{
|
1635
|
-
result = new_call val[0], :call, val[2]
|
1636
|
-
result[0] = :safe_call
|
1637
|
-
}
|
1638
|
-
#endif
|
1639
1602
|
| primary_value tCOLON2 paren_args
|
1640
1603
|
{
|
1641
1604
|
result = new_call val[0], :call, val[2]
|
@@ -1911,7 +1874,7 @@ regexp_contents: none
|
|
1911
1874
|
result = lexer.lex_strterm
|
1912
1875
|
|
1913
1876
|
lexer.lex_strterm = nil
|
1914
|
-
lexer.lex_state = :expr_beg
|
1877
|
+
lexer.lex_state = :expr_beg # TODO: expr_value ?
|
1915
1878
|
}
|
1916
1879
|
string_dvar
|
1917
1880
|
{
|
@@ -1932,7 +1895,7 @@ regexp_contents: none
|
|
1932
1895
|
lexer.brace_nest = 0
|
1933
1896
|
lexer.string_nest = 0
|
1934
1897
|
|
1935
|
-
lexer.lex_state = :
|
1898
|
+
lexer.lex_state = :expr_value
|
1936
1899
|
}
|
1937
1900
|
compstmt tRCURLY
|
1938
1901
|
{
|
@@ -2479,6 +2442,10 @@ keyword_variable: kNIL { result = s(:nil) }
|
|
2479
2442
|
operation2: tIDENTIFIER | tCONSTANT | tFID | op
|
2480
2443
|
operation3: tIDENTIFIER | tFID | op
|
2481
2444
|
dot_or_colon: tDOT | tCOLON2
|
2445
|
+
call_op: tDOT
|
2446
|
+
#if defined(RUBY23)
|
2447
|
+
| tLONELY
|
2448
|
+
#endif
|
2482
2449
|
opt_terms: | terms
|
2483
2450
|
opt_nl: | tNL
|
2484
2451
|
rparen: opt_nl tRPAREN
|
data/bundle/ruby/2.3.0/gems/{ruby_parser-3.8.1 → ruby_parser-3.8.2}/lib/ruby_parser_extras.rb
RENAMED
@@ -91,7 +91,7 @@ class RPStringScanner < StringScanner
|
|
91
91
|
end
|
92
92
|
|
93
93
|
module RubyParserStuff
|
94
|
-
VERSION = "3.8.
|
94
|
+
VERSION = "3.8.2" unless constants.include? "VERSION" # SIGH
|
95
95
|
|
96
96
|
attr_accessor :lexer, :in_def, :in_single, :file
|
97
97
|
attr_reader :env, :comments
|
@@ -557,8 +557,15 @@ module RubyParserStuff
|
|
557
557
|
end
|
558
558
|
end
|
559
559
|
|
560
|
-
def new_call recv, meth, args = nil
|
561
|
-
result =
|
560
|
+
def new_call recv, meth, args = nil, call_op = :'.'
|
561
|
+
result = case call_op.to_sym
|
562
|
+
when :'.'
|
563
|
+
s(:call, recv, meth)
|
564
|
+
when :'&.'
|
565
|
+
s(:safe_call, recv, meth)
|
566
|
+
else
|
567
|
+
raise "unknown call operator: `#{type.inspect}`"
|
568
|
+
end
|
562
569
|
|
563
570
|
# TODO: need a test with f(&b) to produce block_pass
|
564
571
|
# TODO: need a test with f(&b) { } to produce warning
|
@@ -577,6 +584,22 @@ module RubyParserStuff
|
|
577
584
|
result
|
578
585
|
end
|
579
586
|
|
587
|
+
def new_attrasgn recv, meth, call_op
|
588
|
+
meth = :"#{meth}="
|
589
|
+
|
590
|
+
result = case call_op.to_sym
|
591
|
+
when :'.'
|
592
|
+
s(:attrasgn, recv, meth)
|
593
|
+
when :'&.'
|
594
|
+
s(:safe_attrasgn, recv, meth)
|
595
|
+
else
|
596
|
+
raise "unknown call operator: `#{type.inspect}`"
|
597
|
+
end
|
598
|
+
|
599
|
+
result.line = recv.line
|
600
|
+
result
|
601
|
+
end
|
602
|
+
|
580
603
|
def new_case expr, body, line
|
581
604
|
result = s(:case, expr)
|
582
605
|
|
@@ -745,6 +768,23 @@ module RubyParserStuff
|
|
745
768
|
result
|
746
769
|
end
|
747
770
|
|
771
|
+
def new_op_asgn2 val
|
772
|
+
recv, call_op, meth, op, arg = val
|
773
|
+
meth = :"#{meth}="
|
774
|
+
|
775
|
+
result = case call_op.to_sym
|
776
|
+
when :'.'
|
777
|
+
s(:op_asgn2, recv, meth, op.to_sym, arg)
|
778
|
+
when :'&.'
|
779
|
+
s(:safe_op_asgn2, recv, meth, op.to_sym, arg)
|
780
|
+
else
|
781
|
+
raise "unknown call operator: `#{type.inspect}`"
|
782
|
+
end
|
783
|
+
|
784
|
+
result.line = recv.line
|
785
|
+
result
|
786
|
+
end
|
787
|
+
|
748
788
|
def new_regexp val
|
749
789
|
node = val[1] || s(:str, '')
|
750
790
|
options = val[2]
|