1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
# frozen_string_literal: true
if RUBY_VERSION =~ /^1\.[89]\./
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.
UNSUPPORTED_VERSION_MSG
end
require 'set'
require 'racc/parser'
require 'ast'
##
# @api public
#
module Parser
require_relative 'parser/version'
require_relative 'parser/messages'
require_relative 'parser/deprecation'
module AST
require_relative 'parser/ast/node'
require_relative 'parser/ast/processor'
require_relative 'parser/meta'
end
module Source
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_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_relative 'parser/static_environment'
if RUBY_ENGINE == 'truffleruby'
require_relative 'parser/lexer-F0'
else
require_relative 'parser/lexer-F1'
end
require_relative 'parser/lexer-strings'
require_relative 'parser/lexer/literal'
require_relative 'parser/lexer/stack_state'
require_relative 'parser/lexer/dedenter'
module Builders
require_relative 'parser/builders/default'
end
require_relative 'parser/context'
require_relative 'parser/max_numparam_stack'
require_relative 'parser/current_arg_stack'
require_relative 'parser/variables_stack'
require_relative 'parser/base'
require_relative 'parser/rewriter'
require_relative 'parser/tree_rewriter'
end
|