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
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -43,7 +43,9 @@ module Temple
|
|
43
43
|
autoload :CodeMerger, 'temple/filters/code_merger'
|
44
44
|
autoload :ControlFlow, 'temple/filters/control_flow'
|
45
45
|
autoload :MultiFlattener, 'temple/filters/multi_flattener'
|
46
|
+
autoload :StaticAnalyzer, 'temple/filters/static_analyzer'
|
46
47
|
autoload :StaticMerger, 'temple/filters/static_merger'
|
48
|
+
autoload :StringSplitter, 'temple/filters/string_splitter'
|
47
49
|
autoload :DynamicInliner, 'temple/filters/dynamic_inliner'
|
48
50
|
autoload :Escapable, 'temple/filters/escapable'
|
49
51
|
autoload :Eraser, 'temple/filters/eraser'
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/control_flow.rb
RENAMED
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/dynamic_inliner.rb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/multi_flattener.rb
RENAMED
File without changes
|
@@ -0,0 +1,87 @@
|
|
1
|
+
begin
|
2
|
+
require 'ripper'
|
3
|
+
rescue LoadError
|
4
|
+
end
|
5
|
+
|
6
|
+
module Temple
|
7
|
+
module Filters
|
8
|
+
# Convert [:dynamic, code] to [:static, text] if code is static Ruby expression.
|
9
|
+
class StaticAnalyzer < Filter
|
10
|
+
STATIC_TOKENS = [
|
11
|
+
:on_tstring_beg, :on_tstring_end, :on_tstring_content,
|
12
|
+
:on_embexpr_beg, :on_embexpr_end,
|
13
|
+
:on_lbracket, :on_rbracket,
|
14
|
+
:on_qwords_beg, :on_words_sep, :on_qwords_sep,
|
15
|
+
:on_lparen, :on_rparen,
|
16
|
+
:on_lbrace, :on_rbrace, :on_label,
|
17
|
+
:on_int, :on_float, :on_imaginary,
|
18
|
+
:on_comma, :on_sp,
|
19
|
+
].freeze
|
20
|
+
|
21
|
+
DYNAMIC_TOKENS = [
|
22
|
+
:on_ident, :on_period,
|
23
|
+
].freeze
|
24
|
+
|
25
|
+
STATIC_KEYWORDS = [
|
26
|
+
'true', 'false', 'nil',
|
27
|
+
].freeze
|
28
|
+
|
29
|
+
STATIC_OPERATORS = [
|
30
|
+
'=>',
|
31
|
+
].freeze
|
32
|
+
|
33
|
+
if defined?(Ripper)
|
34
|
+
def self.static?(code)
|
35
|
+
return false if code.nil? || code.strip.empty?
|
36
|
+
return false if SyntaxChecker.syntax_error?(code)
|
37
|
+
|
38
|
+
Ripper.lex(code).each do |(_, col), token, str|
|
39
|
+
case token
|
40
|
+
when *STATIC_TOKENS
|
41
|
+
# noop
|
42
|
+
when :on_kw
|
43
|
+
return false unless STATIC_KEYWORDS.include?(str)
|
44
|
+
when :on_op
|
45
|
+
return false unless STATIC_OPERATORS.include?(str)
|
46
|
+
when *DYNAMIC_TOKENS
|
47
|
+
return false
|
48
|
+
else
|
49
|
+
return false
|
50
|
+
end
|
51
|
+
end
|
52
|
+
true
|
53
|
+
end
|
54
|
+
|
55
|
+
def on_dynamic(code)
|
56
|
+
if StaticAnalyzer.static?(code)
|
57
|
+
[:static, eval(code).to_s]
|
58
|
+
else
|
59
|
+
[:dynamic, code]
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
class SyntaxChecker < Ripper
|
64
|
+
class ParseError < StandardError; end
|
65
|
+
|
66
|
+
def self.syntax_error?(code)
|
67
|
+
self.new(code).parse
|
68
|
+
false
|
69
|
+
rescue ParseError
|
70
|
+
true
|
71
|
+
end
|
72
|
+
|
73
|
+
private
|
74
|
+
|
75
|
+
def on_parse_error(*)
|
76
|
+
raise ParseError
|
77
|
+
end
|
78
|
+
end
|
79
|
+
else
|
80
|
+
# Do nothing if ripper is unavailable
|
81
|
+
def call(ast)
|
82
|
+
ast
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/filters/static_merger.rb
RENAMED
File without changes
|
@@ -0,0 +1,130 @@
|
|
1
|
+
begin
|
2
|
+
require 'ripper'
|
3
|
+
rescue LoadError
|
4
|
+
end
|
5
|
+
|
6
|
+
module Temple
|
7
|
+
module Filters
|
8
|
+
# Compile [:dynamic, "foo#{bar}"] to [:multi, [:static, 'foo'], [:dynamic, 'bar']]
|
9
|
+
class StringSplitter < Filter
|
10
|
+
if defined?(Ripper) && RUBY_VERSION >= "2.0.0"
|
11
|
+
class << self
|
12
|
+
# `code` param must be valid string literal
|
13
|
+
def compile(code)
|
14
|
+
[].tap do |exps|
|
15
|
+
tokens = Ripper.lex(code.strip)
|
16
|
+
tokens.pop while tokens.last && [:on_comment, :on_sp].include?(tokens.last[1])
|
17
|
+
|
18
|
+
if tokens.size < 2
|
19
|
+
raise "Expected token size >= 2 but got: #{tokens.size}"
|
20
|
+
end
|
21
|
+
compile_tokens!(exps, tokens)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
def strip_quotes!(tokens)
|
28
|
+
_, type, beg_str = tokens.shift
|
29
|
+
if type != :on_tstring_beg
|
30
|
+
raise "Expected :on_tstring_beg but got: #{type}"
|
31
|
+
end
|
32
|
+
|
33
|
+
_, type, end_str = tokens.pop
|
34
|
+
if type != :on_tstring_end
|
35
|
+
raise "Expected :on_tstring_end but got: #{type}"
|
36
|
+
end
|
37
|
+
|
38
|
+
[beg_str, end_str]
|
39
|
+
end
|
40
|
+
|
41
|
+
def compile_tokens!(exps, tokens)
|
42
|
+
beg_str, end_str = strip_quotes!(tokens)
|
43
|
+
|
44
|
+
until tokens.empty?
|
45
|
+
_, type, str = tokens.shift
|
46
|
+
|
47
|
+
case type
|
48
|
+
when :on_tstring_content
|
49
|
+
exps << [:static, eval("#{beg_str}#{str}#{end_str}").to_s]
|
50
|
+
when :on_embexpr_beg
|
51
|
+
embedded = shift_balanced_embexpr(tokens)
|
52
|
+
exps << [:dynamic, embedded] unless embedded.empty?
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def shift_balanced_embexpr(tokens)
|
58
|
+
String.new.tap do |embedded|
|
59
|
+
embexpr_open = 1
|
60
|
+
|
61
|
+
until tokens.empty?
|
62
|
+
_, type, str = tokens.shift
|
63
|
+
case type
|
64
|
+
when :on_embexpr_beg
|
65
|
+
embexpr_open += 1
|
66
|
+
when :on_embexpr_end
|
67
|
+
embexpr_open -= 1
|
68
|
+
break if embexpr_open == 0
|
69
|
+
end
|
70
|
+
|
71
|
+
embedded << str
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def on_dynamic(code)
|
78
|
+
return [:dynamic, code] unless string_literal?(code)
|
79
|
+
return [:dynamic, code] if code.include?("\n")
|
80
|
+
|
81
|
+
temple = [:multi]
|
82
|
+
StringSplitter.compile(code).each do |type, content|
|
83
|
+
case type
|
84
|
+
when :static
|
85
|
+
temple << [:static, content]
|
86
|
+
when :dynamic
|
87
|
+
temple << on_dynamic(content)
|
88
|
+
end
|
89
|
+
end
|
90
|
+
temple
|
91
|
+
end
|
92
|
+
|
93
|
+
private
|
94
|
+
|
95
|
+
def string_literal?(code)
|
96
|
+
return false if SyntaxChecker.syntax_error?(code)
|
97
|
+
|
98
|
+
type, instructions = Ripper.sexp(code)
|
99
|
+
return false if type != :program
|
100
|
+
return false if instructions.size > 1
|
101
|
+
|
102
|
+
type, _ = instructions.first
|
103
|
+
type == :string_literal
|
104
|
+
end
|
105
|
+
|
106
|
+
class SyntaxChecker < Ripper
|
107
|
+
class ParseError < StandardError; end
|
108
|
+
|
109
|
+
def self.syntax_error?(code)
|
110
|
+
self.new(code).parse
|
111
|
+
false
|
112
|
+
rescue ParseError
|
113
|
+
true
|
114
|
+
end
|
115
|
+
|
116
|
+
private
|
117
|
+
|
118
|
+
def on_parse_error(*)
|
119
|
+
raise ParseError
|
120
|
+
end
|
121
|
+
end
|
122
|
+
else
|
123
|
+
# Do nothing if ripper is unavailable
|
124
|
+
def call(ast)
|
125
|
+
ast
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
File without changes
|
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/array_buffer.rb
RENAMED
@@ -5,7 +5,7 @@ module Temple
|
|
5
5
|
# _buf = []
|
6
6
|
# _buf << "static"
|
7
7
|
# _buf << dynamic
|
8
|
-
# _buf.join
|
8
|
+
# _buf.join("")
|
9
9
|
#
|
10
10
|
# @api public
|
11
11
|
class ArrayBuffer < Array
|
@@ -21,7 +21,8 @@ module Temple
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def return_buffer
|
24
|
-
|
24
|
+
freeze = options[:freeze_static] ? '.freeze' : ''
|
25
|
+
"#{buffer} = #{buffer}.join(\"\"#{freeze})"
|
25
26
|
end
|
26
27
|
end
|
27
28
|
end
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/generators/string_buffer.rb
RENAMED
File without changes
|
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_merger.rb
RENAMED
@@ -6,40 +6,35 @@ module Temple
|
|
6
6
|
define_options merge_attrs: {'id' => '_', 'class' => ' '}
|
7
7
|
|
8
8
|
def on_html_attrs(*attrs)
|
9
|
-
names = []
|
10
9
|
values = {}
|
11
10
|
|
12
|
-
attrs.each do |
|
13
|
-
name
|
11
|
+
attrs.each do |_, _, name, value|
|
12
|
+
name = name.to_s
|
14
13
|
if values[name]
|
15
14
|
raise(FilterError, "Multiple #{name} attributes specified") unless options[:merge_attrs][name]
|
16
15
|
values[name] << value
|
17
16
|
else
|
18
17
|
values[name] = [value]
|
19
|
-
names << name
|
20
18
|
end
|
21
19
|
end
|
22
20
|
|
23
|
-
attrs =
|
24
|
-
value = values[name]
|
21
|
+
attrs = values.map do |name, value|
|
25
22
|
if (delimiter = options[:merge_attrs][name]) && value.size > 1
|
26
23
|
exp = [:multi]
|
27
24
|
if value.all? {|v| contains_nonempty_static?(v) }
|
28
25
|
exp << value.first
|
29
26
|
value[1..-1].each {|v| exp << [:static, delimiter] << v }
|
30
|
-
[:html, :attr, name, exp]
|
31
27
|
else
|
32
28
|
captures = unique_name
|
33
29
|
exp << [:code, "#{captures} = []"]
|
34
30
|
value.each_with_index {|v, i| exp << [:capture, "#{captures}[#{i}]", v] }
|
35
31
|
exp << [:dynamic, "#{captures}.reject(&:empty?).join(#{delimiter.inspect})"]
|
36
32
|
end
|
37
|
-
[:html, :attr, name, exp]
|
38
33
|
else
|
39
|
-
|
34
|
+
exp = value.first
|
40
35
|
end
|
36
|
+
[:html, :attr, name, exp]
|
41
37
|
end
|
42
|
-
|
43
38
|
[:html, :attrs, *attrs]
|
44
39
|
end
|
45
40
|
end
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_remover.rb
RENAMED
File without changes
|
data/bundle/ruby/2.3.0/gems/{temple-0.7.6 → temple-0.7.7}/lib/temple/html/attribute_sorter.rb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -26,8 +26,8 @@ module Temple
|
|
26
26
|
def on_static(content)
|
27
27
|
return [:static, content] unless @pretty
|
28
28
|
unless @pre_tags && @pre_tags =~ content
|
29
|
-
content = content.sub(/\A\s*\n?/, "\n") if @indent_next
|
30
|
-
content = content.gsub("\n", indent)
|
29
|
+
content = content.sub(/\A\s*\n?/, "\n".freeze) if @indent_next
|
30
|
+
content = content.gsub("\n".freeze, indent)
|
31
31
|
end
|
32
32
|
@indent_next = false
|
33
33
|
[:static, content]
|
File without changes
|
File without changes
|
@@ -58,12 +58,14 @@ module Temple
|
|
58
58
|
def replace_dispatcher(exp)
|
59
59
|
tree = DispatchNode.new
|
60
60
|
dispatched_methods.each do |method|
|
61
|
-
method.split('_')[1..-1].inject(tree) {|node, type| node[type.to_sym] }.method = method
|
61
|
+
method.split('_'.freeze)[1..-1].inject(tree) {|node, type| node[type.to_sym] }.method = method
|
62
62
|
end
|
63
|
-
self.class.class_eval
|
64
|
-
|
65
|
-
|
66
|
-
|
63
|
+
self.class.class_eval <<-RUBY, __FILE__, __LINE__ + 1
|
64
|
+
def dispatcher(exp)
|
65
|
+
return replace_dispatcher(exp) if self.class != #{self.class}
|
66
|
+
#{tree.compile.gsub("\n", "\n ")}
|
67
|
+
end
|
68
|
+
RUBY
|
67
69
|
dispatcher(exp)
|
68
70
|
end
|
69
71
|
|
@@ -91,7 +93,7 @@ end}
|
|
91
93
|
code = "case(exp[#{level}])\n"
|
92
94
|
each do |key, child|
|
93
95
|
code << "when #{key.inspect}\n " <<
|
94
|
-
child.compile(level + 1, call_method).gsub("\n", "\n ") << "\n"
|
96
|
+
child.compile(level + 1, call_method).gsub("\n".freeze, "\n ".freeze) << "\n".freeze
|
95
97
|
end
|
96
98
|
code << "else\n " << (call_method || 'exp') << "\nend"
|
97
99
|
end
|