diff --git a/lib/gauntlet_parser.rb b/lib/gauntlet_parser.rb index 864fe5b0a..371b7e40f 100644 --- a/lib/gauntlet_parser.rb +++ b/lib/gauntlet_parser.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true require 'gauntlet' -require 'parser/all' +require_relative 'parser/all' require 'shellwords' class ParserGauntlet < Gauntlet diff --git a/lib/parser.rb b/lib/parser.rb index df660b230..d8969e250 100644 --- a/lib/parser.rb +++ b/lib/parser.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true if RUBY_VERSION =~ /^1\.[89]\./ - require 'parser/version' + require_relative 'parser/version' raise LoadError, <<-UNSUPPORTED_VERSION_MSG parser v#{Parser::VERSION} cannot run on Ruby #{RUBY_VERSION}. Please upgrade to Ruby 2.0.0 or higher, or use an older version of the parser gem. @@ -17,75 +17,75 @@ # @api public # module Parser - require 'parser/version' - require 'parser/messages' - require 'parser/deprecation' + require_relative 'parser/version' + require_relative 'parser/messages' + require_relative 'parser/deprecation' module AST - require 'parser/ast/node' - require 'parser/ast/processor' - require 'parser/meta' + require_relative 'parser/ast/node' + require_relative 'parser/ast/processor' + require_relative 'parser/meta' end module Source - require 'parser/source/buffer' - require 'parser/source/range' - - require 'parser/source/comment' - require 'parser/source/comment/associator' - - require 'parser/source/rewriter' - require 'parser/source/rewriter/action' - require 'parser/source/tree_rewriter' - require 'parser/source/tree_rewriter/action' - - require 'parser/source/map' - require 'parser/source/map/operator' - require 'parser/source/map/collection' - require 'parser/source/map/constant' - require 'parser/source/map/variable' - require 'parser/source/map/keyword' - require 'parser/source/map/definition' - require 'parser/source/map/method_definition' - require 'parser/source/map/send' - require 'parser/source/map/index' - require 'parser/source/map/condition' - require 'parser/source/map/ternary' - require 'parser/source/map/for' - require 'parser/source/map/rescue_body' - require 'parser/source/map/heredoc' - require 'parser/source/map/objc_kwarg' + require_relative 'parser/source/buffer' + require_relative 'parser/source/range' + + require_relative 'parser/source/comment' + require_relative 'parser/source/comment/associator' + + require_relative 'parser/source/rewriter' + require_relative 'parser/source/rewriter/action' + require_relative 'parser/source/tree_rewriter' + require_relative 'parser/source/tree_rewriter/action' + + require_relative 'parser/source/map' + require_relative 'parser/source/map/operator' + require_relative 'parser/source/map/collection' + require_relative 'parser/source/map/constant' + require_relative 'parser/source/map/variable' + require_relative 'parser/source/map/keyword' + require_relative 'parser/source/map/definition' + require_relative 'parser/source/map/method_definition' + require_relative 'parser/source/map/send' + require_relative 'parser/source/map/index' + require_relative 'parser/source/map/condition' + require_relative 'parser/source/map/ternary' + require_relative 'parser/source/map/for' + require_relative 'parser/source/map/rescue_body' + require_relative 'parser/source/map/heredoc' + require_relative 'parser/source/map/objc_kwarg' end - require 'parser/syntax_error' - require 'parser/clobbering_error' - require 'parser/unknown_encoding_in_magic_comment_error' - require 'parser/diagnostic' - require 'parser/diagnostic/engine' + require_relative 'parser/syntax_error' + require_relative 'parser/clobbering_error' + require_relative 'parser/unknown_encoding_in_magic_comment_error' + require_relative 'parser/diagnostic' + require_relative 'parser/diagnostic/engine' - require 'parser/static_environment' + require_relative 'parser/static_environment' if RUBY_ENGINE == 'truffleruby' - require 'parser/lexer-F0' + require_relative 'parser/lexer-F0' else - require 'parser/lexer-F1' + require_relative 'parser/lexer-F1' end - require 'parser/lexer-strings' - require 'parser/lexer/literal' - require 'parser/lexer/stack_state' - require 'parser/lexer/dedenter' + require_relative 'parser/lexer-strings' + require_relative 'parser/lexer/literal' + require_relative 'parser/lexer/stack_state' + require_relative 'parser/lexer/dedenter' module Builders - require 'parser/builders/default' + require_relative 'parser/builders/default' end - require 'parser/context' - require 'parser/max_numparam_stack' - require 'parser/current_arg_stack' - require 'parser/variables_stack' + require_relative 'parser/context' + require_relative 'parser/max_numparam_stack' + require_relative 'parser/current_arg_stack' + require_relative 'parser/variables_stack' - require 'parser/base' + require_relative 'parser/base' - require 'parser/rewriter' - require 'parser/tree_rewriter' + require_relative 'parser/rewriter' + require_relative 'parser/tree_rewriter' end diff --git a/lib/parser/all.rb b/lib/parser/all.rb index cc3fdb73d..813343088 100644 --- a/lib/parser/all.rb +++ b/lib/parser/all.rb @@ -1,17 +1,17 @@ # frozen_string_literal: true -require 'parser/ruby18' -require 'parser/ruby19' -require 'parser/ruby20' -require 'parser/ruby21' -require 'parser/ruby22' -require 'parser/ruby23' -require 'parser/ruby24' -require 'parser/ruby25' -require 'parser/ruby26' -require 'parser/ruby27' -require 'parser/ruby30' -require 'parser/ruby31' -require 'parser/ruby32' -require 'parser/ruby33' -require 'parser/ruby34' +require_relative 'ruby18' +require_relative 'ruby19' +require_relative 'ruby20' +require_relative 'ruby21' +require_relative 'ruby22' +require_relative 'ruby23' +require_relative 'ruby24' +require_relative 'ruby25' +require_relative 'ruby26' +require_relative 'ruby27' +require_relative 'ruby30' +require_relative 'ruby31' +require_relative 'ruby32' +require_relative 'ruby33' +require_relative 'ruby34' diff --git a/lib/parser/current.rb b/lib/parser/current.rb index 29136d392..8d84002dc 100644 --- a/lib/parser/current.rb +++ b/lib/parser/current.rb @@ -17,7 +17,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby20', current_version end - require 'parser/ruby20' + require_relative 'ruby20' CurrentRuby = Ruby20 when /^2\.1\./ @@ -26,7 +26,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby21', current_version end - require 'parser/ruby21' + require_relative 'ruby21' CurrentRuby = Ruby21 when /^2\.2\./ @@ -35,7 +35,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby22', current_version end - require 'parser/ruby22' + require_relative 'ruby22' CurrentRuby = Ruby22 when /^2\.3\./ @@ -44,7 +44,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby23', current_version end - require 'parser/ruby23' + require_relative 'ruby23' CurrentRuby = Ruby23 when /^2\.4\./ @@ -53,7 +53,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby24', current_version end - require 'parser/ruby24' + require_relative 'ruby24' CurrentRuby = Ruby24 when /^2\.5\./ @@ -62,7 +62,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby25', current_version end - require 'parser/ruby25' + require_relative 'ruby25' CurrentRuby = Ruby25 when /^2\.6\./ @@ -71,7 +71,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby26', current_version end - require 'parser/ruby26' + require_relative 'ruby26' CurrentRuby = Ruby26 when /^2\.7\./ @@ -80,7 +80,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby27', current_version end - require 'parser/ruby27' + require_relative 'ruby27' CurrentRuby = Ruby27 when /^3\.0\./ @@ -89,7 +89,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby30', current_version end - require 'parser/ruby30' + require_relative 'ruby30' CurrentRuby = Ruby30 when /^3\.1\./ @@ -98,7 +98,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby31', current_version end - require 'parser/ruby31' + require_relative 'ruby31' CurrentRuby = Ruby31 when /^3\.2\./ @@ -107,7 +107,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby32', current_version end - require 'parser/ruby32' + require_relative 'ruby32' CurrentRuby = Ruby32 when /^3\.3\./ @@ -116,7 +116,7 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby33', current_version end - require 'parser/ruby33' + require_relative 'ruby33' CurrentRuby = Ruby33 when /^3\.4\./ @@ -125,13 +125,13 @@ def warn_syntax_deviation(feature, version) warn_syntax_deviation 'parser/ruby34', current_version end - require 'parser/ruby34' + require_relative 'ruby34' CurrentRuby = Ruby34 else # :nocov: # Keep this in sync with released Ruby. warn_syntax_deviation 'parser/ruby33', '3.3.x' - require 'parser/ruby33' + require_relative 'ruby33' CurrentRuby = Ruby33 end end diff --git a/lib/parser/macruby.y b/lib/parser/macruby.y index 0bfb42136..08dbf6ac3 100644 --- a/lib/parser/macruby.y +++ b/lib/parser/macruby.y @@ -2207,7 +2207,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby18.y b/lib/parser/ruby18.y index 1e16ed8e1..9100e7977 100644 --- a/lib/parser/ruby18.y +++ b/lib/parser/ruby18.y @@ -1947,7 +1947,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby19.y b/lib/parser/ruby19.y index 954a4c12a..f961d7415 100644 --- a/lib/parser/ruby19.y +++ b/lib/parser/ruby19.y @@ -2184,7 +2184,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby20.y b/lib/parser/ruby20.y index 4f07fa96f..e40091de3 100644 --- a/lib/parser/ruby20.y +++ b/lib/parser/ruby20.y @@ -2362,7 +2362,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby21.y b/lib/parser/ruby21.y index 894ff7f5c..b1f44341e 100644 --- a/lib/parser/ruby21.y +++ b/lib/parser/ruby21.y @@ -2366,7 +2366,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby22.y b/lib/parser/ruby22.y index 8a8e27c44..6fac208f4 100644 --- a/lib/parser/ruby22.y +++ b/lib/parser/ruby22.y @@ -2373,7 +2373,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby23.y b/lib/parser/ruby23.y index 7b50781a8..79b922739 100644 --- a/lib/parser/ruby23.y +++ b/lib/parser/ruby23.y @@ -2379,7 +2379,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby24.y b/lib/parser/ruby24.y index ddfb140c0..478bc881b 100644 --- a/lib/parser/ruby24.y +++ b/lib/parser/ruby24.y @@ -2416,7 +2416,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby25.y b/lib/parser/ruby25.y index d56ea874a..9767f7de0 100644 --- a/lib/parser/ruby25.y +++ b/lib/parser/ruby25.y @@ -2406,7 +2406,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby26.y b/lib/parser/ruby26.y index cf061f1e7..e062621fd 100644 --- a/lib/parser/ruby26.y +++ b/lib/parser/ruby26.y @@ -2417,7 +2417,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby27.y b/lib/parser/ruby27.y index 3be053042..eeabf2cbb 100644 --- a/lib/parser/ruby27.y +++ b/lib/parser/ruby27.y @@ -2940,7 +2940,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby30.y b/lib/parser/ruby30.y index f5c43bfd3..8599b0135 100644 --- a/lib/parser/ruby30.y +++ b/lib/parser/ruby30.y @@ -3018,7 +3018,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby31.y b/lib/parser/ruby31.y index 3eec0ac3b..ee3994451 100644 --- a/lib/parser/ruby31.y +++ b/lib/parser/ruby31.y @@ -3153,7 +3153,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby32.y b/lib/parser/ruby32.y index b52ae9539..aba09fef6 100644 --- a/lib/parser/ruby32.y +++ b/lib/parser/ruby32.y @@ -3163,7 +3163,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby33.y b/lib/parser/ruby33.y index 25f097975..e1e066db2 100644 --- a/lib/parser/ruby33.y +++ b/lib/parser/ruby33.y @@ -1915,7 +1915,7 @@ opt_block_args_tail: p_in_kwarg: none { result = @context.in_kwarg - + @lexer.state = :expr_beg @lexer.command_start = false @context.in_kwarg = true @@ -2391,7 +2391,7 @@ opt_block_args_tail: opts = @builder.regexp_options(val[3]) result = @builder.regexp_compose(val[0], val[1], val[2], opts) } - + words_sep: tSPACE | words_sep tSPACE @@ -3111,7 +3111,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/ruby34.y b/lib/parser/ruby34.y index c8be29773..8f3769dba 100644 --- a/lib/parser/ruby34.y +++ b/lib/parser/ruby34.y @@ -3111,7 +3111,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/rubymotion.y b/lib/parser/rubymotion.y index 41bd116e2..08e26f1bf 100644 --- a/lib/parser/rubymotion.y +++ b/lib/parser/rubymotion.y @@ -2191,7 +2191,7 @@ end ---- header -require 'parser' +require_relative '../parser' ---- inner diff --git a/lib/parser/runner.rb b/lib/parser/runner.rb index 47ed41365..e120564da 100644 --- a/lib/parser/runner.rb +++ b/lib/parser/runner.rb @@ -4,7 +4,7 @@ require 'find' require 'optparse' -require 'parser' +require_relative '../parser' module Parser @@ -64,87 +64,87 @@ def setup_option_parsing(opts) end opts.on '--18', 'Parse as Ruby 1.8.7 would' do - require 'parser/ruby18' + require_relative 'ruby18' @parser_class = Parser::Ruby18 end opts.on '--19', 'Parse as Ruby 1.9.3 would' do - require 'parser/ruby19' + require_relative 'ruby19' @parser_class = Parser::Ruby19 end opts.on '--20', 'Parse as Ruby 2.0 would' do - require 'parser/ruby20' + require_relative 'ruby20' @parser_class = Parser::Ruby20 end opts.on '--21', 'Parse as Ruby 2.1 would' do - require 'parser/ruby21' + require_relative 'ruby21' @parser_class = Parser::Ruby21 end opts.on '--22', 'Parse as Ruby 2.2 would' do - require 'parser/ruby22' + require_relative 'ruby22' @parser_class = Parser::Ruby22 end opts.on '--23', 'Parse as Ruby 2.3 would' do - require 'parser/ruby23' + require_relative 'ruby23' @parser_class = Parser::Ruby23 end opts.on '--24', 'Parse as Ruby 2.4 would' do - require 'parser/ruby24' + require_relative 'ruby24' @parser_class = Parser::Ruby24 end opts.on '--25', 'Parse as Ruby 2.5 would' do - require 'parser/ruby25' + require_relative 'ruby25' @parser_class = Parser::Ruby25 end opts.on '--26', 'Parse as Ruby 2.6 would' do - require 'parser/ruby26' + require_relative 'ruby26' @parser_class = Parser::Ruby26 end opts.on '--27', 'Parse as Ruby 2.7 would' do - require 'parser/ruby27' + require_relative 'ruby27' @parser_class = Parser::Ruby27 end opts.on '--30', 'Parse as Ruby 3.0 would' do - require 'parser/ruby30' + require_relative 'ruby30' @parser_class = Parser::Ruby30 end opts.on '--31', 'Parse as Ruby 3.1 would' do - require 'parser/ruby31' + require_relative 'ruby31' @parser_class = Parser::Ruby31 end opts.on '--32', 'Parse as Ruby 3.2 would' do - require 'parser/ruby32' + require_relative 'ruby32' @parser_class = Parser::Ruby32 end opts.on '--33', 'Parse as Ruby 3.3 would' do - require 'parser/ruby33' + require_relative 'ruby33' @parser_class = Parser::Ruby33 end opts.on '--34', 'Parse as Ruby 3.4 would' do - require 'parser/ruby34' + require_relative 'ruby34' @parser_class = Parser::Ruby34 end opts.on '--mac', 'Parse as MacRuby 0.12 would' do - require 'parser/macruby' + require_relative 'macruby' @parser_class = Parser::MacRuby end opts.on '--ios', 'Parse as mid-2015 RubyMotion would' do - require 'parser/rubymotion' + require_relative 'rubymotion' @parser_class = Parser::RubyMotion end @@ -193,7 +193,7 @@ def parse_options(options) end if @parser_class.nil? - require 'parser/current' + require_relative 'current' @parser_class = Parser::CurrentRuby end end diff --git a/lib/parser/runner/ruby_parse.rb b/lib/parser/runner/ruby_parse.rb index aa96c8045..827efdc26 100644 --- a/lib/parser/runner/ruby_parse.rb +++ b/lib/parser/runner/ruby_parse.rb @@ -1,8 +1,8 @@ # frozen_string_literal: true -require 'parser/runner' -require 'parser/color' -require 'parser/lexer/explanation' +require_relative '../runner' +require_relative '../color' +require_relative '../lexer/explanation' require 'json' module Parser diff --git a/lib/parser/runner/ruby_rewrite.rb b/lib/parser/runner/ruby_rewrite.rb index 05bd82714..8039eba89 100644 --- a/lib/parser/runner/ruby_rewrite.rb +++ b/lib/parser/runner/ruby_rewrite.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require 'parser/runner' +require_relative '../runner' require 'tempfile' module Parser